Content platforms

Connect Shopify

Import Shopify product, collection and page copy into transglot and publish reviewed translations into each of your store's languages.

DirectionTwo-way
ImportedThe primary-locale value of the fields you choose, on products, collections and pages
Written backShopify translations registered for each secondary locale. The primary-locale content is never changed
SyncSync from CMS
Per syncUp to 2,500 resources per content type
PlanStarter and above

Before you start

  • Add your target languages to the store in Shopify's language settings. Their locale codes must match the language codes in your transglot project.
  • Create a custom app in your Shopify admin and install it to get an Admin API access token. Give it these scopes: read_translations and write_translations, plus read_products (for products and collections) and read_content (for pages).

Connect

Open your project's settings, choose CMS, and pick Shopify in the CMS list.

FieldWhat to enter
Store domainOnly the store handle, for example acme for acme.myshopify.com
Admin API access tokenThe custom app's token (it starts with shpat_)
Content typesAny of products, collections, pages
Translatable fieldsAny of title, body_html, handle, product_type
Publish these localesThe target languages to write back

Select Connect, then Test connection. A successful test names the store.

What gets imported

transglot reads Shopify's translatable content for each resource in the store's primary locale. A field that is not translatable on a given resource is skipped; for example, product_type exists only on products.

Translating handle gives the resource a different URL handle in that language. Leave it out of Translatable fields if you want the same handle everywhere.

How translations are written back

Shopify keeps each secondary-locale translation as a separate record from the primary content, pinned to a fingerprint (digest) of the source value. At publish time transglot reads each resource's current digests and registers the reviewed values for the target locales against them. Your primary locale is never registered, so it cannot be overwritten.

Troubleshooting

  • ... the credentials were rejected. The token is wrong, or the app is missing one of the scopes above.
  • ... the shop or resource was not found, check the shop domain. Enter only the store handle in Store domain.
  • ... the shop is unavailable (frozen or locked). The store is paused or locked in Shopify.
  • ... the Shopify Admin API rejected the translation. Shopify refused a value, for example because the target language has not been added to the store.
  • ... the shop is rate-limited, retry. Wait and run the sync or publish again.

On this page