Supported languages
| Language | Code |
|---|---|
| English | en |
| Spanish | es |
| Italian | it |
| Portuguese | pt |
| French | fr |
| German | de |
| Greek | el |
How language detection works
Firma uses a 2-tier fallback system to select the right language for each embeddable.1. Local storage
On return visits, Firma checks the browser’s local storage for a cached language preference. This provides instant language selection without a network request.2. Browser detection (default)
On a user’s first visit, Firma automatically matches the language to their browser or system language setting. If the detected language isn’t one of the 7 supported languages, Firma defaults to English.URL-based language override for embedded signing
You can force a specific language by appending thelang query parameter to any Firma URL:
- Link directly into Firma in the correct locale for your users
- Pre-select the language in embedded iframes
- Test the signing experience in different languages
Supported values
Use the two-letter language codes from the table above:en, es, it, pt, fr, de, el.
Example: Embed signing in Spanish
Localization in embeddable components
Firma’s embeddable components fully support localization:- Embeddable signing — The signing interface renders in the detected or overridden language
- Embeddable template editor — Template creation and editing UI is fully localized
- Embeddable signing request editor — The signing request configuration interface supports all 7 languages
Non-persistent mode for iframes
When Firma is embedded in an iframe, language preferences operate in a non-persistent mode. This means the language is determined by:- The
langURL parameter (if provided) - The parent page’s context
lang query parameter to control the language explicitly in iframe contexts.
Example: Dynamic language selection
Best practices
Use the lang parameter in embedded signing— Don’t rely on browser detection in iframe contexts. Pass the language explicitly to ensure a consistent experience.- Match your application’s locale — When embedding Firma, pass the same locale your application is using so the signing experience feels seamless.
- Let users choose — For direct Firma links (e.g., in emails), omit the
langparameter and let Firma’s automatic detection handle it. Users who have set a preference will see their chosen language.
Related guides
- Embeddable Signing — Embed the signing experience in your app
- Embeddable Template Editor — Let users edit templates with JWT auth
- Embeddable Signing Request Editor — Configure signing requests in your UI
- White Labeling — Custom domains, embedded experiences, and branding