Available-to-promise inventory dashboard showing reserved, sellable and marketplace stock across channels

Available-to-Promise Inventory for Multichannel Sellers

In 2026, the inventory number that matters is not the stock on your warehouse shelf. It is the quantity you can safely promise to a buyer on bol.com, Amazon, Shopify, Zalando, OTTO or Kaufland before another channel sells the same unit. That number is available-to-promise inventory: on-hand stock plus reliable inbound supply, minus orders, reservations, backorders, buffers and channel-specific commitments.

Most multichannel sellers already know they need real-time inventory sync. The harder question is what number should be synced. If every channel receives the full physical stock count, the last units are exposed several times. If every channel receives a nervous fixed buffer, revenue is left on the table. Available-to-promise inventory sits between those extremes: it turns raw warehouse stock into a sellable promise that respects reservations, marketplace latency and fulfilment reality.

Marketplace cancellation threshold
2.5%
Amazon says seller-fulfilled cancellation rate should stay under 2.5% over 7 days. Inventory promises directly affect that metric.
Why ATP is different from stock sync

Stock sync answers a transport question: how quickly can a stock update move from the WMS, ERP or webshop to every connected channel? Available-to-promise answers a commercial question: how much stock should each channel be allowed to sell right now? The first is about speed. The second is about judgement.

That distinction matters because marketplaces do not all process inventory updates the same way. Public marketplace and integrator documentation commonly describes near-real-time or 5-15 minute update windows, while some seller support pages warn that synchronization can take 10-15 minutes. In a quiet catalogue that delay is tolerable. During a promotion, a TikTok Shop spike or a bol.com featured offer, the same delay can expose the last two units to five channels at once.

A practical ATP layer therefore starts with the single source of truth from your inventory management setup, then applies operational rules before publishing stock through marketplace integrations. The warehouse may have 100 units. The channels should not automatically see 100 units.

The safest inventory number is not the highest number in the warehouse. It is the lowest number you can promise without breaking an existing commitment.

The ATP formula multichannel sellers actually need

The textbook formula is simple: ATP = on-hand stock + reliable inbound stock − committed demand. Ecommerce teams need a more explicit version because marketplace selling adds reservations, buffers and channel rules. A useful working formula is:

Sellable ATP = physical on-hand + released inbound − open orders − payment-pending reservations − return holds − channel buffers − protected stock.

Each subtraction has a job. Open orders prevent double-selling stock already bought. Payment-pending reservations stop a checkout race from selling the same unit twice. Return holds keep inspected-but-not-ready products out of the sellable pool. Channel buffers absorb sync latency. Protected stock reserves units for B2B customers, retail stores, replacement shipments or high-priority marketplaces.

Common mistake
Many sellers subtract a fixed buffer from every SKU and call it ATP. That helps with overselling, but it is too blunt. Fast movers, slow movers, bundles, FBA stock, warehouse stock and marketplace-fulfilled stock need different promise rules.
A simple ATP decision model

ATP works best when it is rule-based, not spreadsheet-based. Sellers can start with five inventory states and let the system calculate the sellable number automatically. This is the practical version that operations teams can implement without an enterprise ERP project.

  1. 1
    Separate physical, reserved and sellable stock
    Physical stock is what the warehouse can count. Reserved stock belongs to an order, pending checkout, replacement shipment or B2B customer. Sellable stock is what can be published externally.
  2. 2
    Apply channel buffers by risk
    A high-velocity Amazon SKU may need a larger buffer than a slow B2B spare part. A marketplace with slower stock processing needs more protection than a webshop controlled directly by your own stack.
  3. 3
    Reserve stock at order import, not at picking
    If stock is only reserved when the picker starts, every channel keeps seeing units that are already commercially committed.
  4. 4
    Use exception rules for bundles and kits
    Bundle ATP is limited by the scarcest component, not by the bundle SKU itself. This is where many Shopify-plus-marketplace operations drift.
  5. 5
    Publish the calculated number, then audit the gap
    Track the difference between physical stock and published ATP by SKU. A widening gap signals too many holds, stale reservations or over-protective buffers.
What competitor content usually misses

Most ranking ATP articles explain the formula, then move quickly into forecasting or ERP planning. Most multichannel inventory articles explain real-time sync, then move into software selection. The operational gap sits between them. A seller with 12 units left on a fast-moving SKU does not need another definition of ATP. They need to decide how many units Amazon, bol.com, Shopify and Zalando should each see during the next 15 minutes.

That is why ATP should be channel-aware. It should know whether the stock is in your own warehouse, Amazon FBA, bol.com LVB, a fulfillment center, a retail store or an inbound shipment. It should know whether a marketplace order is payment-pending, confirmed, cancelled or returned. It should know whether the SKU is part of a bundle. Without that context, the system only moves numbers around faster.

Basic stock sync
  • Pushes one available quantity to every channel
  • Usually relies on a fixed buffer
  • Treats reservations, returns and bundles as afterthoughts
