Shopify: plugin guide

About this document

This document describes ChannelEngine's Shopify plugin, how to install it, how to configure it, and more.

Table of contents


Plugin features

Plugin requirements

Installing ChannelEngine on Shopify

Installing Shopify on ChannelEngine




To connect your Shopify webshop to ChannelEngine, you need to connect your Shopify account as a private app to ChannelEngine.

This guide is about Shopify as a merchant plugin, which acts as the source of your product data and handles all orders. If you need information on Shopify as a channel, check out the Shopify: channel guide article.

Note that Shopify is limited in terms of product data. If you want to create or update content on marketplaces, you need an additional source of product information – such as an additional data feed.

Plugin features

Supported Not supported
Product data External fulfillment orders
Orders Returns
Cancelations (merchant)

Plugin requirements

  • Active account on Shopify
  • Active merchant account on ChannelEngine

How to request an account

Shopify front-end

To sign up for an account with Shopify, go to their website. For information regarding pricing, check out the Shopify Pricing page.

Installing ChannelEngine on Shopify

To connect your Shopify store with ChannelEngine, you must add ChannelEngine as a private app in the back-end of your Shopify account. To do so, follow the steps below.

  1. Open Manage private apps in the Shopify back-end.
  2. Shopify back-end

  3. Select the option Create a new private app.
  4. Shopify back-end: create a new private app

  5. Enter a name and emergency developer email for the private app. While it is your choice on what to enter, it is recommended to use the following data:
    • Private app name - ChannelEngine
    • Emergency developer email -

    Shopify back-end: create private app

  6. Update the permissions of the private app, so ChannelEngine has the required access:
    • Store content such as articles, blogs comments, pages, and redirects - read access
    • Customer details and customer groups - read and write
    • Orders, transactions, and fulfillments - read and write
    • Products, variants, and collections - read and write

    Shopify back-end: admin API

  7. Leave the Webhook API version on the latest version. ChannelEngine does not require access to the storefront data.
  8. You are then asked if you are sure you want to create a new private app. Select I understand, create the app to proceed, but make sure that the API credentials are kept safe.
  9. Shopify back-end: create a new private app (confirmation screen)

  10. New API credentials are generated and made visible. You can now add the API key and Shop URL to ChannelEngine to establish the connection.
  11. Shopify back-end: admin API

Installing Shopify on ChannelEngine

Add the integration to your ChannelEngine account, and fill in the previously acquired credentials.

  1. If it has not been done yet, contact your Onboarding Specialist to add the Shopify plugin for you.
  2. Go to Settings > Merchant plugins or select the Shopify plugin from your channel dashboard.
  3. ChannelEngine back-end: dashboard

  4. Go to the Setup tab of the Shopify plugin and add the credentials and settings needed for the connection to work:
  5. ChannelEngine back-end: setup

    • API access token - the password token from the Shopify private app page, not the API key token.
    • API shop URL - the base URL of your Shopify store. E.g.:
    • Shop URL - the base domain of your store, if you use a custom domain. E.g.:
    • Color alias on Shopify - the name of your color attribute on Shopify. By default this is Color, however, it is possible to change it to a different, localized value. To set the color correctly on ChannelEngine's end, the correct attribute name is needed.
    • Size alias on Shopify - the name of your size attribute on Shopify. By default this is Size, however, it is possible to change this to a different, localized value. To set the size correctly on ChannelEngine's end, the correct attribute name is needed.
    • Material alias on Shopify - the name of your material attribute on Shopify. By default this is Material, however, it is possible to change it to a different, localized value. To set the material correctly on ChannelEngine's end, the correct attribute name is needed.
    • Page size - the maximum number of products returned per page. Shopify has a default of 50 items per page, and ChannelEngine uses a default of 250. It is recommended to leave this setting untouched.
    • Name for shipment costs on order (optional) - the name of your shipment cost attribute on Shopify. By default this is Shipment costs, however, it is possible to change it to a different, localized value. To set the shipment costs correctly on ChannelEngine's end, the correct attribute name is needed.
    • Code for shipment costs on order (optional) - the code to set on shipping lines for orders exported to Shopify. If left empty, the name is used – in lowercase, with spaces replaced by dashes.
    • A single payment gateway name for channel [CHANNELNAME] (optional) - the name of the payment gateway for a specific channel. This is only needed if you track specific payments per channel in underlying systems.
  6. If all settings have a checkmark, you can switch on Activate synchronization for Shopify. This triggers an attempt to make a test API call to your Shopify environment. If it returns an error, instead of a green toggle, the API access token and/or API shop URL are invalid. Make sure to double-check these settings and try again. If the problem continues, please contact ChannelEngine's Support team.

ChannelEngine back-end: activation

  1. If the plugin is successfully activated, tasks are automatically scheduled to import products and shipments from Shopify – and export orders to Shopify. You can check the latest executed tasks and their next schedule in the Dashboard section of the plugin settings.
  2. ChannelEngine back-end: scheduled tasks


New orders from ChannelEngine appear in the overview under Shopify > Orders.

Phone numbers

Shopify requires phone numbers on orders to be in the E.164 international standard, including the country code prefix. Most marketplaces, however, allow phone numbers to be in any format.

The E.164 general format must contain only digits, formatted in the following way

  • Country code (1 to 3 digits) - e.g.: 1 (United States), 55 (Brazil), 353 (Ireland).
  • Subscriber number (max. 12 digits) - e.g.: 55512345618


  • Why is the stock not updated automatically when orders are exported to Shopify?
  • By default, Shopify does not subtract or add stock on orders, shipments, or cancelations. This has to be done manually. However, ChannelEngine does offer the option to automatically update the stock when fetching a shipment for products. To find out how to enable this option, check out the Shopify: stock management article.

  • Why is the stock on ChannelEngine the sum of my stock in each of my locations?
  • If you have assigned inventory to more than one location on Shopify, it pushes the sum of the stock quantity in each location to ChannelEngine – which in turn displays that value as your current stock. This is done by default, and it is not possible to disable it. E.g.: if inventory location A has a stock quantity of 2, and inventory location B has a stock quantity of 1, the stock shown on ChannelEngine is 3.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.