Sync WooCommerce stock with your physical store: 2026 guide
Saturday afternoon, peak hour at the store. The last unit of a fast-moving product goes out through the register. Your eshop never hears about it — there, the product still shows as available. On Sunday night an online customer orders it and pays. On Monday morning you have an order you cannot fulfil: a cancellation, a refund, an apologetic email, and a customer who is unlikely to buy from you again.
If you sell through a WooCommerce eshop and a physical store at the same time, that scenario probably sounds familiar. Keeping stock, sales and returns in sync between the two is one of the first problems every retailer hits after adding a second sales channel. This guide walks through the realistic options in 2026, what each costs, and where each breaks in practice.
Two stock counts, one truth
The root cause is simple. WooCommerce core keeps a single stock number per product — it has no concept of a "store" or "warehouse", and you need a plugin even to distinguish two locations. Your physical store, meanwhile, lives somewhere else: in an ERP, in a till that does not talk to the site, in a spreadsheet, or — more often than anyone admits — in the shift manager's head.
Two records of the same shelf means that sooner or later the two numbers disagree. And the ways they disagree are predictable:
- Overselling. Sold at the register, still "available" online — the opening scenario. It costs refunds, support time and reputation.
- Phantom stock. The reverse: the eshop shows zero while the shelf has units. Nobody complains — you simply lose sales silently, which makes it worse.
- Stock drift. Small discrepancies that accumulate: a forgotten entry, a change applied to only one system. Eventually nobody trusts the number, and "call the other store and ask" becomes standard procedure.
- Returns into the void. A customer returns a web order in-store. If the restock is not written to the right stock count, the problem doubles.
None of this is a matter of "poor organisation". It is the expected outcome of two systems recording the same inventory without talking to each other.
WooCommerce stock sync: your options in 2026
1. Manual double entry
Where most retailers start: whatever sells at the register, someone also deducts by hand in WooCommerce at the end of the day — or whenever they get to it. It costs nothing in tools; it costs hours and mistakes. The real problem is not the effort but the lag: between the sale and the update, the eshop is selling stock that no longer exists. With a small catalog it works; add a season, a sale event or a second store and it collapses.
2. An ERP bridge (Soft1, Entersoft)
If your business already runs on a commercial/ERP system such as Soft1 or Entersoft, dedicated WooCommerce "bridge" connectors exist, implemented by partner agencies. They push products, prices and stock from the ERP to the eshop and pull online orders back in as documents. A solid option when the ERP is already the heart of the business.
The cost deserves attention, though: most providers do not publish prices — the integration is quoted per project, typically a four-figure one-off implementation plus annual maintenance, on top of the ERP licences you already pay. Every change also goes through the integrator. For a small retail team with no existing ERP, it is usually a step too far.
3. Sync plugins and SaaS
Two different categories that often get mixed up:
WooCommerce-to-WooCommerce plugins. Tools like Stock Sync Pro (WP Trio, €99 one-off) sync stock quantities between 2–10 WooCommerce sites, matched by SKU — the free version covers up to 100 products across two sites. Useful if you run multiple websites, but mind the fine print: they sync quantities only, and only between eshops. Your store's register is not a WooCommerce site — it stays out of the loop.
Multi-channel sync SaaS. Services like Trunk (from $35/month for up to 100 orders, scaling with monthly order volume) keep one central stock count and sync it across ~20 channels — WooCommerce, Etsy, eBay and more. For the physical store, however, you need a supported point of sale as a channel (e.g. Square) — another subscription and another system in the chain. Every link you add is another point that can fail.
4. One platform: POS and eshop in the same system
The fourth approach removes the problem instead of bridging it: the store register and the eshop write to the same stock ledger, in the same system. There is no "sync" to lag and no middleware to fall over — a register sale and an online sale are simply two movements on one ledger. The trade-off is commitment: your register has to be part of the platform, not a third-party device bolted on.
The options at a glance
| Approach | Typical cost | Setup effort | What breaks in practice |
|---|---|---|---|
| Manual double entry | €0 in tools — you pay in hours | None | Update lag → overselling, stock drift |
| ERP bridge (Soft1, Entersoft) | Quoted per project; typically four-figure one-off + maintenance (+ ERP licences) | High — implemented by an integrator | Expensive without an existing ERP; every change goes through a third party |
| Woo-to-Woo plugin (e.g. Stock Sync Pro) | ~€99 one-off | Medium | Connects eshops to each other only — the physical register stays out |
| Sync SaaS (e.g. Trunk) | From $35/month, scaling with orders | Medium | Needs a separate supported POS as a channel; more links, more failure points |
| One platform (POS + eshop together) | e.g. RetailPilot from €69/month | Low | Your register must be part of the platform — no third-party POS bolt-on |
What good stock management across eshop and store looks like
Whichever route you pick, the goal is the same — use it as your evaluation checklist:
- One stock ledger per store. Not one shared number for the whole business — each store knows what is on its own shelves.
- Every sale, from any channel, updates the ledger immediately. A receipt at the register or an order on the site — same movement, same stock, no "we'll enter it tonight".
- Every return restocks the right store. A return is not just a money credit — it is a stock movement with a destination.
- Visibility from anywhere. Staff in one store see instantly what the other store has, without phone calls.
- A movement history. When the count does not add up, you can see which movement changed it, when, and by whom.
If a solution does not cover points 2 and 3, it does not solve the problem — it relocates it.
How RetailPilot does it
RetailPilot takes the fourth approach. SyncRegister is a retail point of sale that lives inside your WooCommerce — not a separate system synced to it:
- Each physical store has its own stock ledger, with a full movement history.
- At the register you build carts by SKU with live product data from the eshop; register sessions open and close with a counted balance, and cash-drawer movements are recorded.
- Every retail receipt is published to your eshop as an order — in-store and online sales live in one place, and stock is restored automatically on cancellation.
- Online orders deduct stock automatically via webhook the moment they come in.
- Quick Stock Check (free on every plan) gives instant cross-store stock lookup by SKU or barcode.
- Add ReturnFlow (+€29/month) and every return restocks the product to the store you choose — rule 3 from the checklist above, in practice.
The base plan is €69/month and includes one core module of your choice (here, SyncRegister), one physical store, one connected WooCommerce website and unlimited users — never a per-user or per-cashier fee, never a percentage of your sales. Each additional store is +€15/month and each additional website +€9/month, so "two stores and two eshops" stays one subscription. RetailPilot Complete, with every available module, is €119/month.
One clarification: SyncRegister keeps your eshop and store on one stock count — it is not a fiscal device and does not replace your legal receipt-issuing obligations.
When you do not need this (yet)
To be honest, there are cases where any of the above is overkill:
- You sell through one channel only. Only an eshop, or only a store — there is no second stock count to drift.
- A tiny catalog with infrequent sales. With a few dozen SKUs and a handful of sales per week, a shared spreadsheet and discipline are enough — a rare oversell costs less than a subscription.
- Deliberately separate stock pools. If the store sells stock never offered online (an outlet, say), the channels do not share a shelf and there is nothing to sync.
The moment the answer changes is usually easy to recognise: the first oversell that cost you a customer, or the day "call and ask if we have it" became routine. At that point the problem is no longer theoretical.
FAQ
Doesn't WooCommerce already manage stock? It does — but as a single number per product, with no concept of location or store. For per-store stock, and for a physical register that writes to the same count, you need either a combination of plugins or a platform that supports it natively.
I run two WooCommerce eshops. Does a sync plugin cover me? For the eshop-to-eshop part, yes — tools like Stock Sync Pro sync quantities by SKU between WooCommerce sites. The physical store stays out: its register is not a WooCommerce site, so its sales update neither.
What about returns? The part most sync solutions forget. A proper return flow does not just credit money — it restocks the product to a specific store's ledger, so it becomes available where it physically is. In RetailPilot that is ReturnFlow's job.
I already run Soft1/Entersoft. Should I go with a bridge? If the ERP is already the centre of your business, a bridge is a reasonable route — just budget realistically for implementation and maintenance. If you have no ERP and your problem is "register and eshop on one stock count", an integrated platform is a much lighter step.
Third-party prices and capabilities (Trunk, Stock Sync Pro, ERP bridges) are described as publicly available in July 2026 and may have changed — check the providers' official pages before deciding.