- Before they can sync to Zenventory, all Shopify products must have a unique SKU assigned (including variants). If some of your products are missing a SKU in Shopify, you can add them easily using the Bulk Editor described in this article. Inventory synchronization will fail for any item missing a SKU in Shopify.
- All Shopify products must be marked as available and the option to track inventory in Shopify must be enabled. Inventory synchronization will fail for any product where these two settings are disabled in Shopify.
Shopify Integration Functionality (updated 9/02/21)
- Pulls items and quantities from Shopify into Zenventory during initialization (unless a matching SKU already exists)
- Pulls new orders from Shopify into Zenventory as long as they are in "Paid" and "Unfulfilled" status and have a customer assigned to the order.
- Pushes updated inventory stock levels from Zenventory to Shopify for matching SKUs
- Pushes order status update when completed, shipped, or canceled from Zenventory to Shopify
- Pushes shipment data from Zenventory to Shopify
- "Pickup Orders" from Shopify are pulled into Zenventory. Once they are picked, Zenventory will mark the order as 100% picked/shipped. These orders will not be pushed to any shipping integrations connected through Zenventory and the orders will need to be closed out manually in Shopify.
Update interval (maximums):
- All actions: 15 minutes
Configuring the integration
To begin the integration process, you must have a Shopify subscription active.
- Start by logging in to your Shopify store.
- Navigate to the apps page on the left hand menu.
- Click on “App and Sales Channel Settings".
- Click on "Develop App" and then click “Create an app”.
- Set a name for your private app that makes it easy to identify, then click "Create App."
- Click "Configure Admin API Scopes"
- Make sure the following checkboxes are selected, and leave ALL of the rest unchecked.
- Click "Save" (1) to save the permissions you just selected and then select the "API Credentials" tab (2).
- Record your API Key and API Secret Key values as you will need them to finish the setup in Zenventory.
- Click the "Install App" button.
- Go back to the API credentials tab. Click "Reveal Token Once" to obtain the Admin API Access Token. You will need this to set up the integration in Zenventory. NOTE: You will only be able to reveal this token one time, so make sure to record it and save it for future use.
- Next, log in to your Zenventory account and navigate to Admin -> System > Integration. Have the Admin API Access Token, API Key, and API Secret ready as you will need them to follow the next steps.
- While under the “Marketplace” tab, click the “Add Marketplace” button, select “Shopify”, then "Add".
- You will see a prompt to open the install guide. Simply click this link, and then you can close the new window/tab if you already have the guide open.
- All fields necessary for initializing the Shopify integration will be displayed:
- A) Shop - This is the first part of your Shopify app URL; it may differ from your actual Shopify store name. See highlighted example below, in this case you'd use "app-test-store" for Shop (without the quotes).
- B) Admin API Access Token - obtained one time from step 11 above.
- C) Client - For 3PL providers, this will link the store to a specific 3PL client in Zenventory.
- D) Shop Name - This will be used to identify your shop name locally within Zenventory and can be different from Shop (optional).
- E) API Key - This can be obtained from the private apps page in Shopify. Refer to step 8 for more info.
- F) Warehouse - This will be the default warehouse used for inventory allocations for orders from this channel.
- G) Stock Update Mode -
- Do Not Update Stock Levels - If enabled, only orders, order status updates, and shipment information will pass from Zenventory to Shopify. Zenventory will not pass stock level updates to Shopify with this enabled.
- Use Sellable Quantity - will update shopify with the item sellable quantity. Sellable is calculated by total in stock minus allocated items minus non allocated items on orders. This setting prevents overselling of a product.
- Use In-Stock Quantity - will update shopify with the item in-stock quantity. This setting can allow for over sale.
- H) API Password - This can be found on the private apps page in Shopify. Refer to page 8 for more info.
- I) Importing User - This will be the user associated with imported data, any user can be selected for this. NOTE: If no importing user is selected, no automatic imports will take place (you'll have to run them manually from the Actions menu).
- J) Integration Settings -
- Update Stock Levels Only - will not import orders from Shopify, only updates the item stock levels.
- Import Order Line Item Edits from Shopify - If a change is made to the items on an order, Zenventory will update those changes.
- Import Cancellations from Shopify - If an order is cancelled in Shopify, the order will be cancelled in Zenventory.
- Always Send Fulfillment Receipts to Customers in Shopify - allows the integration to always enable emails to be sent to the customer once the order has been fulfilled.
- Once you have filled in all the integration information, click “Save” then “Initialize”. This will activate your integration and begin transferring data between Zenventory and Shopify. Once initialization is complete, you are finished with the setup process.