General
The form includes built-in translations for all supported languages. You can control which language is displayed, whether users can change it, and customize individual text labels to match your product.
Language Selector
By default, the form displays a language selector that allows users to switch the interface language. You can choose to show or hide this selector.
Locked Language
You can lock the form to a specific language to prevent users from switching languages. When a language is locked, the language selector is hidden regardless of its visibility setting.
Supported languages are Czech, German, English, Spanish, French, Italian, Dutch, Polish, Romanian, Slovak, and Turkish.
Form of Address
For languages that distinguish between formal and informal forms of address, you can choose which style the form uses. For example, in German you can choose between formal "Sie" and informal "Du".
Choose the form that best matches the tone of your product.
Note: This setting applies only to built-in text. Custom text provided through a translation set takes precedence and is displayed exactly as configured.
Custom Text Overrides
You can override the title and subtitle of each form view individually for each language. This allows you to adapt the wording to your product's tone, replace default terminology, or hide specific labels.
Note: Set a label to an empty string (
"") to hide it from the interface.
Technical Setup
Configure language behavior under functionality in the profile.
Custom text overrides are managed separately as translation resources through the /api/translations endpoints.
All profile fields are optional. If a field is not specified, the finAPI default value is used.
Language Fields
|
Field |
Values |
Default |
Description |
|---|---|---|---|
|
|
|
|
Whether the language selector in the header is displayed. Ignored when |
|
|
|
|
The language the form is shown in — an ISO-639 two-letter code, uppercase |
|
|
|
|
How the form addresses the end user in languages where this applies. Web form 2.1 only. |
locked and the two visibility settings are coupled: it must be set if either functionality.header or functionality.language.selector is HIDDEN, and it must be null if both are RENDER.
Example
{
"functionality": {
"language": {
"selector": "HIDDEN",
"locked": "DE"
},
"messageForm": "INFORMAL"
}
}
Translations Structure
Translations live outside the profile, in their own translation set created with POST /api/translations. A translation set applies to every web form you generate. Its body is organized by language code, then by view, then by the text fields of that view:
{language}.{view}.{field}
Language codes are lowercase here (
cs,de,en, …), unlikefunctionality.language.lockedin the profile, which is uppercase.
{
"de": {
"bankSelectionView": {
"title": "Wählen Sie Ihre Bank"
},
"bankLoginView": {
"title": "Anmeldung",
"subtitle": ""
}
}
}
Available Views
Most views accept a title only. The views listed with title + subtitle accept both. Every value is limited to 512 characters.
|
View key |
Fields |
Description |
|---|---|---|
|
|
|
Bank search screen |
|
|
|
Bank selection screen |
|
|
|
Bank login credentials screen |
|
|
|
Redirect-based bank login screen |
|
|
|
SCA method selection screen |
|
|
|
SCA challenge screen (account information) |
|
|
|
SCA challenge screen (payment initiation) |
|
|
|
Account selection screen (account information) |
|
|
|
Account selection screen (payment initiation) |
|
|
|
Data download progress screen |
|
|
|
Partial success confirmation screen |
|
|
|
Partial success with errors screen |
|
|
|
Update summary screen |
|
|
|
Final confirmation screen |
|
|
|
Error screen |