Author:
Fluent Commerce
Changed on:
4 June 2024
As a part of Internationalisation, the Fluent platform supports multiple languages. This support allows users of web apps such as OMS Webapp and Fluent Store to configure and view the modules and interfaces of the Fluent platform in their preferred language.
As of the Fluent v4.45 release, the Fluent platform provides pre-configured support for the following languages.
Fluent Order Management uses a default language of Australian English
`en-AU`
`en-AU`
`en-US`
`fr-FR`
`es-MX`
`it-IT`
The default language for a user account is inherited from the account level and is defined in the JSON payload of the
`i18n.languages`
1{
2 "switcherEnabled": true,
3 "accountDefaultLanguage": "en-AU",
4 "languages": [
5 {
6 "code": "en-AU",
7 "label": "English (AU)"
8 },
9 {
10 "code": "th-TH",
11 "label": "Thai (th)"
12 },
13 {
14 "code": "ms-MY",
15 "label": "Malay (MY)"
16 },
17 {
18 "code": "ja-JP",
19 "label": "Japanese (JP)"
20 },
21 {
22 "code": "en-US",
23 "label": "American English"
24 },
25 {
26 "code": "fr-FR",
27 "label": "French"
28 },
29 {
30 "code": "es-MX",
31 "label": "Mexican Spanish"
32 },
33 {
34 "code": "it-IT",
35 "label": "Italian"
36 }
37
38 ]
39}
Language: json
Name: i18n.language setting name: i18n.languages context: ACCOUNT contextID: 0 valueType: JSON JSON Value:
Description:
[Warning: empty required content area]The following beta languages help retailers get started quickly. These beta languages may have un-translated phrases or suboptimal translations:
Beta language | Sample code snippets that can be added to the setting "i18n.languages" payload. (the code is just a sample only and can be varied depending on the user's preference) |
Afrikaans | { |
Albanian | { |
Amharic | { |
Arabic | { |
Azerbaijani | { |
Bosnian | { |
Bulgarian | { |
Chinese (Simplified) | { |
Chinese (Traditional) | { |
Croatian | { |
Czech | { |
Danish | { |
Dutch | { |
Estonian | { |
Finnish | { |
French (Canadian) | { |
Georgian | { |
German | { |
Greek | { |
Hausa | { |
Hebrew | { |
Hindi | { |
Hungarian | { |
Indonesian | { |
Japanese | { |
Korean | { |
Latvian | { |
Malay | { |
Norwegian | { |
Persian | { |
Pashto | { |
Polish | { |
Portuguese | { |
Romanian | { |
Russian | { |
Serbian | { |
Slovak | { |
Slovenian | { |
Somali | { |
Spanish | { |
Swahili | { |
Swedish | { |
Thai | { |
Turkish | { |
Ukrainian | { |
Vietnamese | { |
Custom Language Bundles are created as JSON-type platform settings at the account level. These are the Language Bundles created when users create and configure additional languages.
When adding additional components to the platform (e.g., Mystique components or modules), users must define all keys (for labels, etc.) (see Customising Languages and Keys section below) for translation and then add them to a custom Language Bundle file for the specific language. Once added to the Language Bundle, keys will be defined automatically based on the naming convention.
Ensure you have access to the Settings module. For more information, contact the system administrator. To create a new custom Language Bundle follow these steps:
`LANGAUAGE_JA-JP`
1{
2 "translation": {
3 "fc.userAction.test.text1": "Text 1 test in Japanese",
4 "fc.userAction.test.text2": "Text 2 test in Japanese",
5 "fc.sf.ui.wave.pickAndPack.list.pick.confirm.items": "J: アイテム",
6 "fc.sf.ui.wave.pickAndPack.list.pick.confirm.of": "J: {{total}} の {{count}}",
7 "fc.sf.ui.wave.pickAndPack.list.pick.confirm.picked": "J: ピック済み",
8 "fc.sf.ui.wave.pickAndPack.list.pick.confirm.rejected": "J: 却下"
9 }
10}
Language: json
Name: Example of language: Name: LANAGUAGE_JA-JP context: ACCOUNT contextID: 0 valueType: JSON JSON Value:
Description:
[Warning: empty required content area]Click Submit to save.
Language preferences can be set when a user is created. A user admin can update language preferences through the Fluent GraphQL API.
1#graphQL Variables:
2{
3 "input": {
4 "id": 5003263,
5 "ref": "5000299_BOJ",
6 "timezone":"SYDNEY/AUSTRALIA",
7 "language": {
8 "value": "th-TH",
9 "label": "Thai (th)"
10 }
11 }
12}
13
14
15#QUERY:
16mutation updateUser ($input: UpdateUserInput) {
17 updateUser (input: $input) {
18 id
19 ref
20 username
21 title
22 firstName
23 lastName
24 primaryEmail
25 primaryPhone
26 type
27 status
28 department
29 country
30 timezone
31 promotionOptIn
32 createdOn
33 updatedOn
34 language{
35 label
36 value
37 }
38 }
39}
Language: graphqlschema
Name: Update User language
Description:
GraphQL to update User's Language Preference
When customising languages and keys, users can enter the labels and translations directly into the configuration file of their preferred language or create a language key and add the translation in one or more language setting files for translations.
1"component": "shared.components.material.DynamicPage",
2"menuLabel": "i18n:fc.om.orders.index.nav",
3"menuIcon": "library_books",
4"params": {
5 "graphql": {
6 "query": " query($ref: [String], $status: [String], $type:[String!]) { orders(ref: $ref, status:$status, type:$type){ edges{ node{ ...Listing } } } }"
7},
8 "title": "i18n:fc.om.orders.index.title",
9 "primaryButtons": [
10 {
11 "label": "i18n:fc.om.orders.index.action.newOrder",
12 "mutation": "createOrder"
13 }
14 ]
15 }
16
Language: json
Name: Example of calling internationalisation settings
Description:
[Warning: empty required content area]A copy of the default translation file can be downloaded here
When creating User Actions, users can enter the labels directly into the workflow configuration from their preferred language or create a language key and add the translation in one or more language setting files for translations.
The below example identifies the structure of a key based on the workflow, ruleset, and user action.
1"fc.om.order.OrderCancel.label": "CANCEL ORDER",
2"fc.om.article.ARTICLE_COLLECTED.label": "COLLECT",
3"fc.om.article.ARTICLE_ARRIVED.label": "MARK AS ARRIVED",
4"fc.om.order.OrderRevision.label": "Order Revision",
5"fc.om.order.OrderRevision.field.revisedItems": "Items",
6"fc.lc.location.WaveCreate.label": "Create Wave"
Language: json
Name: Example
Description:
[Warning: empty required content area]Mutation actions provide direct edits of entities by providing an interface to the API in the Console. When adding mutations, the platform will automatically generate keys based on the naming conventions. Users need to add a translation of the key to a custom language bundle to display the mutation action form fields in a language other than English. The naming conventions should be followed to create keys for mutations.
The following examples indicate several existing mutation keys.
1"fc.gql.fulfilment.ref.label": "ref",
2"fc.gql.fulfilment.attributes.label": "attributes",
3"fc.gql.fulfilment.attributes.name.label": "name",
4"fc.gql.fulfilment.attributes.type.label": "type",
5"fc.gql.order.fulfilmentChoice.currency.label": "Currency",
6"fc.gql.inventoryCatalogue.type.label": "type"
Language: json
Name: Example
Description:
[Warning: empty required content area]The priority order for displaying apps in a different language is as follows:
Once the language is selected, the fallback occurs with the priority order:
Copyright © 2024 Fluent Retail Pty Ltd (trading as Fluent Commerce). All rights reserved. No materials on this docs.fluentcommerce.com site may be used in any way and/or for any purpose without prior written authorisation from Fluent Commerce. Current customers and partners shall use these materials strictly in accordance with the terms and conditions of their written agreements with Fluent Commerce or its affiliates.