# Shopify Connector
Shopify (opens new window) is an e-commerce platform that lets you manage your orders - from inventory to point of sale to shipping and returns.
# API version
This connector uses the Shopify REST Admin API (opens new window) version
2022-07. You can monitor the availability of the API (and other services) through the Shopify Status (opens new window) page.
How does Shopify handle its API version upgrades?
Shopify generally releases a new version every 3 months, and maintains each release version for a maximum of 12 months. That means that there will be 4 stable versions supported at any point in time.
Once a released version passed its one year mark, Shopify will no longer maintain that version, and any API calls requesting that version will be automatically routed to the oldest stable version currently supported.
For instance, if the current available stable versions are
2021-10, then any API calls requesting for
2020-04 version will be automatically routed to the
2021-01 version by Shopify.
You may visit Shopify's API versioning (opens new window) page for more information.
# How to connect to Shopify on Workato
To connect Workato to Shopify, you need to provide the fields as detailed in the table below. There are also additional fields to input depending on the authentication type you select. These will be detailed in their individual sections.
|Connection name||Give this connection a unique name that identifies which Shopify instance it is connected to.|
|Location||Specify where in the project you want to store the connection in.|
|Authentication type||We currently support (a) OAuth 2.0 or (b) access token.|
|Shop Name||Your shop name. For example, shopname.myshopify.com/admin|
|Custom OAuth profile||When selected, all requests to the app will use the profile specified in Workato. You can create a new profile in-app. It ensures that the connection is restricted to the same set of scopes selected in the profile for all users with the profile, and the authentication flow uses the client app linked to the custom profile.|
There are currently 2 ways to connect to Shopify — OAuth2.0, and access token.
# OAuth 2.0
You can perform OAuth 2.0 authorization through providing your own OAuth app. This OAuth app should be registered as a custom OAuth profile in Workato. Select the registered custom OAuth profile to connect to Shopify through it.
|[Optional] Requested permissions (OAuth scopes)||The permissions to request for this connection.|
To create your own OAuth app, you will need a Shopify Partner account. Follow the steps below to find the necessary client ID and client secret:
- Login to your Partner account (opens new window). If you don't have one, you can register via the same link.
- On the left navigation, click on "Apps", and then "Create app".
- Click on "Create app manually" and provide a name for your app. Finally, click "Create".
- You will be redirected to the app dashboard which contains the API key and API secret key. Please create a custom OAuth profile using these API key and API secret key on Workato.
- Click on the "App setup" option on the left navigation. Type
https://www.workato.cominto the "App URL" and
https://www.workato.com/oauth/callbackinto the "Allowed redirection URL(s)" fields.
For more information, you may read Shopify's documentation (opens new window) on OAuth apps.
As of version 2022-10, published public custom apps are required to satisfy Shopify's data protection policy (opens new window) to process customer data. If you are connecting through a published public custom app, you will need approval (opens new window) to access customer protected data.
This requirement does not apply if you connect through custom apps (via access token) or unpublished custom apps.
# Requested scopes
By default, we request for the following scopes when setting up a connection to Shopify:
In addition to the above, you may choose to allow Workato access to the following additional scopes:
The minimum scope to successfully establish a connection is:
# Access token
To connect to Shopify via access token, you will need to create a custom app. Unlike OAuth 2.0 authentication type, you will need to define the permissions/scopes within the custom app configuration page.
|Access token||The access token provided when installing your custom app. Record the token somewhere secure as you can only see it one time on both Shopify and Workato.|
Follow the steps below to create a custom app and find the necessary access token:
Login to Shopify, and go to "App and sales channel settings".
Click on "Develop apps for your store", then "Create an app".
Name the App, and then confirm by clicking on "Create an app".
You will be redirected to the app dashboard. In the "Overview" tab, click on "Configure Admin API scopes", and select the required scopes. Rest assured you can still edit the scopes post-installation.
Please ensure that the app has at least
read_productspermission scope to successfully connect Workato to Shopify. The recommended set of scopes are:
Click "Save", then click "Install App" at the top right corner
Once the app is installed, there will be an option to get the access token. Reveal and copy the access token. Make sure to record the token somewhere secure as you can only see it one time on both Shopify and Workato.
Please provide the access token in the connection setup page on Workato.
For more information, you may read Shopify's documentation (opens new window) on custom apps.
Explore the available triggers and actions:
- New customer
- New order
- New product
- New product variant
- New updated abandoned checkout
- New updated customer
- New updated order
- New updated product
- Add metafield to objects
- Add metafield to store
- Adjust inventory level
- Cancel a fulfillment
- Connect inventory item to location
- Create customer
- Create draft order
- Create fulfillment
- Create order
- Create product
- Create product image
- Create product variant
- Create payment refund
- Create transaction
- Delete draft order
- Delete product image
- Get draft order by ID
- Get fulfillment by ID
- Get store metafields
- Get object metafields
- Get order by ID
- Get product image by ID
- Get transactions
- List draft orders
- List fulfillments by fulfillment order
- List fulfillment orders for an order
- List locations
- List product images
- List product variants
- Send email invoice
- Search customers
- Search products
- Set inventory level
- Update customer
- Update draft order
- Update SKU
- Update object metafield
- Update order
- Update product
- Update product image
- Update product variant
- Update store metafield
- Update tracking information of a fulfillment