Tool to check IBAN numbers. The IBAN (International Bank Account Number) algorithm allows checking if an IBAN number is correct.
IBAN 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!
An IBAN (International Bank Account Number) is composed of 14 to 34 characters according to standard ISO13616.
It starts with 2 letters indicating the country code of the bank account, then the checksum control key (between 02 and 98) and from 10 to 30 characters depending on countries that usually identify the bank and the account number.
The IBAN number is used for SEPA mandates (Austria, Belgium, Cyprus, Estonia, Finland, France, Germany, Greece, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Portugal, Slovakia, Slovenia, Spain).
An IBAN number is made up of a series of letters and numbers (14 to 34 characters depending on the country) described in the ISO13616 standard.
It begins with 2 letters indicating the country code of the bank account, followed by the IBAN checksum (between 02 and 98) and 10 to 30 characters depending on the country which correspond to bank codes including the bank account number.
The algorithm checks the country code first among countries accepting IBAN (ISO-13616 norm).
Example: FR for France, other letters for foreign countries
The algorithm starts by moving the 4 first characters (country code and checksum key) at the end of the IBAN and set the key to 2 digits 00.
Example: An invented IBAN: BA51 1234 5678 90DE F123,
it becomes 1234 5678 90DE F123 BA00
Replace each letter in the IBAN by its rank in the alphabet + 9. So A=10, B=11, C=12, etc. Z=35
Example: IBAN becomes 1234567890131415123111000
Calculate the value of this big number modulo 97 and subtract the result to 98 in order to get the control key.
Example: 1234567890131415123101100 mod 97 = 47 and 98-47 = 51. The checksum key is 51.
Check if the two 2 characters after the country code are 51, if yes the IBAN passes validation.
It may be envisaged to perform the verification of the existence of the bank code and the account number, this operation requires adequate databases.
The corresponding regular expression (which is not sufficient) is: [A-Z]{2}[0-9]{2}[A-Z0-9 ]{10,35}
The IBAN is generally present on bank identity statements (RIB), but also often on checkbooks or other bank statements.
It is important to note that the IBAN is specific to each bank account, several accounts therefore mean several distinct IBANs.
Sometimes it is asked to concatenate both IBAN and BIC codes (IBAN+BIC or BIC+IBAN).
The IBAN identifies a specific bank account, while the BIC (Bank Identifier Code) or SWIFT (Society for Worldwide Interbank Financial Telecommunication) is used to identify the bank itself.
It is common for the two to be used together.
A possible source code for programming the checksum calculation is // Pseudo code
function calculateIBANChecksum(iban) {
rearrangedIBAN = iban[4..] + iban[0..1] + "00"
numericIBAN = ""
for each character in rearrangedIBAN {
if (character is a letter) numericIBAN += ASCII code of (character) - 55
else numericIBAN += character
}
checksum = 98 - (numericIBAN % 97)
return checksum
}
dCode retains ownership of the "IBAN Number" source code. Except explicit open source licence (indicated Creative Commons / free), the "IBAN Number" algorithm, the applet or snippet (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, breaker, translator), or the "IBAN Number" functions (calculate, convert, solve, decrypt / encrypt, decipher / cipher, decode / encode, translate) written in any informatic language (Python, Java, PHP, C#, Javascript, Matlab, etc.) and all data download, script, or API access for "IBAN Number" are not public, same for offline use on PC, mobile, tablet, iPhone or Android app!
Reminder : dCode is free to use.
The copy-paste of the page "IBAN Number" or any of its results, is allowed (even for commercial purposes) as long as you credit dCode!
Exporting results as a .csv or .txt file is free by clicking on the export icon
Cite as source (bibliography):
IBAN Number on dCode.fr [online website], retrieved on 2024-09-14,