The Problem with Siloed Channels
Most small retailers who add online sales keep separate stock counts for their shop and their website. The result: a customer buys the last unit online, a walk-in customer wants the same item, and the shop sells it too. Now you have an oversold online order, an angry customer, and a manual cancellation process. Multiply this by dozens of items daily and you have a customer service nightmare.
The Single Inventory Pool Model
The solution is a single inventory pool — one stock count that all channels draw from simultaneously. When a sale happens in-store, the online stock level drops. When an online order is placed, in-store available stock drops. This eliminates overselling and gives you one accurate picture of stock across the business.
The Architecture
A practical omnichannel stack for a small retailer:
- POS system: The master inventory record, updated in real-time with every in-store sale, receiving, and adjustment
- E-commerce platform (Shopify, WooCommerce, etc.): Pulls inventory levels from the POS via API or integration
- Integration layer: Syncs inventory changes bidirectionally — POS sales reduce Shopify stock; Shopify orders create fulfilment tasks in the POS
Safety Stock Buffers
Even with real-time sync, race conditions exist — two customers buying the last unit simultaneously on different channels. Set a safety stock buffer in your e-commerce platform: if you have 5 units in stock, show only 3–4 as available online. The buffer prevents the race condition and gives you time to process returns or receive new stock before it sells again.
Unified Customer Data
True omnichannel means a customer who buys online and returns in-store is recognised as the same customer. This requires your POS and e-commerce platform to share a customer database — matching by email address or phone number. When a customer walks in, you can see their online order history; when they shop online, their in-store loyalty points apply.
Click and Collect
Click and collect (BOPIS — Buy Online, Pick Up In Store) is now expected by many customers and has high conversion rates because it eliminates shipping costs and wait times. Implementation requires: an online checkout option for in-store pickup, a process for setting orders aside when placed, and a way to mark them as collected in both your POS and e-commerce systems simultaneously.