Guides

Comment localiser vos flux de signature électronique pour les utilisateurs internationaux

Design abstrait avec des lignes courbes, un centre violet et le texte 'Localize Esign Flow' sur un fond sombre. Style numérique moderne.

Si vous intégrez l'expérience de signature de Firma.dev dans votre application, vous souhaitez probablement qu'elle corresponde à la langue de votre utilisateur. Ce guide explique comment Firma.dev gère la localisation et comment la contrôler dans votre intégration.

Comment Firma.dev détecte la langue

Firma.dev utilise un système de détection à 3 niveaux, vérifié dans cet ordre :

  1. Paramètre d'URL (?lang=xx) — Priorité la plus élevée. Si vous passez un code de langue dans l'URL, c'est ce que l'utilisateur verra.

  2. Stockage local — Lors des visites de retour, Firma.dev vérifie une préférence de langue mise en cache. Cela permet une sélection de langue instantanée sans requête réseau.

  3. Détection du navigateur — Se rabat sur les paramètres de langue du navigateur ou du système de l'utilisateur.

Si la langue détectée n'est pas l'une des 7 langues prises en charge, Firma.dev passe par défaut à l'anglais.

Langues prises en charge

Firma.dev prend en charge ces langues par défaut :

Langue

Code

Anglais

fr

Espagnol

es

Portugais

pt

Français

fr

Italien

it

Allemand

de

Grec

el

Tous les éléments de l'interface utilisateur, boutons, étiquettes, notifications, emails et messages d'erreur sont entièrement traduits dans chaque langue.

Contrôler la langue dans la signature intégrée

Lorsque vous intégrez le flux de signature dans un iframe, la détection du navigateur ne fonctionne pas de manière fiable. L'iframe hérite du contexte de la page parente, pas des paramètres du navigateur de l'utilisateur. Vous devez passer la langue explicitement.

Ajoutez le paramètre ?lang= à l'URL de signature :

<iframe
  src="https://app.firma.dev/signing/{signing_request_user_id}?lang=es"
  style="width:100%;height:900px;border:0;"
  allow="camera;microphone;clipboard-write"
  title="Firmar Documento"
></iframe>
<iframe
  src="https://app.firma.dev/signing/{signing_request_user_id}?lang=es"
  style="width:100%;height:900px;border:0;"
  allow="camera;microphone;clipboard-write"
  title="Firmar Documento"
></iframe>
<iframe
  src="https://app.firma.dev/signing/{signing_request_user_id}?lang=es"
  style="width:100%;height:900px;border:0;"
  allow="camera;microphone;clipboard-write"
  title="Firmar Documento"
></iframe>

Source: Guide de localisation

Cela force l'interface de signature à s'afficher en espagnol, indépendamment des paramètres du navigateur de l'utilisateur.

Récupération des URL de signature et rendu de l'iframe

Voici comment obtenir l'URL de signature de l'API et la rendre dynamiquement :

// fetch signing request
const r = await fetch('/internal/signing-request/' + signingRequestId)
const json = await r.json()

// get recipient signing URL
const recipient = json.recipients[0]
const signingUrl = recipient.signing_url || `https://app.firma.dev/signing/${recipient.id}`

// render iframe
const iframe = document.createElement('iframe')
iframe.src = signingUrl
iframe.style.width = '100%'
iframe.style.height = '900px'
iframe.frameBorder = '0'
iframe.allow = 'camera;microphone;clipboard-write'
document.getElementById('signing-root').appendChild(iframe)
// fetch signing request
const r = await fetch('/internal/signing-request/' + signingRequestId)
const json = await r.json()

// get recipient signing URL
const recipient = json.recipients[0]
const signingUrl = recipient.signing_url || `https://app.firma.dev/signing/${recipient.id}`

