Shopify Inventory Sync

Understand the nuances of how SKUSavvy manages keeping your inventory in-sync with Shopify.

How does SKUSavvy sync inventory with Shopify?

In theory, syncing inventory with Shopify should be a straight forward endeavor. In practice however, there are many moving parts and some assumptions have to be made when reconciling the different ways that inventory is handled in each system. The following is a guide explaining how we track inventory in SKUSavvy, how it differs from Shopify, and some common pitfalls to avoid to ensure your inventory records remain in lockstep in both systems.

All Inventory Changes Should be made within SKUSavvy

Treat SKUSavvy as your source of truth for inventory. Stock takes, purchase orders, fulfillments, transfers should all be made within SKUSavvy.

Resync Shopify Inventory

Within SKUSavvy if you've already connected Shopify you can manually choose to sync inventory from either Shopify or SKUSavvy.
Sync from SKUSavvy to Shopify
When you sync inventory from SKUSavvy to Shopify values in Shopify will be updated to reflect total quantities in SKUSavvy
  • 1) Select what source you will use

  • 2) View direction of the inventory sync

  • 3) Type 'override inventory in shopify' to confirm the sync

sync inventory from skusavvy to shopify inventory
Sync from Shopify to SKUSavvy
Resyncing Shopify inventory into SKUSavvy will show any positive discrepancies as unallocated quantities and negative quantities as reconciliations.
resync shopify inventory to skusavvy

How does Shopify manage inventory?

There are three important inventory metrics in Shopify, committed, available, and on-hand. Committed inventory is the quantity that has been sold, but not yet fulfilled. Available inventory is on hand inventory minus committed inventory. And your on-hand is available inventory plus committed inventory.

For example, let's say you have 10 apples for sale and a customer places an order for 2. Available inventory will go from 10 to 8. And committed inventory will go from 0 to 2. Once the order is fulfilled, available will remain at 8, and committed will become 0.

How does SKUSavvy manage inventory?

SKUSavvy handles inventory similarly to Shopify. Where things differ is that our system doesn't track available inventory, it instead tracks the current quantities throughout your warehouse. As such, when a product is purchased, the inventory is not immediately deprecated from our system as you might expect, since it still exists in various locations. Only once the item is picked for order fulfillment, will the inventory quantity in SKUSavvy be deprecated.

Using the same example as above, if you have 10 apples available for sale. When a customer orders 2 of them, the committed inventory value will be incremented by 2, as is the case with Shopify. However, the inventory value in the warehouse is NOT immediately deprecated. Only once the apples are picked for fulfillment will the available quantity will be deprecated by 2. This is an important distinction because it will often appear as though your inventory has fallen out of sync, but this is not the case. We will account for this discrepancy between available and in-warehouse quantity when pushing inventory level data to Shopify.

Actions Affecting Your Inventory Sync With Shopify

All inventory changes use webhooks that update in real-time between Shopify and SKUSavvy. Inventory changes should be made on SKUSavvy and are sent to Shopify

1. You integrate Shopify into your skusavvy account

We import your warehouses (locations) and the records of all inventory held in each spot. Because SKUSavvy allows for much more granularity over where inventory exists in your warehouse. The inventory is imported with a warning that allocation is required. This is due to the fact that Shopify only stores how many of an item you have at a given warehouse. And with SKUSavvy, at any given location your inventory will live inside a bin location and can be spread across multiple bin locations. The total quantity in all bins is your on-hand inventory value.

2. You allocate inventory to bin locations

When stock first comes over from Shopify it is held in an 'unallocated' state meaning SKUSavvy will not yet recognize this value to pick against. Your inventory first must be allocated to bin locations.

When you 'Adjust Inventory' or create a PO and bring new inventory into a warehouse the added quantities will be pushed up to Shopify regardless of whether or not you have unallocated inventory quantities still left over.

note: Do not make inventory adjustments on shopify

After you have connected SKUSavvy with Shopify you should treat SKUSavvy as your source of truth. That said, any inventory changes made on Shopify do not automatically come into SKUSavvy. You can resync your inventory from Shopify (or push SKUSavvy values up to Shopify) once every 24 hours which will create unallocated stock values in your SKUSavvy inventory.

3. Inventory Is used to fulfill orders

As your orders come into SKUSavvy the quantity needed of each product in an order will be placed in a 'committed' state. The inventory is still part of the total inventory available until the order has been marked fulfilled.

As inventory is picked and allocated to a shipment on the order it is depleted (removed) from both committed and available quantities. This quantity change is sent to Shopify when the order has been marked manually fulfilled or a carrier label is produced.
NOTE:  Order updates made on either Shopify or SKUSavvy will change the values of committed stock in real-time

3.a Cancellations and Returns

When an order is cancelled or returned, the stock from that order will need to be 'unpacked' and put back into a bin at which point your available inventory will go back up.

3.b Orders fulfilled outside of SKUSavvy

If you are fulfilling orders anywhere outside of SKUSavvy this inventory is depleted from Shopify and will show up as a 'Reconciliation' record within SKUSavvy. From here you will need to reconcile the quantity that was depleted for the order and from which bin location that inventory came from.

4. Inventory Transfers

When you initiate a transfer (cross-docking) between warehouses, stock from the originating warehouse will be depleted, and stock checked-in to the receiving warehouse will be increased. On both sides of this movement SKUSavvy will update the stock to reflect transferred quantity in the respective locations. Stock transfers made on Shopify are not registered in SKUSavvy until you do a resync from Shopify.

5. Bundle Inventory

SKUSavvy can hold relationships between one or many products for use in kitting or bundling. When a bundle is created on SKUSavvy each input component has a factor required to complete the bundle. When you pre-assemble, or inline assemble the bundle, quantities from input components are depleted, and finished goods inventory is increased.

At the time you convert input compoents to finished goods, inventory values will be updated back to Shopify to reflect this if your input components are also singular products listed on Shopify.