The Web App shows its own interface (buttons, labels, sign-in screens, status messages and errors) in each employee's language. This page explains what's translated for you, how each employee's language is decided, which languages are available, and what you still need to set up yourself.

📘

Interface language and answer language are separate

This page covers the Web App's interface. The language the assistant answers in is decided separately, from the conversation itself. See How Leena AI Chooses the Response Language.

What's translated automatically

Everything the Web App says that isn't part of the conversation:

  • The side panel, top bar, composer and footer labels
  • The login and verification-code screens
  • The notification panel
  • Error, permission and connection messages
  • The Settings and profile menus, and feedback prompts
  • Voice call statuses and controls
  • Form validation messages

Answers, knowledge article content and ticket data aren't interface text. Neither is anything you write yourself, such as side panel titles. See What isn't translated.

How each employee's language is decided

The language comes from one employee field: user.language. It's filled in like any other profile field, such as user.department or user.location, usually by Employee sync from your HR system.

Please note: if user.language is empty, the employee sees English. There's no language picker in the Web App, so employees can't change it themselves.

Accepted values

The field is forgiving. Codes and language names both work, and so does a name written in its own script.

Value in user.languageShown in
frFrench
French or frenchFrench
FrançaisFrench
हिन्दीHindi
pt-BRPortuguese
zh-Hant-TWChinese (Traditional)
  • A regional code falls back to its base language when there's no regional version, so pt-BR uses Portuguese and en-GB uses English.
  • Capital letters and underscores don't matter: ZH_HANT works.
  • The older codes zh and tl still work. They map to zh-Hans (Chinese, Simplified) and fil (Filipino).

Please note: a value that matches no language code or name can't be resolved, and the employee sees English. If a whole group of employees unexpectedly sees English, check the value being synced into user.language first.

Available languages

The Web App's interface is available in 100 languages, in two groups:

GroupCountWhat it means
Supported50Fully tested in every release and available to every assistant.
Community50Machine translated and only spot-checked. Off unless enabled for your assistant: contact your Leena AI team if you need one.

All translations are machine generated using a shared glossary, so product terms stay consistent. You can correct any string yourself. See Change the wording.

Supported languages

↔ marks languages shown right to left.

CodeLanguageCodeLanguageCodeLanguage
arArabic ↔heHebrew ↔ptPortuguese
bnBanglahiHindipaPunjabi
bgBulgarianhuHungarianroRomanian
zh-HansChinese (Simplified)idIndonesianruRussian
zh-HantChinese (Traditional)gaIrishsiSinhala
hrCroatianitItalianskSlovak
csCzechjaJapaneseslSlovenian
daDanishknKannadaesSpanish
nlDutchkoKoreansvSwedish
enEnglishlvLatviantaTamil
etEstonianltLithuanianteTelugu
filFilipinomsMalaythThai
fiFinnishmlMalayalamtrTurkish
frFrenchmrMarathiukUkrainian
deGermanneNepaliurUrdu ↔
elGreekfaPersian ↔viVietnamese
guGujaratiplPolish
Community languages (50)
CodeLanguageCodeLanguageCodeLanguage
afAfrikaanskaGeorgiannnNorwegian Nynorsk
akAkanhaHausaorOdia
sqAlbanianhi-LatnHindi (Latin)psPashto ↔
amAmharicisIcelandicquQuechua
hyArmenianigIgbogdScottish Gaelic
asAssamesejvJavanesesrSerbian
azAzerbaijanikkKazakhsr-LatnSerbian (Latin)
euBasquekk-ArabKazakh (Arabic) ↔sdSindhi ↔
beBelarusiankmKhmersoSomali
bsBosniankokKonkaniswSwahili
myBurmesekyKyrgyztkTurkmen
yueCantoneseloLaohsbUpper Sorbian
yue-HansCantonese (Simplified)dsbLower SorbianuzUzbek
caCatalanmkMacedoniancyWelsh
chrCherokeemnMongolianyoYoruba
cvChuvashpcmNigerian PidginzuZulu
glGaliciannoNorwegian

Right-to-left languages

Arabic, Hebrew, Persian, Urdu, Pashto, Sindhi and Kazakh (Arabic script) are shown right to left. The whole layout flips automatically, including the side panel and the composer. You don't need to set anything.

Change the wording

