Skip to content

Shopify

CatalogRelay exports products to Shopify using the Shopify Admin API.

  • A Shopify store (any plan)
  • Admin API access
  1. In Shopify Admin, go to AppsDevelop apps
  2. Click Create an app, name it “CatalogRelay”
  3. Go to the app’s Configuration tab → Admin API integration
  4. Set the following scopes:
    • write_products, read_products
    • write_inventory, read_inventory
    • read_locations
  5. Click SaveInstall app
  6. Copy the Admin API access token
  1. Go to Export DestinationsAdd destination
  2. Select Shopify
  3. Enter:
    • Store domain: yourstore.myshopify.com (without https://)
    • Access token: from the custom app
    • Location ID: the inventory location to update stock at (leave blank to use default)

CatalogRelay maps supplier feed data to Shopify’s product/variant structure:

CatalogRelayShopify field
Nametitle
Descriptionbody_html
Brandvendor
SKUvariants[].sku
GTINvariants[].barcode
Price (after rules)variants[].price
Stockinventory_levels[].available
Image URLimages[].src

Map canonical attributes to Shopify metafields via Field Mappings:

canonical: delivery_days → metafields.custom.delivery_days
canonical: weight_kg → metafields.custom.weight

The metafield namespace and key must match definitions in your Shopify store.

Use a category set with Shopify collection handles as destination codes. CatalogRelay adds products to collections via the collect API.

The canonical product_type attribute (if mapped) is sent as Shopify’s product_type field, enabling filtering in Shopify Admin.

CatalogRelay updates inventory levels at the specified location. If continue selling when out of stock is configured on a variant in Shopify, CatalogRelay does not override that — it only updates the quantity.

If a supplier feed contains multiple SKUs that map to variants of the same product (e.g. different sizes of the same shirt), configure variant grouping in the export profile to group them under a single Shopify product.

By default, each SKU becomes a separate Shopify product. Contact support to configure variant grouping.

The Shopify Admin API has rate limits. CatalogRelay respects these limits with automatic backoff and retry. Large catalogues (100,000+ products) may take several hours for the first full sync.

Product not found error: The product was deleted in Shopify but CatalogRelay still has a reference to it. CatalogRelay will attempt to re-create the product on the next run.

Metafield not updating: Ensure the metafield definition exists in Shopify and the type matches the value (e.g. a number_integer metafield cannot receive a string value).

Inventory not updating: Verify the Location ID in the destination configuration is correct. Use the Shopify API or Admin to confirm the location ID.