Case study · Retail & eCommerce
One stock position, twelve shops and a website
A retailer was running stores and online as separate businesses that happened to share a brand. We put them on one Shopify stock position, which turned twelve shops into twelve fulfilment centres.
Engagement · Programme & rollout
Unified commerce, where the stock position has to be true in both directions.
- Industry
- Speciality retail
- Solution
- Unified retail and online commerce
- Platform
- Shopify POS
- Engagement model
- Dedicated product team
- Scope
- POS, online, stock, fulfilment, loyalty
- Estate
- 12 stores + online
- Constraint
- Offline-capable point of sale
- Target
- Sell every unit of stock
Outcomes
What one stock position unlocked
The stock was always there. It just could not be sold to the person who wanted it.
-
+29%
Sell-through on slow lines
Ship from store means a unit sitting in one shop can be sold to an online customer anywhere, so stock stops dying in the wrong location.
Measured across slow-moving lines over two seasons
-
41%
Of online orders collected in store
Click and collect became the default choice once availability per store was accurate enough to promise, and those customers buy again in store at a materially higher rate.
Measured across online order fulfilment after rollout
-
−52%
Markdown on end-of-season stock
Visibility across the whole estate means stock is moved or sold before it needs discounting, rather than being discovered at stocktake.
Measured across end-of-season markdown value year on year
Context
Two businesses wearing one brand
Stores and online each had their own stock, their own customers and their own view of the truth.
The business
A speciality retailer with twelve stores and a growing online channel, selling a catalogue with strong seasonality.
The starting point
Store stock and online stock were separate pools. A customer standing in a shop could not buy an item held online, and vice versa.
The trigger
End-of-season markdown was consuming the margin, and analysis showed a large share of it was stock that had been available somewhere a customer wanted it.
What they wanted
One stock position, click and collect, ship from store, and a single customer record regardless of where they bought.
Constraints
Stores cannot stop trading when the network drops · store staff will not use a slow till · online promises must be accurate or collection fails · stock accuracy in store was not good enough to promise against on day one.
System
What it runs at today
The estate as it runs today.
-
12
Stores
On one stock position
-
41%
Click and collect
Of online orders
-
Offline
Point of sale
Trades through network loss
-
1
Customer record
Across every channel
The engineering problem
Four problems with separate channels
All of them end with a customer who wanted to buy and could not.
-
Stock that exists but cannot be sold
A unit in a store the customer will never visit is worth nothing to an online customer who wants it, and gets marked down at the end of the season.
What we did
One stock position with ship from store, so any unit in the estate can fulfil any order.
-
Promises that collection cannot keep
Click and collect only works if store stock accuracy is high. Promise a unit that is not there and the customer has a wasted journey and a lost afternoon.
What we did
A stock accuracy programme before the promise: cycle counting, then availability buffers per store, tightened as accuracy improved.
-
A till that needs the internet
A point of sale that stops when connectivity does turns a router fault into a closed shop on a Saturday.
What we did
Offline-capable POS with local catalogue and transaction store, reconciling automatically when the connection returns.
-
Two customer records for one customer
The same person buying in store and online appears as two customers, so loyalty, history and service are all wrong.
What we did
A single customer record across POS and online, with purchase history and loyalty visible to store staff at the till.
Architecture
How it fits together
Simplified — the shape of the system rather than every service in it.
-
Stock
- One position
- Per-location
- Availability buffers
One pool with location-level detail and buffers reflecting real accuracy.
-
Fulfilment
- Ship from store
- Click and collect
- Routing
Orders routed to the location that should fulfil them.
-
Point of sale
- Offline capable
- Local catalogue
- Reconciliation
Stores trade regardless of connectivity.
-
Customer
- One record
- History
- Loyalty
The same customer at the till and online.
The availability buffer per store was the unglamorous part that made this work. Promising stock you do not have is worse than not offering collection at all.
Solutions
What we built
Twelve shops turned into twelve fulfilment points.
-
Unified stock
One position with per-location detail.
-
Ship from store
Order routing across the estate.
-
Click and collect
Reservation against accurate availability.
-
Offline POS
Local catalogue and transaction store.
-
Customer record
One customer across till and online.
-
Stock accuracy
Cycle counting and buffer management.
Key capabilities
What it does day to day
Six capabilities across the estate.
| Capability | Runs | Refresh | What it does |
|---|---|---|---|
| Unified stock | Automatic | Continuous | One position with per-location detail |
| Ship from store | Store staff | Per order | Online orders routed to and picked in store |
| Click and collect | Customer | Per order | Reserve and collect against accurate store availability |
| Offline POS | Store | Offline capable | Local catalogue and transactions, reconciled on reconnect |
| Customer record | All channels | Continuous | One record with history and loyalty at the till |
| Stock accuracy | Store staff | Cycle counts | Counting programme feeding buffer tightening |
Integrations
How the moving parts plug in
The order goes where the stock is.
Order placed
- OnlineOr in store
- Availability checkedAcross the estate
- Customer identifiedOne record
Routing
- Nearest stock
- Store capacityConsidered
- Collection or shipCustomer choice
Fulfilment
- Picked in storeOr warehouse
- CollectedOr shipped
- Stock updatedOne position
Routing considers store picking capacity as well as proximity, because a shop that is busy on a Saturday cannot also pick forty online orders.
Security & data
What protects trading
Twelve shops means twelve places a failure can cost a day of revenue.
-
Offline continuity
Stores keep selling through network failure and reconcile automatically.
-
Stock accuracy programme
Cycle counting with buffers, so promises match reality.
-
Role separation
Store, head office and fulfilment rights kept distinct.
-
Staged rollout
Stores brought on in waves, never the whole estate at once.
The brief
Unified commerce begins with counting
Every unified commerce programme is sold on ship from store and click and collect. Both depend entirely on store stock accuracy, and most retailers overestimate theirs.
We ran a counting programme and used availability buffers before making a single promise to a customer. That is why collection worked from the first week rather than generating complaints.
- One stock position with per-location detail
- Availability buffers reflecting real accuracy
- Offline-capable point of sale
- One customer record across channels
What the programme had to respect
- 01Stores that cannot stop trading
- 02Store stock accuracy that was not good enough on day one
- 03Store staff who will not use a slow till
- 04Collection promises that must be kept
Process
We counted before we promised
The order of work decided whether this programme would be trusted.
-
Stock accuracy baseline
Cycle counts across the estate to establish real accuracy per store, which was lower than assumed.
-
Buffers
Availability buffers set per store from measured accuracy, tightened as counting improved.
-
POS rollout
Offline-capable tills rolled out store by store before any online promise depended on them.
-
Collection pilot
Click and collect piloted in three stores and measured on failed collections, not on order volume.
-
Ship from store
Enabled once picking capacity and accuracy were both proven.
Technology
Shopify POS and online on one platform
One platform is the point; the work is in stock and fulfilment.
Commerce
- Shopify
- Shopify POS
- Storefront API
Stock
- Per-location inventory
- Availability buffers
- Cycle counting
Fulfilment
- Order routing
- Ship from store
- Click and collect
Customer
- Unified records
- Purchase history
- Loyalty
Business impact
What changed for the retailer
Three outcomes across two seasons.
-
Markdown down 52%
Stock moved or sold before it needed discounting.
-
Slow lines selling through
Up 29%, because location stopped limiting who could buy.
-
Store staff know the customer
History and loyalty visible at the till.
The result
Every unit of stock is now sellable to everyone
Slow lines sell through 29% better and end-of-season markdown is down 52%, because stock in one shop can now reach a customer anywhere.
41% of online orders are collected in store, and those customers spend again in store at a materially higher rate than pure online customers.
- Markdown down 52%
- Slow-line sell-through up 29%
- 41% of online orders collected in store
- Stores trading through network loss
What we hold to in unified commerce
- 01Count before you promise — accuracy decides everything
- 02Buffer availability until accuracy earns the tightening
- 03A till must never depend on the internet
- 04Route on picking capacity, not only on distance
Free discovery call
Have an idea? Let's turn it into AI-powered software.
Book a free discovery call with our experts. Share your idea and we will help you shape the scope, timeline and budget, under NDA.
- Free consultation
- NDA before we talk
- Transparent estimate




