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

# 54 langues prises en charge : KYC multilingue

> Didit prend en charge 54 langues pour l'interface de vérification et les e-mails, avec détection automatique du navigateur.

Cette page est la **source de référence en temps réel** pour les codes de langue acceptés par l'API Didit. Elle est citée dans les spécifications OpenAPI, à la fois pour le champ `language` au niveau de la session et pour le champ `contact_details.email_lang` de [Créer une session](https://docs.didit.me/fr/sessions-api/create-session.md).

## Où ces codes s'appliquent

Le même ensemble de codes est accepté partout où une langue peut être configurée :

| Champ | Où | Ce qu'il contrôle |
| - | - | - |
| `language` | Corps de `POST /v3/session/` | Langue de l'**interface de vérification** affichée à l'utilisateur final. |
| `contact_details.email_lang` | Corps de `POST /v3/session/` | Langue des **notifications par e-mail** (invitation, rappels, mises à jour de statut). |
| `email_language` | Corps de `PATCH /v3/session/{id}/update-status/` | Langue de l'e-mail de changement de statut lorsque `send_email=true`. |

Si les paramètres régionaux du navigateur de l'utilisateur sont pris en charge, l'interface de vérification les détecte automatiquement ; sinon, elle utilise **l'anglais** (`en`) par défaut. Si vous ne transmettez pas `email_lang`, les e-mails utilisent `en` par défaut. Toutes les valeurs sont sensibles à la casse : utilisez les codes exacts du tableau ci-dessous.

## Toutes les langues prises en charge

L'ensemble ci-dessous reprend les clés de `EMAIL_TRANSLATIONS` du service. L'interface de vérification et la couche de localisation des e-mails lisent le même dictionnaire, donc tout code de ce tableau fonctionne aussi bien pour `language` que pour `email_lang`.

| # | Langue | Nom natif | Code | Direction |
| - | - | - | - | - |
| 1 | Albanais | Shqip | `sq` | LTR |
| 2 | Arabe | العربية | `ar` | **RTL** |
| 3 | Arménien | Հայերեն | `hy` | LTR |
| 4 | Bengali | বাংলা | `bn` | LTR |
| 5 | Bosniaque | Bosanski | `bs` | LTR |
| 6 | Bulgare | Български | `bg` | LTR |
| 7 | Catalan | Català | `ca` | LTR |
| 8 | Chinois (générique) | 中文 | `zh` | LTR |
| 9 | Chinois (simplifié) | 简体中文 | `zh-CN` | LTR |
| 10 | Chinois (traditionnel) | 繁體中文 | `zh-TW` | LTR |
| 11 | Croate | Hrvatski | `hr` | LTR |
| 12 | Tchèque | Čeština | `cs` | LTR |
| 13 | Danois | Dansk | `da` | LTR |
| 14 | Néerlandais | Nederlands | `nl` | LTR |
| 15 | Anglais | English | `en` | LTR |
| 16 | Estonien | Eesti | `et` | LTR |
| 17 | Finnois | Suomi | `fi` | LTR |
| 18 | Français | Français | `fr` | LTR |
| 19 | Géorgien | ქართული | `ka` | LTR |
| 20 | Allemand | Deutsch | `de` | LTR |
| 21 | Grec | Ελληνικά | `el` | LTR |
| 22 | Hébreu | עברית | `he` | **RTL** |
| 23 | Hindi | हिन्दी | `hi` | LTR |
| 24 | Hongrois | Magyar | `hu` | LTR |
| 25 | Indonésien | Bahasa Indonesia | `id` | LTR |
| 26 | Italien | Italiano | `it` | LTR |
| 27 | Japonais | 日本語 | `ja` | LTR |
| 28 | Kazakh | Қазақ тілі | `kk` | LTR |
| 29 | Coréen | 한국어 | `ko` | LTR |
| 30 | Kirghiz | Кыргызча | `ky` | LTR |
| 31 | Letton | Latviešu | `lv` | LTR |
| 32 | Lituanien | Lietuvių | `lt` | LTR |
| 33 | Macédonien | Македонски | `mk` | LTR |
| 34 | Malais | Bahasa Melayu | `ms` | LTR |
| 35 | Mongol | Монгол | `mn` | LTR |
| 36 | Monténégrin | Crnogorski | `cnr` | LTR |
| 37 | Norvégien | Norsk | `no` | LTR |
| 38 | Persan (farsi) | فارسی | `fa` | **RTL** |
| 39 | Polonais | Polski | `pl` | LTR |
| 40 | Portugais | Português | `pt` | LTR |
| 41 | Portugais (Brésil) | Português (Brasil) | `pt-BR` | LTR |
| 42 | Roumain | Română | `ro` | LTR |
| 43 | Russe | Русский | `ru` | LTR |
| 44 | Serbe | Српски / Srpski | `sr` | LTR |
| 45 | Slovaque | Slovenčina | `sk` | LTR |
| 46 | Slovène | Slovenščina | `sl` | LTR |
| 47 | Somali | Soomaali | `so` | LTR |
| 48 | Espagnol | Español | `es` | LTR |
| 49 | Suédois | Svenska | `sv` | LTR |
| 50 | Thaï | ไทย | `th` | LTR |
| 51 | Turc | Türkçe | `tr` | LTR |
| 52 | Ukrainien | Українська | `uk` | LTR |
| 53 | Ouzbek | Oʻzbekcha | `uz` | LTR |
| 54 | Vietnamien | Tiếng Việt | `vi` | LTR |

