We run two separate stores (same brand, different geographies) selling the same products using the same SKUs. We use the Fulfillment API to sync orders to our in-house system. Our in-house WMS is the source of truth and syncs inventory levels back to both stores every hour.
Here’s the issue:
-
We start with 100 units of a product.
-
An order is placed on STORE1 for one unit.
-
Shopify moves 1 unit to “Committed” and deducts it from “Available.”
-
The order is synced to our WMS, which correctly updates the stock level from 100 to 99.
-
The WMS syncs the updated stock level (-1) back to both Shopify stores.
-
STORE2 now shows the correct stock level of 99, but STORE1 shows 98, as one unit is still “Committed”.
-
Only when the order is marked as fulfilled in Shopify does the “Committed” status clear, and both the WMS and Shopify are synced to the correct level—until another order comes in.
This is causing major issues, especially over the weekend when hundreds of orders remain unfulfilled until Monday. Our WMS shows available stock, but one or both stores are marked as sold out because the inventory is effectively double-counted: once in “Committed” and again as an actual deduction.
Is there a workaround for this? Our WMS is custom-built, and we coded the integration ourselves. However, there seems to be no process to address this, and it appears to be the default behavior in Shopify.