Understand the nuances of how SKUSavvy manages keeping your inventory in-sync 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.
Treat SKUSavvy as your source of truth for inventory. Stock takes, purchase orders, fulfillments, transfers should all be made within SKUSavvy.
Within SKUSavvy if you've already connected Shopify you can manually choose to sync inventory from either Shopify or SKUSavvy.
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) Select which locations you want to resync
4) Type 'override inventory in [shopify or skusavvy]' to confirm the sync
Resyncing Shopify inventory into SKUSavvy will show any positive discrepancies as unallocated quantities and negative quantities as reconciliations.
There are five important inventory metrics in Shopify: unavailable, committed, available, on-hand and incoming. Unavailable inventory will not be sold to customers, committed inventory is the quantity that has been sold to end customer, but not yet fulfilled. Available inventory is on hand inventory minus committed inventory. And your on-hand is available inventory plus committed inventory. Finally, the incoming inventory is what's due to arrive from transfers or purchases.
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.
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.
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
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. With SKUSavvy, at any given warehouse your inventory will live inside a bin location and can be spread across multiple bin locations. SKUSavvy also supports serialization and lot tracking. The total quantity in all bins is your on-hand inventory value.
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.
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 12 hours which will create unallocated stock values in your SKUSavvy inventory.
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
Returns should be initiated on Shopify and restocked back on Shopify as well. This will create an update in SKUSavvy to bring that stock back into the warehouse through an inventory allocation. If that product is only located within one bin location, SKUSavvy will automatically place the inventory back in the single bin it came from. If there is more than one bin location for the returned stock you will need allocate that stock to a bin before it is considered restocked.
If you are fulfilling orders anywhere outside of SKUSavvy including other shipping platforms, Shopify fulfillment, POS orders etc. this inventory is depleted from Shopify and and the stock change will be taken from your on-hand inventory within SKUSavvy via reconciliation. If the item exists within a single bin location, SKUSavvy will automatically reconcile and remove the stock taken for the order. If the stock exists within more than one bin location you will need to clear the reconciliation and provide a bin location the stock came from.
When you initiate a transfer (cross-docking) between warehouses, stock from the originating warehouse will be depleted as soon as the order is created, 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.
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.
Cycle counts let you count stock in your warehouse on a continuous basis. When you complete a cycle count or stock take within SKUSavvy the changes made to the count will immediately be reflected in both SKUSavvy and Shopify. It is recommended to cycle count your stock regularly as opposed to full counts once or twice a year.