Available-to-Sell Inventory for Multichannel Sellers
In 2026, the sellers that struggle most with overselling are rarely the ones with no stock system at all. They are the sellers with Shopify, Amazon, bol.com, Zalando, a warehouse tool and one or two connectors all showing numbers that look reasonable in isolation. The real problem is that none of those numbers answers the operational question that matters: how many units can we safely promise right now?
That number is available-to-sell inventory, often shortened to ATS. For a multichannel seller, ATS is not simply “available” in Shopify, “on hand” in the warehouse, or the stock value currently accepted by a marketplace API. It is the channel-safe quantity left after the business has accounted for open orders, pending imports, warehouse eligibility, safety stock, bundle components, channel priorities and update delays.
Why available-to-sell matters more than raw stock
Shopify’s own inventory state model separates on-hand stock from available, committed and unavailable stock. Zoho describes available-for-sale as stock on hand minus committed stock. ChannelEngine documents stock buffers, stock limits and reservations before stock is exported to marketplaces. The vocabulary differs, but the principle is the same: physical inventory is not automatically sellable inventory.
Most competitor content tells sellers to “sync inventory in real time”. That is useful, but incomplete. A wrong number synced instantly is still a wrong number. If 40 units are physically in the warehouse, five are reserved for unfulfilled orders, four are damaged or waiting for quality control, three are needed as a fast-mover buffer and eight are components of bundles that are already selling elsewhere, publishing 40 to every channel is not real-time accuracy. It is real-time risk.
The practical ATS formula
A workable formula for multichannel ecommerce is: Available-to-sell = eligible on-hand stock − committed orders − reservations − unavailable stock − safety buffer − channel-specific limits. The word “eligible” matters. Stock in Amazon FBA, bol.com LVB, a 3PL, a retail store and your own warehouse may all be real stock, but not every pool can fulfil every order within the promised delivery window.
For example, a seller may have 120 units of a fast-moving SKU across three locations: 60 in the main warehouse, 40 in FBA and 20 in a shop. If bol.com orders ship only from the main warehouse, the bol.com ATS calculation should start at 60, not 120. If 11 orders are waiting to be picked, two units are on hold after a return inspection, and a five-unit buffer protects against sync delay, the safer bol.com quantity is 42. A marketplace seeing 120 would create demand the operation cannot fulfil.
The dangerous shortcut is syncing the same physical quantity to every channel. If 12 units are on the shelf, Shopify, bol.com and Amazon should not all see 12 when they share the same stock pool.
Where multichannel sellers usually get it wrong
The first mistake is treating every channel as equal. Amazon may move faster than the webshop, bol.com may enforce strict cancellation metrics, Zalando may have different fulfilment constraints, and a B2B customer may have reserved stock before the order is imported. One shared catalogue can still need different published quantities per channel.
The second mistake is applying one flat buffer everywhere. A two-unit buffer is too much for slow accessories and too little for a SKU that sells 30 units in an hour during a promotion. Shopify Community and Reddit threads around flash-sale overselling show the same pattern: normal sync feels fine until simultaneous orders arrive faster than the connector can publish the next quantity.
Raw stock sync
ATS control modelRecommended
A five-step control model for safer marketplace quantities
The best ATS setup is not complicated, but the sequence is important. Start with the inventory reality, then narrow it down until only channel-safe stock remains. ChannelDock’s inventory management features are designed around this distinction: central stock, reservations, stock transfers and reconciliation need to feed one sellable number before marketplaces receive updates.
- 1Separate stock by fulfilment poolSplit warehouse, FBA/LVB, 3PL and store stock before you calculate availability. A unit in FBA cannot always fulfil a bol.com order, and store stock may need a local buffer.
- 2Reserve demand before warehouse allocationSubtract confirmed orders, draft orders, B2B commitments and marketplace orders waiting for import before you decide what is still sellable.
- 3Apply SKU-level protectionUse higher buffers for fast movers, fragile items, bundles, high-return SKUs and products counted manually rather than by barcode.
- 4Apply channel rules lastOnly after the universal ATS number is calculated should you apply channel-specific caps, priority rules or marketplace thresholds.
- 5Monitor failed updatesA good formula still fails if a marketplace update is rejected or delayed. Track sync age, rejected offers and negative stock events per channel.
Example: one SKU across Shopify, bol.com and Amazon
Imagine SKU BAG-BLACK-01 has 75 units physically in your own warehouse. There are nine unfulfilled webshop orders, six bol.com orders imported but not yet picked, three units in quality control after returns and two units reserved for a wholesale customer. You also keep a five-unit marketplace buffer because the item sells quickly on campaign days.
The base ATS is 75 − 9 − 6 − 3 − 2 − 5 = 50. From there, channel rules decide what each platform sees. Shopify may receive the full 50 because it is your highest-margin channel and updates quickly. bol.com may receive 45 because cancellations hurt seller performance. Amazon may receive 30 because you cap FBM exposure while FBA replenishment is in transit. The operational win is that every number is derived from the same truth, not manually typed into three back offices.
The aim is not to hide stock. The aim is to publish the highest quantity each channel can sell without stealing stock from orders you have already promised.
How ChannelDock fits into the ATS model
For multichannel sellers, ChannelDock acts as the operational layer between webshops, marketplaces and warehouse execution. Orders from connected channels reduce the sellable pool, inventory changes flow back to the channels, and teams can manage stock rules from one dashboard instead of reconciling spreadsheets after the damage is done. The integrations overview shows how ChannelDock connects marketplaces, webshops, carriers and warehouse tools into one workflow.
ATS also becomes stronger when it is linked to daily warehouse controls. Stock transfers prevent the wrong location from looking rich while another runs out. Reservations protect pending demand. Reconciliation catches gaps between scanned stock and system stock. Low-stock alerts give purchasing a chance to replenish before the buffer is consumed. If your team still calculates these pieces separately, stock sync becomes a messenger for old data rather than a control system.
Operational test
Pick your 20 fastest SKUs and ask: can we explain the exact quantity published to each channel in under two minutes? If not, the issue is not only sync speed — it is missing ATS logic.
What to measure after implementation
Do not judge the model only by whether stock numbers “look right”. Track oversell incidents, cancelled orders caused by stock, sync age per channel, rejected stock updates, negative inventory events, manual stock corrections and the difference between on-hand and published quantity. These metrics show whether ATS is protecting revenue without locking away too much stock.
Also review buffers after every peak period. A buffer that saved you during Black Friday may be too conservative in January. A marketplace cap that protects margin today may slow growth after replenishment stabilises. The healthiest inventory teams treat ATS rules as living controls, not one-off configuration.
- Treat available-to-sell as a decision, not a field copied from Shopify, Amazon or a spreadsheet.
- Calculate ATS from stock state, reservations, buffers, holds, bundles and channel eligibility in that order.
- Use smaller published quantities on volatile SKUs rather than one blanket buffer across the catalogue.
- Measure sync age and rejected stock updates, because the best formula cannot help if the channel never receives it.
FAQ
What is available-to-sell inventory?
How is available-to-sell different from on-hand inventory?
Should every marketplace receive the same available-to-sell quantity?
What should sellers subtract before syncing stock?
How often should available-to-sell be recalculated?
Conclusion
Available-to-sell inventory is the missing layer between stock visibility and real marketplace control. Raw stock tells you what exists. ATS tells you what can be promised. For sellers operating across Shopify, bol.com, Amazon, Zalando, stores, warehouses and fulfilment partners, that distinction is what prevents the same last unit from being sold twice.
If you want to turn stock sync into stock control, start by defining the formula, then connect it to reservations, buffers, reconciliation and channel rules. ChannelDock helps multichannel sellers do that from one place — from stock level sync to reservations and marketplace integrations — so every channel receives a quantity your warehouse can actually fulfil.