Order management for multichannel retail
A retailer selling through a website, two marketplaces and a shop floor is running four systems that each believe they know the stock level. They cannot all be right, and the interval at which they disagree is where cancelled orders come from.
The window you are selling blind in
The top row is the common case, and it is worse than it looks. An hourly sync at peak means an hour in which every channel is selling against a number that stopped being true at the start of it. The orders taken in that window are not sales — they are cancellations, refunds, apologies, and on a marketplace, a metric that decides whether you keep selling there at all.
Halving the interval halves the exposure, which is why this is worth fixing incrementally even when real-time is out of reach this quarter. The end state is that a sale on any channel decrements the shared number immediately, and every channel reads that one number rather than its own copy.
What the order system has to own
The distinction that matters: the order system is the record of truth for stock and for orders, and the channels are views onto it. Where each channel keeps its own and they reconcile periodically, you have four sources of truth and a reconciliation job, which is the architecture that produces the table above.
- One stock number per SKU per location, with reservations held against it. A unit in someone’s checkout is not available, and it is not sold either.
- Order state that survives a partial.Most orders are simple; the ones that consume the day are split shipments, partial cancellations and one returned item from four. A state model that only handles whole orders pushes all of that into spreadsheets.
- Where it will ship from, decided by rule.Nearest location, most stock, or a specific warehouse — but a rule, not a person choosing each morning.
- Returns as first-class.A return is an order running backwards, and it has to put stock back, refund correctly, and be visible to support before the customer calls about it.
Where retailers lose the most time
SKU identity across channels
The same product carries different identifiers on each marketplace, and mapping them is unglamorous work that everything else depends on. Get it wrong once and you have two stock pools for one product, which produces overselling on one channel and dead stock on the other simultaneously.
The shop floor as a channel
A unit sold at the till is a unit gone from the website. Where the shop is outside the order system, it is the largest source of stock error in the business and the least monitored.
Cancellations treated as an exception
They are not exceptional; they are routine, and the handling is what customers remember. A cancellation that restores stock, refunds automatically and notifies without anyone touching it is the difference between an inconvenience and a complaint.
What to measure
- Cancellations caused by stock, separated from every other reason. This is the direct measure of the window above.
- Time from order to dispatch, at the 90th percentile rather than the average. The average hides the orders that go wrong, and those are the ones that generate contacts.
- Stock accuracy at count, per location. Whatever the system says, the count is the truth, and the gap tells you which location has a process problem.
Where this fits
The product is AcmaORDO, and the sector context is E-commerce and Retail. The network underneath a multi-site retailer is covered in network design for retail; customer contact around orders and returns is AcmaTel CCS.