You can replace any interface text with your own wording, per language, for example to use your organisation's name for the helpdesk, or to adjust the sign-in instructions.

  1. In the Admin Console, go to Leena channels → Language.

  2. Under Translation language, choose the language to edit. Only the languages set up for this assistant are listed.

  3. Find the text under Edit translations, either by searching or by opening a group:

    GroupWhat's in it
    Sign In JourneyLogin and verification-code screens
    Virtual Assistant General ActionsSide panel, composer, chats and general labels
    Virtual Assistant Settings and PermissionsSettings and permission prompts
    Virtual Assistant Feedback JourneyFeedback and rating prompts
    NotificationsThe notification panel
    Error MessagesErrors shown to employees
    Validation MessageForm field checks
  4. Click the pencil icon next to a string, enter your wording and click Save changes. The reset icon restores the original.

The Language page with the translation language set to English and the Validation Message group of strings open

Admin Console → Leena channels → Language

For each string, the Web App uses your wording if you've changed it, then its own translation for that language, and finally English. Your changes apply to this assistant only, so different assistants can use different wording in the same language. For more on this page, see Language.

Keep placeholders exactly as they are

Some strings contain placeholders in braces, such as Hi {name}! or {field_name}, which are filled in when the text is shown. Keep every placeholder exactly as it appears in the original. Translating {name} into {nom} breaks it, and the Web App falls back to English for that string.

  • Correct: Bonjour {name} !
  • Incorrect: Bonjour {nom} !

What isn't translated

Anything you write is shown exactly as typed, to every employee who can see it, whatever their language:

  • Side panel folders, webviews and their titles
  • External link titles
  • Quick reply titles
  • Onboarding slide titles in the Product Tour
  • Links that point to a page in a particular language

This is by design: these are your words, and translating them automatically would often get them wrong. It does mean a French-speaking employee sees a French interface around an English side panel, unless you set the side panel up for French yourself.

Recommended: configuring the side menu for multiple languages

Create one copy of each side panel item per language, and show each copy only to employees with that language, using an audience built on user.language. Each employee then sees exactly one copy, in their own language.

Step 1: Create an audience for each language

Create one audience per language you support, filtered on user.language.

Audience nameCondition
Language – Frenchuser.language is French
Language – Spanishuser.language is Spanish
Language – Arabicuser.language is Arabic

Match the values your HR system actually sends. This is the step that most often goes wrong. The Web App understands fr, French and Français alike when it picks the interface language, but audiences don't: they match the stored value exactly. If your HR system sends a mix, include every variant in the condition, or standardise the values in the sync before building audiences on them.

Step 2: Create one copy of each item per language

In Admin Console → Leena channels → Settings → 2. Sidebar actions, create one copy of each item per language, with the title in that language and the matching audience.

TitleAudience
Raise a TicketLanguage – English
Créer un ticketLanguage – French
Crear un ticketLanguage – Spanish

Keep the icon and link the same across copies, unless the page itself is available in several languages. If it accepts a language setting, set it in each copy.

Step 3: Make English the catch-all

Employees with an empty user.language, or a language you haven't covered, still need to see something. Show the English copy to everyone outside your other language audiences, so nobody ends up with a missing item.

Step 4: Keep the copies next to each other

Employees only see the items they're eligible for, and the rest are hidden. Placing all copies of the same item together keeps the order the same for everyone, whatever their language.

Things to watch

  • Five items per folder. Each folder holds up to five items, and only five rows fit at the top level before items move into More. Copies for each language add up quickly, so trim the side panel before translating it.
  • Title length. Translations are often longer than English. Check that your longest titles still read well in the panel.
  • Upkeep. Every new language means a new copy of every item. Keep the side panel to what earns its place.
  • Quick replies work the same way. They take an audience too, so use the same pattern.
🕘

On the classic design

Translation works the same way. If you use an older version of the Web App, you may see persistentMenu entries on the Language page. They apply only to that older interface and have no effect on the side panel.

Troubleshooting

An employee sees English even though their language is set.
Check the exact value in user.language on their profile. Values that aren't a recognisable code or language name fall back to English. If it's a Community language, check with your Leena AI team that it's enabled for your assistant.

My changed wording isn't showing.
Changes are matched to the exact original text: Thinking and thinking are different strings. Check the capitalisation and punctuation match.

A string shows in English with a visible {placeholder}.
A placeholder was changed in your wording. Edit the string again and keep the placeholder exactly as in the original.

The side panel is in English for a French-speaking employee.
Side panel items aren't translated automatically. Set up a copy per language, as described above.

The voice call isn't in the employee's language.
Voice language depends on your voice setup. See Voice Call.


Did this page help you?