Product / UX Prototype · Connect & Integrations

Sync Settings Concept

A high-fidelity prototype exploring how an inventory product and Shopify stay in sync — with explicit source-of-truth, directional control, conflict resolution, and recovery policy.

Fictional product ("StockBase") and sample data. Built as a product-thinking exercise.

VERSION 1

Foundation

The first cut: connect, match locations, and Push / Pull data between the two systems. The flows worked — but the buttons were blind.

  • Guided setup & location matching
  • Push / Pull buttons (directional sync)
  • Pricing scheme mapping
  • Basic order-conflict list
Open v1 →
VERSION 3

Trust & Recovery

Same Push / Pull — but now safe to press. You see what a sync will do before you commit, and can recover when something goes sideways.

  • Change preview ("would update 14 products")
  • "Send one as a test" before bulk
  • Conflict policy — resolve future conflicts automatically
  • Activity log & last-sync visibility
Open v3 →
The hypothesis behind v3

In v1 the Push / Pull buttons worked — and that is exactly where I think the design fails. The hypothesis behind v3: an operator will not press a button whose blast radius they cannot see. Not knowing what a sync will change, or whether it can be undone, is enough to leave a working feature unused. That is not a reliability problem; it is a trust problem. v3 answers the question the operator is actually asking — "what happens if I press this?" — with a change preview, a send-one-as-a-test option, and visible sync history. Same buttons; now safe to press.

Integration concepts this prototype demonstrates

Source of truthPer-object, not binary — e.g. which side owns stock for a matched location.
Directional syncSend-to vs bring-in are separate, explicit decisions — not one toggle.
FreshnessReal-time on change vs an hourly sweep — stated to the user, not hidden.
Change previewShow the blast radius ("12 updates") before committing a sync.
Conflict resolutionMissing customer / pricing / taxing scheme — each with a clear next action.
Recovery policy"For future conflicts, do this without asking me" — create, adjust, or stop & error.
Safe vs human-reviewSome mismatches auto-resolve; some require a person. The UI encodes that.
VisibilityLast sync, recent imports, and per-item status build operator trust.