// render iframe
const iframe = document.createElement('iframe')
iframe.src = signingUrl
iframe.style.width = '100%'
iframe.style.height = '900px'
iframe.frameBorder = '0'
iframe.allow = 'camera;microphone;clipboard-write'
document.getElementById('signing-root').appendChild(iframe)
// fetch signing request
const r = await fetch('/internal/signing-request/' + signingRequestId)
const json = await r.json()

// get recipient signing URL
const recipient = json.recipients[0]
const signingUrl = recipient.signing_url || `https://app.firma.dev/signing/${recipient.id}`

// render iframe
const iframe = document.createElement('iframe')
iframe.src = signingUrl
iframe.style.width = '100%'
iframe.style.height = '900px'
iframe.frameBorder = '0'
iframe.allow = 'camera;microphone;clipboard-write'
document.getElementById('signing-root').appendChild(iframe)

Source: Guide d'envoi d'une demande de signature

Pour correspondre à la langue de votre application, ajoutez le paramètre de langue lors de la définition de la source de l'iframe :

const userLocale = getCurrentUserLocale() // returns 'es', 'de', 'fr', etc.
iframe.src = `${signingUrl}?lang=${userLocale}`
const userLocale = getCurrentUserLocale() // returns 'es', 'de', 'fr', etc.
iframe.src = `${signingUrl}?lang=${userLocale}`
const userLocale = getCurrentUserLocale() // returns 'es', 'de', 'fr', etc.
iframe.src = `${signingUrl}?lang=${userLocale}`

Cela maintient l'expérience de signature cohérente avec le reste de votre application.

Meilleures pratiques

Ces directives proviennent directement de la documentation de Firma.dev :

  • Utilisez le paramètre lang dans la signature intégrée — Ne vous fiez pas à la détection du navigateur dans les contextes iframe. Passez la langue explicitement pour assurer une expérience cohérente.

  • Correspondre à la langue de votre application — Lorsque vous intégrez Firma.dev, passez le même paramètre de langue que celui utilisé par votre application afin que l'expérience de signature soit fluide.

  • Laissez les utilisateurs choisir — Pour les liens directs Firma.dev (par exemple, dans les emails), omettez le paramètre lang et laissez la détection automatique de Firma.dev le gérer. Les utilisateurs qui ont défini une préférence verront leur langue choisie.

Source: Guide de localisation

Localisation dans d'autres composants intégrables

Le paramètre ?lang= fonctionne de la même manière pour les autres composants intégrables de Firma.dev :

  • Éditeur de modèles intégrables — Pour créer et éditer des modèles de documents

  • Éditeur de demandes de signature intégrables — Pour configurer les destinataires et les options d'envoi

Les deux utilisent l'authentification JWT et prennent en charge les 7 langues. Voir le Guide de l'éditeur de demandes de signature intégrables pour les détails de mise en œuvre.

Une note sur l'infrastructure

Firma.dev est hébergé dans l'UE (région AWS Paris), ce qui se marie bien avec le support multilingue si vous servez des marchés européens. La plateforme prend en charge le RGPD et eIDAS (niveaux SES et AdES) pour les besoins de conformité régionale.

Prochaines étapes

Pour la référence technique complète, consultez le Guide de localisation dans les documents. Il couvre des cas limites tels que les équipes multilingues et le comportement de persistance des langues.

Prêt à construire ? Obtenir la clé API et commencez à intégrer des signatures électroniques localisées. Aucune carte de crédit requise.

  1. Titre

Image de fond

Prêt à ajouter des signatures électroniques à votre application ?

Commencez gratuitement. Aucune carte de crédit requise. Payez seulement 0,029 € par enveloppe lorsque vous êtes prêt à passer en direct.

Image de fond

Prêt à ajouter des signatures électroniques à votre application ?

Commencez gratuitement. Aucune carte de crédit requise. Payez seulement 0,029 € par enveloppe lorsque vous êtes prêt à passer en direct.

Image de fond

Prêt à ajouter des signatures électroniques à votre application ?

Commencez gratuitement. Aucune carte de crédit requise. Payez seulement 0,029 € par enveloppe lorsque vous êtes prêt à passer en direct.