Tool to check BBAN numbers. The BBAN (Basic Bank Account Number) checksum algorithm allows to check if a full bank account BBAN number is correct.
BBAN Number - dCode
Tag(s) : Checksum
dCode is free and its tools are a valuable help in games, maths, geocaching, puzzles and problems to solve every day!
A suggestion ? a feedback ? a bug ? an idea ? Write to dCode!
NB: Do not confuse with IBAN. This tool checks BBAN, for full IBAN numbers, dCode has a tool for that:
A BBAN (Basic Bank Account Number) is a number identifying a bank account in a country. It is composed of 10 to 30 characters, depending on countries, these characters include bank codes (including the account number) and a checksum key.
Example: In France a BBAN/RIB has 23 characters: bank code (5 digits) + counter code (5 digits) + account number (11 digits and / or letters) + RIB key (2 digits between 01 and 97).
French BBAN number: 12345 12345 0123456789A 03
It is not possible to verify that a BBAN exists with certainty (that is to say, that there is indeed a bank that contains this bank account and that account is active, with money on it), indeed, only banks know their account numbers and associated RIBs and this data is a banking secret. On the other hand, it is possible to check that a RIB is technically valid (that is to say that it does not contain an error in its digits / characters) thanks to the control key which is integrated into the BBAN and which therefore allows a partial verification. If the validation fails, then the RIB is necessarily false/erroneous.
The algorithm for the validation calculator checks the BBAN key via a modulo 97:
Example: The bank number is: 12345 12345 0123456789A 03
Step 1: Remove the key BBAN code.
Example: The key is composed of the last 2 digits: 03. The rest of the calculation is done with 12345 12345 0123456789A 00.
Step 2: replace any letters by figures in the table
A, J | 1 |
B, K, S | 2 |
C, L, T | 3 |
D, M, U | 4 |
E, N, V | 5 |
F, O, W | 6 |
G, P, X | 7 |
H, Q, Y | 8 |
I, R, Z | 9 |
Example: A=1, the BBAN becomes 12345123450123456789100
Step 3: Calculate the value of the result modulo 97, then subtract the result to 97.
Example: $ 12345123450123456789100 \mod 97 \equiv 94 $ and $ 97 - 94 = 3 $
The checksum key is therefore 03 (the key removed previously), the BBAN is valid.
Why 97? Because it is a prime number (the largest with 2 digits) that will minimize the errors.
dCode retains ownership of the "BBAN Number" source code. Any algorithm for the "BBAN Number" algorithm, applet or snippet or script (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, breaker, translator), or any "BBAN Number" functions (calculate, convert, solve, decrypt / encrypt, decipher / cipher, decode / encode, translate) written in any informatic language (Python, Java, PHP, C#, Javascript, Matlab, etc.) or any database download or API access for "BBAN Number" or any other element are not public (except explicit open source licence like Creative Commons). Same with the download for offline use on PC, mobile, tablet, iPhone or Android app.
Reminder: dCode is an educational and teaching resource, accessible online for free and for everyone.
The content of the page "BBAN Number" and its results may be freely copied and reused, including for commercial purposes, provided that dCode.fr is cited as the source.
Exporting the results is free and can be done simply by clicking on the export icons ⤓ (.csv or .txt format) or ⧉ (copy and paste).
To cite dCode.fr on another website, use the link:
In a scientific article or book, the recommended bibliographic citation is: BBAN Number on dCode.fr [online website], retrieved on 2025-04-16,