Multi-language translation
Summarize
Summary of Multi-language translation
ServiceNow CPQ enables multi-language translation for end-user interfaces, allowing configuration experiences to display in a user’s preferred language based on their browser locale. The base language for all environments is English, and translations must be provided as English-to-target language pairs. The multi-language feature supports left-to-right languages with multi-byte character sets such as Japanese and Korean, but does not currently support right-to-left languages like Arabic or Hebrew.
Show less
Key Features
- Scope: Multi-language support applies to the buyside end-user interfaces only; the administration platform remains English-only.
- Supported languages: Includes English, Finnish, French, German, Italian, Spanish, and others for static strings; additional languages can be enabled upon request through ServiceNow Support.
- String types:
- Static strings: Default application text such as button labels and error messages, pre-translated in several languages.
- Custom strings: Administrator-defined content like field labels, product names, layout headings, and messages, which require manual translation.
- Translation process:
- Request language enablement by logging a ServiceNow Support case describing required target languages.
- Conduct a proof-of-concept by translating selected picklist fields using CSV files uploaded via Matrix Loader.
- Translate all relevant custom strings exported from CPQ administration, including field options, picklist extensions, product pickers, rules, and layout elements.
- Build and upload translation files in CSV or XLIFF format.
- Testing: Use browser locale switching tools (e.g., Chrome Locale Switcher extension) to verify translations on the end-user configuration interface.
- Character encoding: UTF-8 encoding is required for translation files to correctly display diacritic marks and multi-byte characters.
- Downloading translations: Translated strings can be exported using a specific CPQ administration URL with parameters for file type and language codes.
Practical Application for ServiceNow Customers
By implementing multi-language translation in ServiceNow CPQ, customers can deliver localized product configuration experiences aligned with their users’ native languages, enhancing usability and adoption. Customers must plan their base language carefully, ensure all custom content is translated properly, and test translations thoroughly before deployment. The structured approach—requesting language enablement, exporting strings, creating translation files, and deploying—provides a repeatable process supporting consistent multi-language environments across development stacks.
Implement multi-language translation for end-user interfaces. Enable languages and compile translation files.
ServiceNow CPQ can be set up to display configuration experiences in a user's preferred language. This article describes how to implement translations in ServiceNow CPQ.
Foundation and scope
ServiceNow CPQ multi-language capability is available on end-user user interfaces (buyside). The administration platform displays English only.
ServiceNow CPQ supports all left-to-right languages, including those with multi-byte character sets (e.g., Japanese, Korean).
The base language for all ServiceNow CPQ environments is English. As a result, translations of custom strings must be furnished with the corresponding English key. Example: If the administrator enables French and Finnish on an environment, they will need to provide English-to-French and English-to-Finnish translations.
When multi-language is enabled in ServiceNow CPQ, the app will attempt to serve a configuration experience according to the end-user's browser locale setting. If the language defined in the browser locale matches an enabled language in ServiceNow CPQ, the application will attempt to serve the strings in the requested language. However, if a string is not defined for the requested language, the application will display the corresponding English equivalent.
Terms used in this article
Static strings: Text ServiceNow CPQ displays to the user that is defined by the application. Examples include default button labels, basic error messages, text in confirmation boxes, and hovertext for set controls. Static strings are currently provided in English [en], Finnish [fi], French [fr], German [de], Italian [it], and Spanish [es]. ServiceNow CPQ will translate static strings into additional languages as needed.
Custom strings: Field labels, field option labels, product name and description, layout tier headings, custom messages and similar strings defined by an administrator are "custom".
Base language: the foundational language in a ServiceNow CPQ environment. Choosing your base language is an important decision, as (1.) all configuration elements—including fields, field options, layout elements, and custom message text—must be defined in the base language; and (2.) all translations of custom strings key off of the base language. A ServiceNow CPQ environment can only have one base language. All environments in your dev stack need to have the same base language, to enable environment-to-environment migration.
Enabled languages: in addition to the base language, these are the languages you want to support for your end-users coming to ServiceNow CPQ.
Implementation
- Log a Support case that describes the languages you intend to translate configuration experiences into. Request that ServiceNow CPQ Support enable these languages on all relevant ServiceNow CPQ environments in your development stack. After the new languages are enabled, continue with step 2.
- To understand how multi-language translation works in ServiceNow CPQ, we recommend that you try a small-scale proof-of-concept before embarking on a wholesale translation effort.
- Select a picklist field displayed on the end-user layout. Example: In Blueprint1, we will translate Paint Color [paintColor]. paintColor has label "Paint Color" and options "Blue", "Yellow", "Green".
- For the purposes of this experiment, assume we enabled Spanish [es] in step #1. You can customize this experiment for one of the languages you enabled in step #1. In a CSV file, define Spanish [es] translations for the field
label and the picklist field options:
The graphic above is a sample translation upload file. You can find another example on the Matrix Loader page.
- Save the CSV file and upload via Matrix Loader.Note:If using a program like Microsoft Excel, you must export in UTF-8 format to support characters with diacritic marks, such as accent, cedilla, circumflex, diaeresis/umlaut, etc.
- Deploy the blueprint.
To test the buyside user interface, we recommend using the Chrome browser with the https://chromewebstore.google.com/detail/locale-switcher/kngfjpghaokedippaapkfihdlmmlafcc?hl=en-US extension installed. This extension allows you to quickly switch the browser locale to test localization. Set Locale Switcher to Spanish [es] and open the Blueprint1 configuration. The paintColor field label and contents should be displayed using the custom translated strings in #2.
The following graphic shows the English version of the picklist on the buyside UI:
The following graphic shows the Spanish version of the picklist on the buyside UI:
The following experiment demonstrates how various custom strings, including those defined in field options and layouts, are translated, uploaded, and deployed to accomplish an English-to-Spanish translation.
- Compile a list of custom strings that require translation.
- Export the following CSV files from ServiceNow CPQ administration:
- Field Options: every field option label requires translation. In the Field Option CSV file, these are the strings defined in the name column
- Picklist extensions: for each picklist extension that has Extended Information defined, export the Extension Data CSV file. A translation should be provided for every string in columns B and greater.
- Product Pickers: strings defined in Determination-type Bulk Actions should be translated into the target language.
- Rules:
- When action_type = message, action_value requires translation
- When action_type = determination and the action affects a text field, many use cases require translation of the string in action_value
- Layout: Translations are needed for:
- Tier headings
- Columnset headings
- Field labels
- Help content
- Product list column headings
- Build your translation file. The file should be one of the following formats:
- For each string identified in step 1, add an entry to your translation file.
- Upload your file in the Matrix Loader.
- Deploy the corresponding blueprints.
Downloading translated strings
To download the translated strings that are saved in a ServiceNow CPQ environment, open ServiceNow CPQ administration in a browser tab. In another browser tab, open the following URL:
https://{{baseUrl}}/a/translations/v1/translations?fileType={{fileType}}&codes={{codes}
csv or xml, and {codes} is a comma-delimited list of the translated strings to retrieve. Use 2-letter language codes such as. 'en' and 'fr'. For example,
&codes=en, fr,de