Case Study

Two Channels,

One Committed Stock Position.

Replacement of a premium homeware storefront marketplace connector with an order management system holding a single committed inventory position across D2C and marketplace.

15

min
Inventory Sync Interval, From Hourly

2

Channels On One Committed Stock Position

40

%
Catalogue Buffer Replaced By Allocation Rules

Client Profile

Premium Homeware Brand

~£30m revenue · ~23k orders/m

Own D2C storefront plus one marketplace channel.

Around £110 AOV, with long lead times on imported lines.

Single 3PL, UK.

Marketplace accounts for roughly a quarter of order volume.

The Challenge

Stock was synced to the marketplace by the storefront’s native connector on an hourly push. Between pushes both channels sold against a position neither could see moving, and on fast-selling lines the same unit was committed twice. The brand cancelled the later order, refunded, and absorbed the marketplace’s cancellation metric.

Cancellation rate is a channel-level risk rather than a per-order cost. The account sat close enough to the marketplace’s threshold that a heavy trading week put visibility and buy-box position in question, and the team managed it by throttling: holding a share of each line back from the marketplace so the connector could not oversell it.

That buffer had grown to cover roughly 40% of the catalogue. On imported lines with long replenishment lead times, stock held back as insurance was stock not available to sell in either channel, and the brand was reordering against demand it had suppressed itself.

Why EQ50 DIGITAL

The connector vendor’s position was that hourly sync was working as designed, and the marketplace’s was that cancellation rate is the seller’s responsibility. Both were correct. The gap was that nothing held a single committed position across the two channels.

The remit was to select an order management system on fit and total cost, define the allocation model across channels, build and test the integration to the storefront, the marketplace and the 3PL, and take it live without a trading break.

The OMS holds the inventory position, the allocation rules and the order lifecycle. The 3PL holds stock, pick and despatch.

EQ50 DIGITAL owns the selection, the allocation design and the integration between all three.

The EQ50 DIGITAL Approach

01

Clarify the business priorities

Ecommerce, Operations and Finance set the order: stop overselling, release the buffer back into sale, and keep the marketplace account clear of its cancellation threshold through peak.

Finance set the constraint that shaped the build. Any release of buffer stock had to be gradual and reversible, because a mistake at peak on an imported line could not be replenished inside the season.

02

Diagnose and scope

Six months of order, cancellation and stock data were pulled to establish where oversells actually originated. They concentrated in a narrow band of fast-selling lines during promotional periods, not across the catalogue, which meant the buffer was sized for a risk most SKUs did not carry.

Vendor selection ran across three OMS platforms, scored on allocation model, marketplace integration maturity, 3PL connectivity, and three-year cost including per-order fees.

03

Design the solution

The OMS holds one committed inventory position. Both channels read from it, and a unit is committed at order rather than at the next sync, so the same unit cannot be sold twice regardless of interval.

Allocation is set by rule rather than by held-back stock. Fast-moving lines carry a small reserve against marketplace demand during promotional windows; the rest of the catalogue is sold from the open pool. The buffer became a rule the brand can change, not stock sitting in a warehouse.

Sync to the marketplace runs at roughly fifteen-minute intervals as a safety net, but the committed position rather than the sync frequency is what prevents the oversell.

Orders from both channels flow to the 3PL in a single format, with channel identity carried through so despatch confirmations return to the right system.

04

Deliver the change

The OMS was integrated to the storefront and the marketplace via their respective APIs, and to the 3PL’s order intake and despatch confirmation endpoints. Order creation carries an idempotency key so a webhook retry cannot duplicate a despatch.

The 3PL received a revised intake specification covering both channels. Its pick and pack process was unchanged; what changed was the order source and the confirmation route.

Buffer release was staged rather than switched. The OMS ran alongside the connector for three weeks in read-only mode, holding a committed position and logging every occasion the connector would have oversold. Once that log ran clean against actual trading, the OMS took over commitment and the buffer was released in tranches by product group, starting with the slowest-moving lines.

The marketplace channel cut over after D2C, so a fault would have surfaced on the channel without a cancellation penalty attached.

Key Decisions & Trade-Offs

A committed position rather than a faster sync.

Shortening the connector’s sync interval was the cheaper fix and was tested first. It reduced oversells without removing them, because the failure is concurrent commitment rather than stale data, and no interval short of real time closes it.

The OMS removes the failure mode but introduces a system the brand now owns and pays for per order.

Allocation by rule rather than by held-back stock.

Keeping a physical buffer would have been simpler and needed no allocation logic. It was rejected because held-back stock on long-lead imported lines is working capital earning nothing.

Rules give the same protection with the stock still sellable, at the cost of a model the team has to maintain and get right before each promotional period

Marketplace cut over second.

Leading with the marketplace would have addressed the penalty risk sooner. It was rejected because a fault on that channel carries a cancellation metric the brand could not afford to move while the account sat near its threshold.

Running D2C first delayed the outcome that mattered most by about a month.

The Outcomes

Committed At Order

A unit is committed when it sells rather than at the next sync, removing the concurrent-sale failure between channels.

Buffer Released

Stock held back as channel insurance returned to the sellable pool across the catalogue, in staged tranches by product group.

Rules, Not Reserves

Channel protection on fast-moving lines is now a configurable allocation rule the team changes ahead of a promotion.

Hourly → ~15 min

Marketplace sync interval tightened as a safety net behind the committed position.

Clear of Threshold

Marketplace cancellation rate moved away from the level that put account visibility at risk, measured across the first full quarter after cutover.

The Handover

The client owns the OMS licence and configuration, the allocation rules including the promotional reserves, and the channel integration settings.

EQ50 DIGITAL handed over the integration documentation, the allocation model with the reasoning behind each rule, and a runbook for adding a channel or a fulfilment node without re-engagement.

Holding Stock Back So Two Channels Cannot Sell It Twice?

Ring-fencing stock is what happens when nothing owns the inventory position. We fix that.

EQ50 DIGITAL

Helping D2C brands design and scale connected ecommerce ecosystems.

London, United Kingdom