Translations for Product Updates

Automate translations when updating a product.

Automate the translation process for product updates by modifying the New Product Introduction value stream to trigger on product updates instead of product creation. This template helps you ensure that products are only translated once, preventing duplicate translation processes and improving efficiency.

This is a technical documentation that requires working knowledge of the Orchestration Engine and Make. The setup process involves configuring mixins, modifying value stream triggers, and updating Make scenarios. For more information, see the Orchestration Engine documentation.

Key features

Feature / Component
Description

Conditional processing

Ensures the translation process only runs for untranslated products using mixin-based tracking.

Update-based trigger

Responds to product update events instead of creation events, providing more flexibility.

Translation tracking

Uses custom mixins to track which products have been processed, preventing duplicate translations.

Efficient automation

Automatically skips already-translated products, reducing unnecessary processing.

This template modification of the New Product Introduction value stream includes the following configuration:

  1. Trigger on product.updated events instead of product.created events

  2. Add a condition to check if a product has already been translated

  3. Mark products as translated after the translation process completes

The process uses a custom mixin (TranslationValueStream) to track whether a product has been processed, ensuring the translation workflow only runs for products that need translation.

Prerequisites

Before setting up this process, ensure you have:

  • A new New product introduction value stream

  • Access to the Mixin Schema MD Module

  • Access to the scenario module "Update product with translation"

Value stream configuration

Modify the process trigger

Change the process trigger from Product Created to Product Updated. You can do the change directly in VSM, or later in Management Dashboard.

  • In VSM, change the trigger by editing it's configuration and choosing product updated from the events list. Save your changes.

  • In MD, go to Orchestration -> Value Streams and select your process. Change the product.created to product.updated event for the trigger.

Create the custom mixin schema

The mixin is used to track whether a product has already gone through the translation process.

1

Go to the Management Dasboard -> Settings -> Mixin Schemas.

2

Create a new mixin

Choose Add New Mixin Schema and create a new mixin with the following configuration:

  • Entity - PRODUCT

  • Name - TranslationValueStream

3

Define the mixin fields

Add a single boolean field to the new mixin schema:

  • Type - boolean

  • Name - isTranslated

Add the pre-execution condition

To prevent the process from running on products that are already translated, add a condition to the value stream that checks for the existence and value of the isTranslated flag within the TranslationValueStream mixin.

The condition ensures the value stream only starts if:

  • The TranslationValueStream.isTranslated field is missing (i.e., it's a new product or one never processed), OR

  • The isTranslated field is present but set to false.

Condition to add:

This condition prevents the value stream from running on products that have already been translated, improving efficiency and preventing duplicate translations.

Modify the scenario to mark products as translated

After the translation process is complete, the product must be marked as translated by adding the mixin.

1

Open the scenario in Make

Go to the scenario named Update product with translation. You can open the scenario directly from the value stream's process step. It's the last one in the flow.

2

Add a PATCH call

After the step that performs the actual translation (or as a final step in the scenario), add a new action. This action must be a PATCH API call to the Product endpoint, setting the TranslationValueStream mixin with isTranslated set to true.

PATCH Call Details:

  • Method - PATCH

  • Endpoint - /products/{productId} (using context ID)

  • Body - See the payload structure below

The scenario already includes one Make an API Call module, do not modify it.

It should be left as it is - clone the module and paste the clone at the end of the process.

Modify the module's body:

3

Save the scenario

Make sure to save your configuration changes in the Make scenario by clicking the floppy disc icon at the bottom.

Verification and testing

After setting up the process, verify it works correctly with the following test cases:

Test Case
Expected Outcome
Condition Check

New Product Creation

Value stream runs (triggered by Product Updated following creation); translation module executes; mixin is added.

isTranslated is missing → TRUE

Update Untranslated Product

Value stream runs; translation module executes; mixin is added/updated.

isTranslated is false → TRUE

Update Translated Product

Value stream does not run (stopped by pre-execution condition).

isTranslated is true → FALSE

Last updated

Was this helpful?