How to Convert a Dutch Bank Account Number to IBAN
Step-by-step guide to converting a Dutch rekeningnummer to a valid NL IBAN. Covers zero-padding, bank codes (ABNA, INGB, RABO), and the MOD-97 calculation.
Technical Support, ibanchecker.cash
What Is a Dutch Bank Account Number (Rekeningnummer)?
A Dutch bank account number, called a rekeningnummer, is a numeric identifier up to 10 digits long assigned to each account by a Dutch bank. Before the SEPA migration in February 2014, domestic Dutch payments used only the account number paired with a 4-letter bank code. Today, all euro payments within the Netherlands and across SEPA require an IBAN. The rekeningnummer is now embedded inside the IBAN rather than used on its own.
If your account number has fewer than 10 digits, it is zero-padded from the left when constructing the IBAN. For example, the account number 417164300 (9 digits) becomes 0417164300 inside the IBAN.
Dutch IBAN Format
A Netherlands IBAN is always 18 characters long and follows this structure:
NL kk BBBB AAAAAAAAAA
NL — country code (Netherlands)
kk — 2 check digits (MOD-97 algorithm)
BBBB — 4-letter bank identifier code
AAAAAAAAAA — 10-digit account number (zero-padded)Example: NL91 ABNA 0417 1643 00
- NL — Netherlands
- 91 — IBAN check digits
- ABNA — ABN AMRO bank code
- 0417164300 — 10-digit account number
Why Does the Bank Code Matter?
Unlike Germany (where the BLZ identifies the branch) or the UK (where the sort code routes to a bank), Dutch IBANs embed a 4-letter bank identifier directly in positions 5 to 8. The same account number at a different bank produces a completely different IBAN. The most common Dutch bank codes are:
- ABNA — ABN AMRO
- INGB — ING
- RABO — Rabobank
- SNSB — SNS Bank
- TRIO — Triodos Bank
- KNAB — Knab
- BUNQ — bunq
- ASNB — ASN Bank
If your bank is not listed, check your IBAN directly: positions 5 to 8 always contain your bank's 4-letter code. You can also find it on your bank statement or in your online banking portal.
How to Convert a Dutch Account Number to IBAN
The conversion follows the ISO 13616 standard and takes four steps:
- Pad the account number: Zero-pad your account number on the left until it is 10 digits. Example:
417164300becomes0417164300. - Build the BBAN: Concatenate your 4-letter bank code and the zero-padded account number. Example:
ABNA0417164300. - Calculate the check digits: Append
NL00to the end of the BBAN, convert letters to numbers (A=10, B=11, ..., Z=35), compute the result modulo 97, and subtract from 98. Zero-pad the result to 2 digits. - Assemble the IBAN: Prefix
NLand the two check digits to the BBAN. Example:NL91ABNA0417164300.
You can perform this conversion instantly with the Dutch Account to IBAN converter on ibanchecker.cash. Select your bank from the dropdown, enter your account number, and the tool handles zero-padding and MOD-97 calculation automatically.
MOD-97 Check Digit Calculation Example
Account: 0417164300
Bank: ABNA
BBAN: ABNA0417164300
Rearranged for MOD-97: ABNA0417164300NL00
Letter conversion: 10 11 23 10 0417164300 23 21 00
Full numeric string: 10112310041716430023210 0
Numeric string mod 97 = 7 → 98 − 7 = 91
Check digits: 91
Final IBAN: NL91ABNA0417164300After generating your IBAN, validate it with the ibanchecker.cash IBAN checker to confirm the check digits and confirm it maps to a recognised Dutch bank.
Zero-Padding: Common Mistakes
The most common error when constructing a Dutch IBAN manually is forgetting to zero-pad the account number. A 9-digit account number like 417164300 must become 0417164300 before it is placed in the BBAN. Skipping this step produces an IBAN with incorrect check digits that will fail validation at the receiving bank.
The converter at /tools/nl-account-to-iban pads automatically, so you can enter the number as it appears on your statement without worrying about leading zeros.
When Do You Need a Dutch IBAN?
Since SEPA migration, the NL IBAN is required for:
- All domestic Dutch bank transfers (SEPA Credit Transfer)
- SEPA Direct Debit mandates
- International wire transfers to Dutch accounts
- Payroll setup with a Dutch employer
- Online shopping platforms that require a bank account for payouts
For bulk validation of multiple Dutch IBANs, the Bulk IBAN Checker accepts up to 100 IBANs at once and exports results as CSV.
Sources & References
- SWIFT IBAN Registry — Official country IBAN format specifications
- Dutch Payments Association — Dutch banking standards and bank codes
- ISO 13616-1:2020 — Financial services: International bank account number (IBAN)
- European Payments Council — SEPA Credit Transfer scheme rulebook
Last updated: June 2026
Integrate IBAN validation via API
REST API with 1,000 free validations/month. JSON response with bank name, SEPA status, and BBAN breakdown.
How to Validate IBANs in JavaScript (API & Manual)
Two approaches: call the ibanchecker.cash API for full bank data, or implement MOD-97 validation yourself. Includes work...
IBAN Validation in Python: Complete Implementation with Regex and Check Digits
Two production-ready approaches: call the ibanchecker.cash API for bank metadata, or implement the MOD-97 algorithm your...
Building an IBAN Validation API: REST Endpoint Design and Edge Cases
Architect-level guide to IBAN API design — GET vs POST tradeoffs, error code standards, normalization contracts, KV cach...
IBAN Regex Patterns That Actually Work (And Why Simple Regex Isn't Enough)
Country-specific regex patterns for DE, GB, FR, NL plus a generic IBAN regex — and why regex is only step 1 of validatio...