Agency playbook — multi-client stock sync
How agencies and ISVs ship PullPush as a safe sync runtime for client commerce stacks without inventory wipeouts.
Offer
We connect your WMS to your storefront with a dry-run you can trust — shadow first, cut over when ops signs the preview.
Do not sell “we have every connector.” Sell time-to-safe-stock-sync on the client’s real stack.
Tenant isolation (non-negotiable)
| Rule | Why |
|---|---|
| One PullPush tenant per client | Credentials, baselines, DLQ, and audit stay isolated |
| Never reuse connections across tenants | Envelope encryption is per-tenant; cross-wiring leaks blast radius |
| Client credentials only in encrypted connection config | No secrets in tickets, env files, or agent chat |
| Prefer org/partner API keys for agency operators | Scoped access without sharing client keys |
Default stack (ICP)
- Linnworks (source) → Abicart (destination) stock — Ready golden path
- Magento / WooCommerce storefronts when the client already runs them
- Flowretail / Tripletex when POS or Nordic accounting is in scope
- Long-tail systems → AI-buildable connectors, stay in shadow until preview is clean
Shopify inventory destination is Ready when location_id is set (Admin write_inventory scope).
Per-client checklist
Copy this into the client ticket / Basecamp card:
Day 0 — Intake
- Confirm source of truth for stock (usually WMS location UUID)
- Confirm storefront(s) and whether draft/hidden SKUs must stay untouched
- Confirm who may approve cutover (named ops owner)
- Create PullPush tenant + invite client read-only portal if used
Day 1 — Wire in shadow
- Create source + destination connections; test both
- Create stocklevel flow — verify status is SHADOW
- Run preview; export unmatched SKUs
- Fix catalog/mapping issues (do not invent zeros)
Day 2 — Prove
- Re-run preview until drift is understood
- Run reconcile / baseline once map is stable
- Client reviews preview report (sign-off comment)
- Confirm skips:
UNKNOWN_STOCK_SKIP,SKU_NOT_FOUND,ARTICLE_NOT_SELLABLE,NO_QUANTITY
Day 3 — Cut over
- Promote shadow → live for the approved flow only
- Watch DLQ + first reconcile cycle
- Document location UUID + flow IDs in client runbook
- Leave readonly kill-switch instructions with the client
MCP setup (agency operator)
Use the hosted MCP (https://api.pullpush.ai/mcp) with a partner/org or tenant API key.
Suggested agent prompts (per client tenant):
Onboard Linnworks → Abicart stock for this tenant in shadow mode, then preview.
List unmatched SKUs and explain whether each is missing-in-source, missing-in-destination, or unknown-at-location.
Do not cut over until I confirm. Keep the flow in shadow.
After cutover, show dead letters and any SKU_NOT_FOUND / UNKNOWN_STOCK_SKIP skips from the last hour.
Shadow-first is server-enforced — agents cannot go live by prompt alone without an explicit cutover action.
What “done” looks like for a design partner
- Preview signed off by client ops
- At least one reconcile cycle with no unexplained wipe risk
- DLQ empty or every residual skip explained
- Written location + flow IDs handed to the client
- Agency can repeat the same checklist for the next client without custom engineering