Resources · 62
Inventory: verify availability, reservations and concurrency
Distinguish physical, sellable, reserved and incoming stock, then test concurrent purchases, cancellations and channel synchronisation.
· 3 min
What this guide helps achieve
- Define states
- Connect units and locations
- Exercise reservations
- Test concurrency
Quick check
- Is an on-hand unit always sellable?
- Does a refund always release inventory?
- How should the last unit be checked?
Step-by-step method
- 01
Define states
Name physical, available, committed, unavailable and incoming units. Shopify documents these distinctions; the vocabulary is a reference here, without assuming all tools implement identical transitions.
Deliverable: state dictionary per tool.
- 02
Connect units and locations
Identify variant, location and channels allowed to sell. Choose the authoritative availability source. A shared total can hide a warehouse unable to fulfil a buyer’s order.
Deliverable: allocation and synchronisation rules.
- 03
Exercise reservations
Define when a unit is held and how it returns to availability. Test pending payment, abandonment, refusal, cancellation and refund. Do not release a unit on an ambiguous event alone.
Deliverable: transitions and business events.
- 04
Test concurrency
Using a fictional last unit, send two simultaneous requests and replay a notification. Check business outcome, final stock and the unsuccessful buyer’s message. Reserve and confirm under the system’s actual guarantees; an assumed lock needs testing.
Deliverable: simultaneous and repeated-trial evidence.
- 05
Reconcile differences
Compare movements, reservations and physical counts. Identify synchronisation delays and manual adjustments. Incoming stock is not necessarily sellable; preorders need an explicit availability and delivery policy.
Deliverable: discrepancy report and correction procedure.
Reusable worksheet
Complete with your authorised observations. These fields are a working template, not observed results.
| Field | Information to record |
|---|---|
| Item / location | Variant, warehouse and channel |
| Transition | Event and expected state |
| Concurrency | Requests, reservation and unique effect |
| Difference | Movement, observation and correction |
Worked example
Illustrative situation
Fictional example: two channels display the last unit during a synchronisation delay.
Decision and expected evidence
The test verifies one valid allocation, an explicit message for the other order and documented inventory convergence.
Distinguish the mechanisms
| Mechanism | Purpose | Check or limitation |
|---|---|---|
| Physical stock | Count present units | Do not equate it with sellable stock |
| Reservation | Avoid double allocation | Define release and expiry |
| Incoming stock | Prepare replenishment | Do not promise availability without an explicit rule |
Management indicators
| Indicator | What it measures | First action |
|---|---|---|
| Stock discrepancies | Expected versus observed state | Connect each correction to a movement |
| Stuck reservations | Units held outside the rule | Inspect cause before release |
| Synchronisation delay | Lag between source and channel | Name affected journeys |
Common pitfalls
- Do not equate it with sellable stock
- Define release and expiry
- Do not promise availability without an explicit rule
Frequently asked questions
Is an on-hand unit always sellable?
No. It may be committed, damaged or held at a location unable to fulfil the order.
Does a refund always release inventory?
No. Physical return and quality matter; separate financial decisions from inventory movements.
How should the last unit be checked?
Exercise two concurrent purchases using fictional data and inspect orders, allocation and final stock.
Official references
References consulted on 2 October 2026. The method and worksheet propose checks to adapt to your context; they do not constitute certification.






