Translations
This endpoint allows sending translations for certain product fields to ChannelEngine. Translations do not overwrite the native fields, but are stored in the product and variant Extra Data, following a standardized naming convention.
The reference used to apply translations is always the SKU, which must be present and unique for both the main product (grandparent) and any variants (child).
Applying translations
Each translation request is automatically applied to both the grandparent and the connected child products. For simple products, i.e., without variants, you can provide either the child SKU or the grandparent SKU; the system will still apply the translation correctly to the product.
In both cases, the translation is applied consistently to the product.
Language handling
Languages are validated using two-letter ISO codes.
Codes such as it, en, fr, or de are supported regardless of uppercase or lowercase letters.
This mechanism ensures that translations are associated only with recognized standard languages, avoiding the use of custom or non-compliant codes.
Saving translations in Extra Data
All translations are stored in Extra Data following a standardized naming convention:
<field_name>|CE:<iso>
Where <field_name> represents the name of the translated field and <iso> the two-letter language code.
For example, the Italian translation of the title is stored as Title|CE:it, while a metafield called testMetafield translated into French is stored as testMetafield|CE:fr.
This approach allows ChannelEngine to handle multiple languages without interfering with the original product fields.
Translatable product fields
For the main product (grandparent), you can provide translations for the main information fields. These include:
- title: the product title;
- description: the main description;
- handle: the readable product identifier in URLs;
- notFoundHandle: alternative handle used for missing URLs;
- type: the product type;
- optionKeys: the keys of the product options (for example
color,size).
Translations of SEO fields such as metaTitle and metaDescription are also supported and stored in Extra Data without overwriting the native values.
Product metafields are fully translatable. Each metafield can have one or more translations, stored in Extra Data using the following key format:
<metafield_name>|CE:<iso>
The same logic applies to files, which follow the exact same naming convention as metafields.
Translatable variant fields
Each variant (child) of the product can have its own translations applied to specific fields. This allows proper handling of language differences even at the single variant level.
Translatable parts of a variant include:
- optionValues: the variant options, such as
colororsize. Each option is saved in Extra Data with the key followed by the language suffix, for examplecolor|CE:it. - base fields: some informational fields of the variant, such as title and description, can be translated in the same way as those of the main product.
- metafields: variant-specific metafields are fully translatable, following the same logic as the main product metafields.
- files: files associated with the variant can also have translated versions, stored in Extra Data with a key corresponding to the file name plus the language suffix.
Some fields (e.g., barcode, SKU, etc.) are not translatable by nature.
Example payload
In the following example, the main language is Italian, and translations are provided in English and French. Translations are applied to both the product and its variant.
{
"data": [
{
"sku": "TEST",
"title": {
"en": "Product title TEST",
"fr": "Titre du produit TEST"
},
"description": {
"en": "Product description TEST",
"fr": "Description du produit TEST"
},
"handle": {
"en": "product-handle-test",
"fr": "produit-handle-test"
},
"type": {
"en": "Product type TEST",
"fr": "Type de produit TEST"
},
"metaTitle": {
"en": "SEO Product Meta Title",
"fr": "Méta-titre du produit SEO"
},
"metaDescription": {
"en": "A detailed meta description for SEO.",
"fr": "Une méta description détaillée pour le référencement."
},
"files": {
"manual": {
"en": "https://www.orimi.com/pdf-test.pdf",
"fr": "https://www.orimi.com/pdf-test.pdf"
}
},
"metafields": {
"addition_features": {
"en": "Translated metafield",
"fr": "Métachamp traduit"
}
},
"optionKeys": {
"color": {
"en": "color",
"fr": "couleur"
}
},
"variants": [
{
"sku": "TEST-1",
"optionValues": {
"color": {
"en": "Pink",
"fr": "Rose"
}
},
"files": {
"variantManual": {
"en": "https://www.orimi.com/pdf-test.pdf",
"fr": "https://www.orimi.com/pdf-test.pdf"
}
},
"metafields": {
"variant_addition_features": {
"en": "Translated metafield",
"fr": "Métachamp traduit"
}
}
}
]
}
]
}
Translation flow configurations
In addition to the base data flow configurations, add the following settings under Settings Override:
| Campo | Valore | Note |
|---|---|---|
Base Url | https://adapt.flowlyze.com | url degli adapter |
Resource Path | /api/adp/channel-engine/egress/sync-translations-to-ce | path dell'adapter per le traduzioni |
Headers :: x-api-key | ********** | api key di verifica interazione endpoint |
Headers :: x-ce-url | https://CEURL.channelengine.net/api | url del Channel Engine con cui connettersi |
Headers :: x-ce-token | CODICEALFANUMERICO | token per l'integrazione |