Avoid overselling stock across shops and stalls
Keep a shared stock record for each variant and selling pack. Exclude samples, held returns and unsellable goods, then divide available stock into channel allowances. Reserve orders as they arrive and remove stall stock from online availability before leaving. Prepare the factory packing and stock identity brief with Cambridge China Bridge.

Build the shared record from accepted stock
Start with physically counted, accepted goods, using the goods-in acceptance guide. Give each variant and selling pack a stock code, and map every Shopify, eBay and TikTok Shop listing to it. Include the stall in the same record. Record batch, location, physical quantity, stock status, channel allowance and order reservations.
Calculate available stock as physical stock minus mutually exclusive blocked quantities and outstanding order reservations. Samples and replacement reserves belong in blocked stock until released. Channel allowances divide the resulting available stock; they are not another deduction. Keep incoming goods outside this calculation until received and accepted.
| Stock category | Available to sell? | Release or movement |
|---|---|---|
| Accepted, unreserved goods | Yes, within a channel allowance | Allocate to a channel or keep unallocated |
| Outstanding order reservation | No | Dispatch or confirmed cancellation |
| Samples and display goods | No | Recorded return and condition check |
| Replacement reserve | No | Allocate to a replacement order |
| Returned goods awaiting inspection | No | Recorded inspection and release |
| Damaged, incomplete or suspect goods | No | Recorded decision after investigation |
Give each channel its own allowance
For a small batch managed manually, give Shopify, eBay, TikTok Shop and the stall separate selling allowances. Their combined unused allowances must stay within shared available stock. Publish each online channel's allowance, rather than copying the whole shared balance into every listing. Keep an unallocated buffer where delayed order reporting could otherwise expose the same goods to competing buyers.
Name the person authorised to move allowances. Reduce the donor channel first, confirm the change and reconcile orders already received before increasing the recipient channel. If using a stock connector, test the exact listings and order states it handles. Until its behaviour is verified, retain separate allowances rather than assuming automatic updates prevent overselling.
Reserve orders without deducting stock again
Choose the order event that creates a reservation and document how each channel reports it. When that event arrives, move the quantity from the channel's unused allowance into its order reservation. Link the reservation to channel, order reference, stock code, quantity and batch. Check pending or unpaid orders explicitly; do not assume every channel handles them alike.
For this workflow, reduce physical stock at confirmed dispatch and clear the matching reservation together. Picking changes location, not the physical total. A confirmed cancellation releases an undispatched reservation back to its channel allowance. A refund after dispatch does not restore physical stock. Use the pick and pack guide for selling-unit and packing checks.
Ring-fence stock before taking it to the stall
Before leaving, count the stall goods by stock code and transfer their location and selling allowance in the shared record. If they were allocated online, reduce those listings and reconcile outstanding orders before removing the goods. Keep display samples separate from stall sale stock. Print or save the stall opening record so it remains usable without a connection.
Record each sale, sample withdrawal, damaged item and customer return against its stock code. During an outage, sell only from the ring-fenced stall allowance. At closing, reconcile opening stock with sales and other movements, then count the remaining goods. Restore only checked, unsold goods to online allowances after their return location is confirmed.
Separate returns, replacement reserves and losses
A return request is not a receipt of stock. When goods arrive, record them in held returns and inspect before release. Move approved goods into available stock; move failures into the appropriate blocked category. Keep any replacement reserve separate, then transfer it into a named replacement-order reservation when used. Reclassifying stock should not create an extra physical unit.
Online consumer purchases can carry cancellation rights even when goods are not faulty. Check the applicable conditions and exceptions when writing your shop returns policy. Keep refund decisions separate from stock-release decisions. Unsellable goods remain physically counted until their recorded removal; use the stock valuation guide for the separate accounting review.
Working out your own order? Send us the product on WhatsApp and we reply the same working day: WhatsApp us
Test the workflow and reconcile discrepancies
Before launch, test competing orders for the remaining allowance, a cancelled order, repeated order notifications, a returned item and a stall connection failure. Confirm that each movement is recorded only once, reservations remain blocked and no listing gains stock from an uninspected return. Check whether any refund workflow automatically restores stock, and configure or control that behaviour before selling.
Reconcile the shared record against channel orders and physical locations after trading and before increasing allowances. Record the reason and approver for corrections. If orders or updates cannot be reconciled, pause affected listings and recount rather than raising quantities to hide the difference. Ask Cambridge China Bridge's staff in China to confirm factory variant and pack identities for the stock mapping.
Frequently asked questions
Can I use a spreadsheet to manage stock across shops?
Yes, with separate channel allowances, a named editor and a movement log. A spreadsheet does not update listings itself. Reduce the donor listing and reconcile orders before transferring its allowance elsewhere.
Should every shop show my total stock?
Use each channel's own allowance when managing stock manually. Copying the total everywhere lets competing orders claim the same goods. Verify any connector before relying on a shared live balance.
Does refunding an order put stock back?
Treat the refund and stock movement separately. Release a cancelled, undispatched reservation after confirmation. After dispatch, restore availability only when returned goods arrive and pass inspection.
How do I sell at a stall without internet?
Take a counted, ring-fenced stall allowance and an offline sales record. Keep those goods outside online allowances. Reconcile sales and count unsold goods before transferring checked stock back online.