Trois langues s'affichent de droite à gauche, dans l'interface de vérification comme dans les e-mails : l'**arabe** (`ar`), l'**hébreu** (`he`) et le **persan / farsi** (`fa`).

> [!TIP]
>
> Les validateurs qui acceptent ces codes sont `BaseSessionSerializer.validate_language` et `ContactDetailsSerializer.validate_email_lang`. Pour toute valeur absente du tableau ci-dessus, ils renvoient une erreur `400` avec le message `"Invalid language. Supported languages are: ..."` (ou `"Invalid email language..."`).

## Choisir une langue pour une session

L'interface de vérification **détecte automatiquement** la langue du navigateur de l'utilisateur. Lorsque cette langue figure parmi les codes ci-dessus, l'interface et les e-mails sont servis dans cette langue. Sinon, l'interface utilise **l'anglais** par défaut.

Vous pouvez aussi définir la langue explicitement lors de la création d'une session :

```json theme={null}
{
  "workflow_id": "your-workflow-id",
  "language": "es",
  "contact_details": {
    "email": "user@example.com",
    "send_notification_emails": true,
    "email_lang": "es"
  }
}
```

Si vous ne définissez que `language`, les e-mails restent en anglais, sauf si vous transmettez également `email_lang`. Inversement, définir `email_lang` ne modifie pas la langue de l'interface dans le navigateur : les deux champs sont indépendants.

## Variantes par pays

Trois codes sont des **variantes régionales** à privilégier lorsque vous connaissez votre public :

* `pt-BR` : portugais brésilien (à utiliser à la place de `pt` générique pour les utilisateurs brésiliens).
* `zh-CN` : chinois simplifié (Chine continentale, Singapour).
* `zh-TW` : chinois traditionnel (Taïwan, Hong Kong, Macao).

Les codes génériques `pt` et `zh` sont également acceptés. La variante choisie n'affecte que le vocabulaire et les caractères, et non la logique de vérification sous-jacente.

## Demander une nouvelle langue

Si vous avez besoin d'une langue absente de cette liste, contactez notre équipe support. Nous pouvons généralement ajouter une nouvelle langue à `EMAIL_TRANSLATIONS` et à l'interface de vérification **dans les 24 heures** suivant votre demande. Une fois ajoutée, cette page est mise à jour et le nouveau code est immédiatement accepté par l'API.

Contactez-nous à [hello@didit.me](mailto:hello@didit.me) ou via votre canal de support habituel pour demander la prise en charge d'une langue supplémentaire.

## Références associées

> [card] [API de création de session](https://docs.didit.me/fr/sessions-api/create-session.md)
>
> Indique où `language` et `email_lang` sont transmis au lancement d'une vérification.

> [card] [Mise à jour du statut de session](https://docs.didit.me/fr/sessions-api/update-status.md)
>
> Définit `email_language` pour l'e-mail de notification envoyé lors du changement de statut.

> [card] [Webhooks](https://docs.didit.me/fr/integration/webhooks.md)
>
> Recevez les résultats de vérification :  les payloads contiennent la langue choisie dans `language`.

> [card] [Modèles de données](https://docs.didit.me/fr/reference/data-models.md)
>
> Schéma canonique des sessions, des coordonnées et des statuts.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.