Coverage & behavior
Generates synthetic IBAN-shaped test values that pass this endpoint's deliberately limited structural checks: a supported country prefix, the country's documented total length, broad BBAN character classes and the international ISO 7064 MOD-97-10 checksum.
The endpoint does not validate or generate national bank identifiers, branch layouts, account-allocation rules or domestic BBAN checksums. Values are randomly generated rather than sourced from accounts, but randomness cannot guarantee that a bank code is unassigned or that a complete value does not coincide with a real account. Never use generated values for transfers, ownership checks or bank-directory decisions.
Pass country (ISO 3166-1 alpha-2, case-insensitive) to pin one documented country shape, or omit it for a random country per record; an unsupported generator code returns a 400 listing every option. With seed, the same request returns identical synthetic values.
/validate accepts compact input or paper-format ASCII spaces case-insensitively and returns one stable record for the same limited checks. Its valid field means only: supported country, expected total length, matching broad BBAN character classes and international MOD-97 remainder 1. It is not an account-existence, bank-directory or country-specific domestic validation result. Malformed and unsupported values return valid=false with ordered reason codes instead of throwing from checksum arithmetic; only a missing value or input over 64 characters is a request-level 400.
Supported country shapes (broad BBAN notation: n = digits, a = uppercase letters, c = letters or digits; adjacent same-class registry components are collapsed):
| Country |
Code |
IBAN length |
Broad BBAN character classes |
| Austria |
AT |
20 |
16n |
| Belgium |
BE |
16 |
12n |
| Switzerland |
CH |
21 |
5n12c |
| Czechia |
CZ |
24 |
20n |
| Germany |
DE |
22 |
18n |
| Denmark |
DK |
18 |
14n |
| Estonia |
EE |
20 |
16n |
| Spain |
ES |
24 |
20n |
| Finland |
FI |
18 |
14n |
| France |
FR |
27 |
10n11c2n |
| United Kingdom |
GB |
22 |
4a14n |
| Ireland |
IE |
22 |
4a14n |
| Iceland |
IS |
26 |
22n |
| Italy |
IT |
27 |
1a10n12c |
| Luxembourg |
LU |
20 |
3n13c |
| Netherlands |
NL |
18 |
4a10n |
| Norway |
NO |
15 |
11n |
| Poland |
PL |
28 |
24n |
| Portugal |
PT |
25 |
21n |
| Sweden |
SE |
24 |
20n |