Middleware ledger, allocation and transfer state — Shopify remains system of record for physical stock and fulfillment.
{{m.kicker}}
{{m.value}}
{{m.meta}}
Recent ledger activity
Time
Movement
SKU
Location
Δ
Actor
{{orow.ts}}
{{orow.movement_type}}
{{orow.sku}}
{{orow.location_id}}
{{orow.deltaLabel}}
{{orow.actor}}
Clubs
Master club records — contact details and defaults new club orders inherit.
Club
Code
Type
Status
Contact
Default pickup
Open orders
{{c.name}}
{{c.code}}
{{c.type}}
{{c.status}}
{{c.contact}}
{{c.defaultPickup}}
{{c.openOrders}}
Edit →
Club Orders
A club order is the backorder record — its backordered qty is simply the unallocated line balance.
Club Order
Club
Required by
Event
Partial
Status
Progress
{{co.id}}
{{co.club}}
{{co.requiredBy}}
{{co.eventDate}}
{{co.partialLabel}}
{{co.statusLabel}}
{{co.progressLabel}}
Open →
Shared SKU
SKU ↔ variant mapping, projected as one pool. Built by a sync job — not product webhooks.
SKU
Canonical member
Members
HO qty
Langley qty
Status
{{g.sku}}
{{g.canonical}}
{{g.memberCount}}
{{g.qtyHO}}
{{g.qtyLangley}}
{{g.status}}
Details →
Change
SKU
Detail
Detected
{{r.change_type}}
{{r.sku}}
{{r.detail}}
{{r.detected}}
{{r.resolvedLabel}}
Conflict
SKU
Detail
{{c.type}}
{{c.sku}}
{{c.detail}}
{{c.resolvedLabel}}
Run
Trigger
Mode
Started
Scanned
Changes
Status
{{s.id}}
{{s.trigger}}
{{s.mode}}
{{s.started}}
{{s.scanned}}
{{s.changes}}
{{s.status}}
Transfers
Every transfer here was created automatically by the middleware. Staff only ship and receive them in Shopify.
Transfer
Reason
Route
Linked
Age
Status
{{tr.id}}
{{tr.reason}}
{{tr.route}}
{{tr.linked}}
{{tr.age}}
{{tr.status}}
Details →
Route
{{rt.route}}
{{it.id}}
{{it.reason}}
{{it.qty}} units
Exception
SKU / Route
Detail
Status
{{e.type}}
{{e.subject}}
{{e.detail}}
{{e.status}}
Destination
Source
Reason
Priority
Safety buffer
{{rule.destination}}
{{rule.source}}
{{rule.reason}}
{{rule.priority}}
{{rule.buffer}} units
Read-only — Admin role required to edit sourcing rules.
Supply
Purchase orders as incoming supply. A PO isn't owned by one club order — receipts allocate oldest-first across backordered lines.
PO
Vendor
Lines
Expected
Received
Status
{{po.id}}
{{po.vendor}}
{{po.lineSummary}}
{{po.expected}}
{{po.receivedSummary}}
{{po.statusLabel}}
Ledger & Audit
Append-only. Every quantity is reconstructable from here — nothing is ever "corrected".
Timestamp
Movement
SKU
Location
Δ
Resulting
Source
Actor
Reason
{{row.ts}}
{{row.movement_type}}
{{row.sku}}
{{row.location_id}}
{{row.deltaLabel}}
{{row.resulting_qty}}
{{row.source_id}}
{{row.actor}}
{{row.reason}}
No ledger entries match this filter.
SKU
Location
Physical
Incoming Supply
Available
Reserved
Backordered
Incoming
In-Transit
Public Buffer
Allocatable
Reorder Threshold
Reorder Qty
Status
{{il.sku}}
{{il.location}}
{{il.physical}}
{{il.incomingSupply}}
{{il.available}}
{{il.reserved}}
{{il.backordered}}
{{il.incoming}}
{{il.inTransit}}
{{il.buffer}}
{{il.allocatable}}
{{il.reorderThreshold}}
{{il.reorderQty}}
{{il.status}}
No inventory rows match this filter.
New club order
This order lives in the middleware — it never touches Shopify until a line is allocated.
1. Club Details
2. Event & Delivery Information
3. Order Requirements
4. Bulk Order Line Items
5. Inventory Allocation — system generated
Available {{l.stock.headOffice}}Public buffer {{l.stock.buffer}}Langley {{l.stock.langley}}HO {{l.stock.headOffice}}WH {{l.stock.warehouse}}Incoming supply {{l.stock.incoming}}Shortfall {{l.stock.shortfall}}
6. Payment & Finance
{{clubMasterTitle}}
1. Club Details
2. Contacts
3. Addresses
4. Commercial
5. Operational Defaults
Club orders
{{o.id}}{{o.statusLabel}}
Fulfill {{fulfillInfo.sku}}
{{fulfillInfo.subtitle}}
Creates a Shopify order (tranche) for the allocated quantity — native committed, removed from public sale. If the tranche needs stock moved between locations, the transfer engine creates that transfer automatically.
Override online buffer — {{overrideInfo.sku}}
Default buffer at {{overrideInfo.location}}: {{overrideInfo.defaultBuffer}} units, protected from club allocation. This override applies to this club order line only and is captured in the club order timeline.
Set reorder settings — {{reorderInfo.sku}}
{{reorderInfo.location}}
Create transfer — {{transferInfo.sku}}
{{transferInfo.source}} → {{transferInfo.destination}} · {{transferInfo.availableAtSource}} units available at {{transferInfo.source}} above buffer.
Created as a Shopify-native transfer, ready to ship — origin stock is reserved immediately.
Create transfer — multiple items
{{transferLinesInfo.source}} → {{transferLinesInfo.destination}} · one Shopify-native transfer covering all lines below.
{{tl.sku}}
Max {{tl.max}}
Fulfill selected lines
{{fulfillLinesInfo.subtitle}}
{{row.sku}}
Backordered: {{row.backordered}}
Creates one Shopify tranche order covering all selected lines — native committed, removed from public sale.
Create purchase order
Raises supply for shortfall lines. This PO is not owned by one club order — future receipts allocate oldest-first across all backordered demand for these SKUs.
Lines
{{pl.sku}}
Record payment
{{recordPaymentClub}}
Deposits and final payments are captured here for reference; reconciliation with QuickBooks / MyWorks is a separate finance workstream.
Run sync now
Re-reads the catalogue and re-groups shared SKUs. Full scans every variant; incremental scans only what changed since the last successful run.