In short: To avoid selling products that are out of stock, the shop and the warehouse must exchange stock levels, orders, prices, product data and customer records. For each piece of data you choose a single system of record, then connect the two with periodic file imports, a direct connection (API) or a single management system.
If the online shop and the warehouse keep their records on two separate sheets, someone has to copy orders and stock across by hand. That works while the products are few. Then one order too many comes in and the customer receives an apology instead of a parcel.
What has to travel between the two systems
- Stock levels. When a product sells, the count goes down everywhere. When goods arrive, it goes up.
- Orders. From the shop to the management software, to be fulfilled and invoiced. With the status flowing back: shipped, with a tracking number.
- Prices and price lists. If prices are set in the management software, they should update online on their own too.
- Product data. Codes, variants and barcodes. Where needed, the data for marketplaces as well.
- Customers. Above all for B2B with dedicated terms.
Who is in charge of the data
For each piece of data, choose a single system of record. Stock is usually governed by the management software. Descriptions, photos and SEO copy are often better looked after in the shop. If both systems can edit the same data, sooner or later they will contradict each other.
How to get the systems talking
Periodic file import
The management software produces a file every few minutes and the shop reads it. It is simple and works for small catalogues. The risk is the time gap: in the meantime, the goods can sell out.
Direct connection via API
The two systems exchange changes as soon as they happen. It costs more to build and behaves better. It needs the management software to have suitable interfaces. Otherwise, a small intermediate layer is built.
A single system
If you are starting from scratch, you can choose management software that already talks to your platform. It saves you building the bridge later on.
Typical problems
- Double counting. An order comes in twice because of a connection error. You need a unique identifier to recognise it.
- Variants. Are size and colour one product or several? The answer must be the same in both systems.
- Safety stock. Holding back two units from online sale protects against sync delays on products that sell out quickly.
- Returns. A return should go back into stock only once it has been inspected.
- Silent errors. If the connection drops, someone needs to know. An alert by email or message is worth more than a thousand manual checks.
Where to start
- Map an order's journey from click to delivery and mark every step done by hand.
- Pick the three that waste the most time or cause the most errors.
- Automate those and measure the time saved.
- Move on to the next ones.
Further reading: integrations and synchronisation · connecting management software and online shop · physical and online shops
Frequently asked questions
Which data should be synced between the shop and the management software?
Stock levels, orders with their shipping status, prices and price lists, product data (codes, variants, barcodes) and customers.
Is it better to import files or connect via API?
A periodic file is simple and works for small catalogues, but it leaves a time gap in which goods can sell out. An API updates almost immediately but costs more to build and needs suitable interfaces.
How do you avoid selling the same item twice?
With a unique identifier for each order, safety stock on products that sell out quickly and an alert when the connection drops.