Good enough when order velocity is low.
ATP-driven inventory syncRecommended
  • Calculates sellable stock after reservations and holds
  • Uses channel-specific buffers and priorities
  • Feeds marketplaces only the stock they can safely sell
Required once the same SKU sells across 3+ channels.
Where ATP breaks in real operations

The first failure mode is payment latency. A customer places an order, the marketplace waits for payment confirmation, and the seller's system does not reserve the unit until the final order event arrives. In the meantime, another channel sells it. The fix is to reserve on the earliest reliable order signal, then release automatically if payment fails or the marketplace cancels.

The second failure mode is inbound optimism. A purchase order due tomorrow should not be promised to every marketplace today unless receiving, quality check and putaway can happen before the promised ship date. Reliable inbound stock can be part of ATP; uncertain inbound stock should remain invisible until the warehouse can actually fulfil against it.

The third failure mode is stale reservations. Customer-service replacements, manual B2B holds and failed orders can trap inventory for days. That stock is physically present, but not sellable. A good ATP process includes reservation expiry rules and a daily exception queue so stock is either released or deliberately protected.

On-hand
Warehouse-counted units
Verified by scans, receipts and cycle counts.
Reserved
Committed units
Orders, replacements, pending payments and B2B holds.
Buffer
Latency protection
Channel-specific margin for sync delays and spikes.
ATP
Published promise
The number channels are allowed to sell.
How to implement ATP without an ERP rebuild

Start with the SKU and location data you already trust. If your warehouse team scans receipts, picks and cycle counts in a WMS, that system should feed physical stock. If orders arrive through ChannelDock, those orders should create reservations before marketplace stock updates go out. If product bundles are managed in your ecommerce stack, the ATP rule must calculate component availability before the bundle is offered.

Then decide which channel gets priority when sellable stock is scarce. A private B2B portal may need protected stock because those customers reorder predictable volumes. Amazon FBM may need stricter buffers because cancellation metrics are unforgiving. Your own Shopify store may tolerate a lower buffer if you can adjust messaging, offer backorders or route customer service quickly. The goal is not equal stock everywhere; the goal is controlled promises everywhere.

ChannelDock's inventory workflow is built for that operating model: central SKU mapping, marketplace stock updates, order reservations and warehouse events in one flow. Sellers can connect channels through the integrations overview, keep a single operational source of truth in inventory features, and route order handling through order management instead of reconciling after the damage is done.

What to measure weekly

ATP should make your operation calmer, not just more complex. The weekly dashboard should track oversell incidents, cancelled orders caused by stock mismatch, ATP-to-physical gap, stale reservations, stockout minutes on top SKUs, and buffer-triggered lost sales. If oversells fall but stockout minutes rise sharply, the buffers are too defensive. If stale reservations grow, the process is hiding stock. If the ATP-to-physical gap is volatile on one marketplace, that channel needs a different rule.

The most useful metric is the promise failure rate: the share of orders that could not be fulfilled exactly as promised because the sellable stock calculation was wrong. That includes oversells, late split shipments, manual substitutions and customer-service saves. It connects inventory logic to the customer experience.

What this means for sellers
  • Do not publish warehouse stock directly to every marketplace once the same SKU sells on 3+ channels.
  • Reserve stock as soon as an order is commercially credible, not when picking starts.
  • Treat buffers as channel-specific risk controls, not one global percentage.
  • Audit stale reservations weekly so protected stock does not quietly become dead stock.
  • Use ATP to grow revenue safely: fewer cancellations, fewer manual fixes and more confidence during campaigns.
FAQ
What is available-to-promise inventory?
Available-to-promise inventory is the quantity a seller can safely commit to new orders after subtracting existing commitments, reservations, buffers and operational holds from physical and reliable inbound stock.
Is ATP the same as available-to-sell?
No. Available-to-sell usually means stock that is immediately sellable. ATP can include timing and promise logic, such as reliable inbound stock, delivery dates and channel-specific reservations.
Why do multichannel sellers need ATP?
Because the same unit can be visible on several channels at once. ATP prevents a stock number from being over-promised by accounting for orders, pending payments, sync latency and protected stock before publishing availability.
How often should ATP be recalculated?
Recalculate ATP after every order import, cancellation, stock receipt, cycle count, return inspection and manual reservation change. For high-velocity SKUs, event-based recalculation is safer than scheduled batch updates.
Can ChannelDock help with ATP-style inventory control?
Yes. ChannelDock connects marketplaces, webshops, order handling and inventory updates so sellers can manage one operational stock truth and publish safer sellable quantities across channels. Start with the inventory feature overview or create a free account.
Conclusion

Available-to-promise inventory is the missing layer between warehouse stock and marketplace stock sync. It turns inventory from a static count into a controlled promise: what can be sold, where it can be sold, and when the seller can fulfil it without breaking another commitment. For multichannel sellers, that is the difference between growth and chaos.

The next operational step is simple: stop asking only whether your stock sync is fast enough. Ask whether the number being synced is safe enough. Once reservations, buffers, returns, inbound stock and channel priorities are part of the calculation, every marketplace receives a cleaner promise — and the warehouse spends less time apologising for stock that was never really available.