< Back
Print

Shopify Transmitter

We provide a full configured station template with the necessary datamap and jobs for the Dynamic JSON Transmitter!


Setup the transmitter

In the transmitter settings you need to setup the following things:

  1. The URL to the Shopify Shop
  2. The custom Metafield Identifier
  3. The Shopify API Version
  4. The Shopify Admin API Token
  5. The Shopify Storefront API Token

There is no need to install importer plugins in Shopify, as the SAWSConnector seamlessly integrates with Shopify’s HTTP Web API using GraphQL.

Custom Metafield Identifier

To create the custom Metafield for the identifier in the Shopify backend, set the name as you like and copy the name with the namespace after creation.

The custom metafield identifier is used to identify the product in Shopify with a value stored in Contentserv. The metafield identifier needs to be configured in the datamap to add, update or delete products or collections. In the transmitter configuration the identifier is set with <namespace>.<key>.

Shopify Backend Shopify Transmitter
shopify backend configuration Screenshot of the Shopify Transmitter Setup
e.g. productsUpdateCreate-Datamap
configuration of the custom pim identifier in the datamap

 
Version 1.20. and higher:
You can activate the checkbox for the proxy cache. If the checkbox is activated, all product ids will be cached so the initial loading time is reduced.
By deactivating the checkbox the cache gets cleared.

API Tokens

To use the Shopify transmitter set the “App Secret” and the “Client ID” in the Transmitter settings
Screenshot Shopify Transmitter Configuration ClientID and App Secret
 

Install Custom API App and generate Token
1. Go to the Developer Dashboard in the top right settings
Screenshot of how to get to the Developer Dashboard
2. Create an app using the “Create App”-Button
Screenshot of showcasing how to create an app in the developer dashboard of shopify
3. Give the app a name and click “Create”
Screenshot giving the Shopify App a name
4. Add the right access scope to the app so the transmitter will work as expected.
Important: You need to grant access to all the Endpoints from the Admin API and the Storefront API
Click on “Done” when all the necessary rights are selected
Set the Access Scope for the Shopify App that you are developing
Selected Access Scopes for the Shopify App
5. If the “Access” Field looks similar to the example one, click on “Release”. It is optional to set a version name
Screenshot on how to release the created Shopify app
Screenshot setting a version for the released app
6. When your app is created, you need to install the App on your Shop.
Go to “Home” in your App to select the distribution method and gernerate the installation link. Otherwise you can’t install the app.
Screenshot of where to go to the distribution settings of the app
7. Select “Custom distribution” so the App doesn’t get shared to the Shopify App Store
Screenshot of Step 1 selecting the distribution method
8. Insert your store domain
This is necessary so the app can only be installed on your shop. Copy the URL from your dashboard like in the example below, insert it and click “Generate Link”
Screenshot of the correct URL to use for App distribution to Shopify Shop
Screenshot of finishing the Distribution Settings for the Shopify App
9. Copy the generated Link and open it up in a new Tab
After opening the link, select the Shop where you want to install the app. (Only if you have multple stores)
Screenshot of the generated link for the app installation
10. In your store, you should then see the install configuration. Click “Install” to install the app
Installation of the developed Shopify App in Shopify Store
If everything worked, you should see the app in the left navigation
Screenshot of the confirmation that the App was installed correctly
11. In the Developer Dashboard get Client ID and Secret
In the dashboard will now be 1 Installation visible of the created app (probably you need to refresh the page). Click on Settings, there you can Copy the “Client ID” and the “Secret” which are the values you need for the transmitter settings.
Screenshot of confirmed installation in the developer dashboard
Screenshot of where to copy the cliend id and secret for the app

After configuring the tokens save them in Contentserv and select them in the Shopify Transmitter configuration.

Contentserv configuration
Screenshot Storing Secret in Contentserv
Screenshot Shopify Transmitter Configuration ClientID and App Secret

 

Node Mappings

Please ensure that the nodemap settings are set correctly to identify products and variants and to differentiate if the record needs to be created/updated or deleted.

configuration of the nodemaps for shopify

Configuring the datamaps

Every datamap (except for the variant datamap) needs the custom identifier metafield. Also Shopify needs at least a title to create a resource, the other rows are optional. The last row in the datamaps is always called ‘additionalInformation’. This row is ignored by Shopify but is necessary for the connector to work. In this row the csrecordid and the csrecordclass are stored.

 

If you export products with variants you need to configure the row called ‘variants’ in the ‘productUpdateCreate’ datamap, in which an array of the skus from the variants is stored. To connect the variants correctly to the product, you need to setup the sku for the variant in the ‘variants’ datamap.

 

If you export simple products you need to configure the simple product datamap rows.

datamap with the configuration of simple products or variants
 

