At this year’s Unite event Shopify announced Locations, which enables merchants to manage inventory, fulfillments, and restocks across multiple locations from the Shopify admin. Currently inventory is set and adjusted on the product variant and is not tracked by any particular location. In anticipation of multi-location inventory, Shopify have released a new Inventory API, which includes two new endpoints: Inventory Item and Inventory Level. The Inventory API will allow apps to effectively manage inventory quantities across multiple locations.
We’ve just released a free update to fmEcommerce Link (Shopify Edition) to include support for working with the new multi-location inventory features and APIs. The main changes in this update are:
- two new tables: InventoryItems and InventoryLevels
- the ‘inventory_quantity’ from Product Variant uploads has been disabled as this is now deprecated (use Inventory Level endpoint instead)
- added examples for working with multi location Inventory: download Inventory Levels and upload Inventory Levels
- Product Variants: added examples for uploading, downloading and deleting individual Product Variants without having to upload the parent Product
Shopify have announced that the new multi-location inventory features will go live on August 1, which means the API changes will also happen at the same time. The main impact for fmEcommerce Link users is that you will no longer be able to set inventory on the Product/Variant APIs and must use the new Inventory Level API instead. We recommend reading the following articles on the Shopify website to get a better understanding of these changes:
- Shopify Locations: What This Update Means for App Developers
- Migrating to multi-location inventory
- Inventory APIs
The following chart from Shopify illustrates the relationship between a Product Variant and the new Inventory Item and Inventory Level resources:
With the new multi-location inventory changes each variant is now always linked to a single InventoryItem – there is a new 1:1 relationship between a Product Variant and an Inventory Item. Each product variant includes a inventory_item_id. Each InventoryItem must be stored in at least one location at any given time. Inventory stored in each location is represented by the new InventoryLevel resource. We’ve added a new Inventory TAB in the Setup screen where you can view all Locations, InventoryItems and InventoryLevels:
When viewing a Product Variant you can now view all related Inventory Levels:
and within each Inventory Level you can set the Inventory Level for that Location, adjust the Inventory Level up/down and delete the Inventory Level from Shopify:
This is a free update to all our existing customers – you can get the full details of the changes in the release notes for fmEcommerce Link (WooCommerce Edition). Existing customers can download this new version using their existing download links from their original order – please contact us if you have any issues downloading this update.
The following video demonstrates how to use the new multi-location inventory features in v1.1 of fmEcommerce Link (Shopify Edition):