Ten checksum-valid Netherlands test IBANs with their domestic bank code and account number, ready for a payment form, fixture or unit test, plus invalid NL cases that a correct validator must reject.
Synthetic only: the bank code may belong to a real Netherlands bank, but each account number is random. Never use these values for payments or to represent a real account.
Each value is derived from the first valid IBAN above and re-checked, so the expected result is exact.
Case
Input
Expected validator result
Wrong check digits
NL03CITI2776797967
Reject: MOD-97 checksum fails
Transposed BBAN digits
NL02ICTI2776797967
Reject: MOD-97 checksum fails
One character too short
NL02CITI277679796
Reject: length does not match the country format
Wrong country prefix
FR02CITI2776797967
Reject: length or checksum fails for the other country
Lowercase with spaces
nl02 citi 2776 7979 67
Accept after normalizing case and whitespace
Netherlands IBAN format
NL + 2 check digits + 4 uppercase letters + 10 digits = 18 characters. Validate the length and character classes first, then the MOD-97 checksum: move the first four characters to the end, convert letters to numbers (A=10 … Z=35) and the remainder modulo 97 must be 1.
Need rows for the same bank, city or BIC your integration talks to? The generator can target them, keep a stable seed and export 1,000 rows at a time.
Are these Netherlands test IBANs real bank accounts?
No. They are synthetic NL IBANs with a correct national format and MOD-97 checksum. The bank code can match a real institution, but the account number is random and must never be used for payments.
How long is a Netherlands IBAN?
A Netherlands IBAN has 18 characters: the country code NL, two check digits and a 14-character BBAN (4 uppercase letters, 10 digits).
Can I get more Netherlands test IBANs for a specific bank or city?
Yes. The Netherlands generator creates up to 10 rows free. Paid plans add bank, city and exact BIC targeting, 1,000-row batches, CSV/JSON exports and the same data through the API.