Bundles

The transmitter can also create “Bundles” in Shopify. This only works for bundles of simple products. To implement bundles you need to configure the datamap row “bundleInput”.
You can also import the datamap row into an existing datamap.
There are two options for the configuration, bundles with an attribute of PIM references or bundles with the complex article table.
 
Screenshot of datamap row templates for bundles
This row is used to set the structure of the bundle. All the other values are set with the product datamap, similar to a simple product.

 

Metafields

If the metafield is language dependent, you need to set |{StoreView} behind the name.
In the datamap you always configure the metafield with the following key:

 

metafields|your-name

 

Version 1.20. and higher:
We provide a Format Plugin for Shopify Metafields as easier way to configure metafields.
Screenshot of the Shopify Metafield Format Plugin selection
You can find a detailed guide on how to use the Format Plugin here.

 
Legacy:
Every metafield gets configured as an array and needs the namespace, the key and its value. You can see the namespace and the key in your Shopify backend.

The value needs to be a string.

metafield configuration for shopify

 

To fill a metafield with multiple values (List) you need to send an Array containing all the values which is encoded as a JSON-string.

Metafield References

This is only necessary when creating Metafields without the “Metafield Formal Plugin”
We also provide the following reference types for metafields:

  • products (e.g @productRef:{PIM_IDENTIFIER} )
  • variants (e.g. @variantRef:{SKU} )
  • collections (e.g. @collectionRef:{PIM_IDENTIFIER} )
  • media files (e.g. @mediaRef:{FILENAME} )
  • meta objects (e.g. @metaobjectRef:{METAOBJECT_DEFINITION_TYPE}|{METAOBJECT_HANDLE} )

To use these reference values, the result value has to contain the key from the examples as prefix of the value.
This is a way to dynamically add the value, but you can also provide the Shopify ID.

 

Handle Metaobject Entries

The Transmitter can create, update or delete entries for existing metaobjects. Therefore we provide a configured datamap template which is also included in the Shopify Station template. A metaobject entry is always identified with the metaobject definition type and its unique handle.
 
Required Rows in the Metaobject Datamap
 
In Shopify you can find the values for the type and the field keys in the Metaobject Definition
(Settings > Custom Data > Metaobject definitions)
 
Metaobject definition configuration in Shopify
 
You can use references the same way as in the metafields.
Create for each field that you want to fill a row in the datamap with a key and a value. There are some examples for different types already configured in the template.

You can also set the status of the entry (ACTIVE or DRAFT) and a template suffix.
 

Media to upload

Media can be uploaded in two different ways.
The datamap export column is “mediaUpload|[]” or “upload|[]”
 

mediaUpload This is used for images or videos which are part of the product like product pictures. Also, with this key you can create the media for variants in Shopify
Types: IMAGE, VIDEO, EXTERNAL_VIDEO, MODEL_3D
upload This is used for just uploading files to Shopify – the files are not connected to a product or variant but then e.g. can be referenced by metafields.
Types: FILE, IMAGE, VIDEO, EXTERNAL_VIDEO, MODEL_3D

The media for variants and products gets uploaded via the ‘productUpdateCreate’ datamap. You can send only 1 image per variant but multiple media files per product.

To connect the media files to a variant you also need to maintain the datamap row ‘additionalInformation’.
 
Version 1.20. and higher:
We provide a Format Plugin for Shopify Media as easier way to send media to Shopify.
Screenshot of the Shopify Mediaupload Format Plugin
You can find a detailed guide on how to use the Format Plugin here.

 
Legacy:

Every media upload needs the following keys:
image settings to upload images to shopify

Note: for collections you also need to maintain the collectionInformation|image row in the datamap, otherwise the image can’t be connected to the collection.

 

(Deprecated) API Tokens

Deprecated since 01.01.2026
Message that Shopify App Development is Deprecated
To use the Shopify Transmitter set the API Key for the Storefront API and the Admin API in the Contentserv credentials and select them in the transmitter settings.

First you need to generate these tokens, therefore you can follow this guideline

Shopify generate Tokens
create a custom app in shopify
create app in shopify
Go to the configuration tab and select the Admin API Integration. Please select every point in the Admin Api access scope
access scope of the admin API configuration
After the access scope please select the API version e.g. 2024-07
select the API version of the app
Now that the Admin API is configured correct, go to the configuration of the Storefront API and select every point of the access scope
In the Storefront API you can’t set a version for the API
With both APIs setup, click on “Install” and install the app
install shopify app
Important: Copy the Admin API key now and save them, because you can only reveal the admin API key once!
api keys in shopify

 

Was this article helpful?
How can we improve this article?
Please submit the reason for your vote so that we can improve the article.
Table of Contents