Shopify: what ID is used for the Merchant product number?
About this article
This article describes Shopify product identifiers, and how they can be used to enrich information in your product feed via CSV file.
Shopify product ID
When you first connect your Shopify plugin to ChannelEngine, you may notice that the unique product identifier in ChannelEngine (MerchantProductNo) is not an SKU. SKUs are typically used as the product identifier when you use a product feed or an ERP connection. Instead, the Merchant product number is taken from Shopify's own unique product identifier. This is because Shopify product IDs are required when performing API calls to and from Shopify. Setting the relationship between individual product variants (children and parent relationships) is all based on these IDs.
Using Shopify product IDs to update product information
Shopify offers limited options for managing product information. Marketplaces typically require much more details product information than an e-commerce platform. As a result, most Shopify users use an alternative system to enrich product information and add new attributes.
To include additional product information via a product feed, the original MerchantProductNo in ChannelEngine (in this case, the Shopify product ID) is used to connect the data between the external feed and the ChannelEngine database. You need to extract this information from Shopify by creating an export that contains all your Shopify products alongside their associated IDs.
How to export Shopify product IDs
Shopify has an export option to generate a CSV file containing all of your Shopify products (Products page, Export), however, it does not include Shopify IDs. Therefore, it is necessary to export your information via one of the alternative methods listed below:
- Use a (paid) Shopify plugin
Use the Shopify app store to find a suitable plugin built for the purpose of exporting product data alongside Shopify IDs, such as this one.
- Build your own implementation of the Shopify API
If you have developer resources or sufficient technical knowledge, you can perform a simple information fetch from the Shopify API. You can use the following API call (where the number of pages and calls is based on your total amount of products)
- Use a custom channel in ChannelEngine
You can create a custom channel in ChannelEngine that includes all (Shopify) products. These will automatically contain the Shopify ID (as the MerchantProductNo) and the SKU (VendorProductNo). This option is explained below in more detail.
Example: using Google Sheets to enrich Shopify content
To set up a new feed to enrich existing content:
- Create a custom channel and include all (Shopify) products.
- Once a feed has been generated, download the CSV file. It can take up to one hour after enabling the channel for the feed to be generated.
Open the export file and copy-paste the columns you want to include in your feed to a Google Sheets file. Alternatively, open Google Sheets, click File, Import, Upload, and select the downloaded export file from the file location on your computer.
- You can add columns containing as much product information and attributes as necessary to the Google spreadsheet. Note: you must keep the column MerchantProductNo.
- When you have added your product information, publish the file to the web, choose the option to make the file public, and export it as a CSV file. You can find more information about exporting Google Sheets files as product feeds in the following article: ChannelEngine: create a product feed using Google Sheets.
- Use the URL generated from publishing the Sheets file to import your product information to your custom channel (see ChannelEngine: product feeds).