---
title: "Batch translation"
slug: "batch-translation"
status: "update"
updated: 2025-09-24T10:03:58Z
published: 2025-09-24T10:03:58Z
canonical: "support.whatfix.com/batch-translation"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://support.whatfix.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Batch translation

Batch translation is a process that uploads content for translation using a method called polling, while checking for status periodically. It uses a cloud storage (for example, Azure bucket) to retrieve translated content. The address or location of this translated content in the bucket is then provided to the custom translation tool to send the translated files back to Whatfix.

> [!WARNING]
> Note:
> 
> The integration setup for the following steps uses **Microsoft Azure** as an example. Based on your requirements and the tool of your choice, setup the integration accordingly.

Expand the following accordions to integrate a translation tool using the batch translation method:

****Step 1: Add Translation Tool for batch translation****

Use the following steps to add a translation tool for batch translation:

1. On the Whatfix Guidance dashboard, click **Settings**.  

![ia_settings_without_auto_testing](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/ia_settings_without_auto_testing.png)

1. Click **Translation tools**.

![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/db_click_settings_translation_tools(3).jpg)
2. In the **Translation tools** page, click the **Add** icon. ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/db_translation_tools_add_icon.jpg)
3. In the **Integrating with Custom tool** dialog box, enter the name of the tool, and then select **Batch** as the translation method. ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/translation_tools_batch_name_method.jpg)
4. Click **Continue**. You are redirected to the **Setup** section.

![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/translation_tools_continue.jpg)

****Step 2: Map Languages for batch translation****

Translation tools use codes to distinguish languages and translate content. In the **Map Languages** section, configure language codes to set the Primary language and the Language code. You must map the language code used in the translation tool with the language supported by Whatfix. For example, Fr: fr (French) and De: de (German).

After you have added a translation tool, use the following steps to add languages and map them between Whatfix and the custom translation tool:

1. In the **Map Languages** section, enter the **Language code** for the Whatfix primary language as recognized by your custom translation tool. ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/batch_map_languages_primary.jpg)
2. To map other languages, click **+ Add language code**.

![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/batch_map_languages_add.jpg)
3. Select the input language and enter the **Language code**. ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/batch_map_languages_add_details.jpg)

****Step 3: Upload translations to Custom tool****

Whatfix content must be converted into a format so that the translation tool can receive and interpret the data. This includes to and from language, translation attributes, and other details to uniquely identify the content and the fields in the content that require translation.

Use the following steps to upload Whatfix data to a format accepted by the custom tool:

1. In the **Convert Whatfix data to format accepted by the Custom tool** section, enter a **Description** (Optional). By default, the **Configuration type** is set to **Javascript**. ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/Convert_wfx_to_translation_tool_batch.jpg)
2. In the **Script** field, enter the Javascript code to convert Whatfix data into a format accepted by the custom translation tool. ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/db_translation_tools_2_script.jpg)

Here’s an example Javascript code for Microsoft Azure:

```javascript
function convertToMicrosoftTranslationInput(original_data) {
        var inputForMs = [];
        for (var i = 0; i < original_data.length; i++) {
            var item = original_data[i];
            inputForMs.push({
                "Text": item.value
            });
        }
        return inputForMs;
    }
var microsoftTranslationInput = convertToMicrosoftTranslationInput(attributes.translationStrings);
var targetFileName = attributes.entId+":"+Date.now();
attributes.global_data = targetFileName;
output.data = microsoftTranslationInput;
```

> [!WARNING]
> Note:
> 
> The JS Script code editor only supports versions earlier than ES6. For more information about specifying variables and parameters, see [Translation Tool Guidelines](/studio/docs/translation-tool-guidelines).

1. In the **Configure Custom tool** section, enter the logic to process the translation request for the custom translation tool. This section acts as an interface where you can write the necessary logic for data preparation. ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/batch_configure_tool.jpg)

> [!NOTE]
> Note:
> 
> The following configuration examples display the details to configure the custom tool when you upload the Whatfix content for translation. Based on the example shown, enter the following details for your custom translation tool accordingly. **Configuration 1:**
> 
> ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/upload_configuration_1_eg.jpg) **Configuration 2:** ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/upload_configuration_2_eg.jpg)

****Step 4: Download translations from Custom tool****

After you have uploaded Whatfix content for translation to the translation tool, it must be downloaded from the tool, and then converted into a format so that Whatfix can receive and interpret the data. Whatfix continuously polls the custom tool for status updates and retrieves the translated data once processing is complete.

Use the following steps to download the Custom tool data to a format accepted by Whatfix:

1. In the **Configure Custom tool** section, enter the logic to download the translation request from the custom translation tool. ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/batch_configure_tool.jpg)

> [!NOTE]
> Note:
> 
> The following images display an example setup to configure the custom tool when you download the Whatfix content after translation. Based on the example shown, enter the following details for your custom translation tool accordingly: **Configuration 1:** ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/download_configuration_2_eg.jpg)
> 
> **Configuration 2:** ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/download_configuration_1_eg.jpg) **Configuration 3:** ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/download_configuration_3_eg.jpg)
2. In the **Convert format from custom tool to Whatfix data** section, enter a **Description** (Optional) and specify the details to convert data from translation tool to a format accepted by Whatfix. ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/batch_convert_translation_tool_to_wfx.jpg)

> [!NOTE]
> Note:
> 
> The following is an example code to convert Custom tool data to a format accepted by Whatfix:
> 
> ```javascript
> function mergeTranslatedValues(original_data, translated_data) {
>         var result = [];
>         for (var i = 0; i < original_data.length; i++) {
>             var originalItem = original_data[i];
>             var translatedItem = translated_data[i];
>             result.push({
>                 key: originalItem.key,
>                 value: translatedItem.translations[0].text
>             });
>         }
>         return result;
>     }
> var mergedData = mergeTranslatedValues(attributes.translationStrings, input);
> output.data = mergedData;
> ```
3. Once you have filled out all the necessary details on the **Translation Tools** page, click **Save**. ![](https://cdn.document360.io/a268766e-d74d-4619-9613-e2472f809ffb/Images/Documentation/db_translation_tools_save.jpg)

To complete the integration process, [activate the custom integration tool](/studio/docs/manage-the-custom-translation-tool) in the **Translation tools** page.
