Validate an international bank account number, check its length by country and format it in blocks — in your browser.
The IBAN — International Bank Account Number, defined by ISO 13616 — is how a bank account is addressed across borders. It starts with a two-letter country code, then two check digits, then the national account number (the BBAN), whose layout and length each country defines for itself: 15 characters in Norway, 22 in Germany and the United Kingdom, 29 in Brazil, 32 in Saint Lucia. Getting one digit wrong on an international transfer means a rejected payment, a returned-funds fee, and a week of waiting — which is exactly what the check digits exist to prevent.
Validation follows the ISO 7064 MOD 97-10 recipe. The four leading characters are moved to the end, every letter is replaced by a number (A becomes 10, B becomes 11, and so on up to Z as 35), and the resulting long integer is divided by 97: a correct IBAN always leaves remainder 1. That integer can be sixty digits long, far beyond what a JavaScript number holds exactly, so this tool consumes it in chunks and carries the remainder forward — the same technique banking software uses. Before that, it compares the length against the official registry, which catches the most common error of all: a truncated paste.
The report tells you the country, the check digits, the BBAN and the length it expected, and it processes as many IBANs as you paste, one per line — handy when you are cleaning a supplier list, migrating a payments database or checking an invoice before a wire transfer. What it cannot tell you is whether the account exists or who owns it: mod-97 proves the number is internally consistent, nothing more. Everything runs locally in your browser, with no network requests, so account numbers you paste never leave your device.
Move the first four characters to the end of the IBAN, replace each letter by its position in the alphabet plus 9 (A = 10, B = 11 … Z = 35), read the result as a single integer and divide it by 97. The IBAN is valid when the remainder is exactly 1, and when its total length matches the one the ISO 13616 registry defines for the country code.
Two things: the total length must match the one its country defines in the ISO 13616 registry, and the mod-97 check must leave remainder 1. Both are pure arithmetic on the characters themselves, so no bank connection is needed.
No. Validation proves the number is internally consistent and correctly shaped for its country. It says nothing about whether the account is open, who owns it, or whether it can receive a transfer.
Yes. Brazilian IBANs have 29 characters — country code BR, two check digits, the bank code, the branch, the account number, the account type and the account holder position. They are used for international transfers; domestic payments use Pix, TED or a boleto.
Without spaces in any electronic form or banking system; in groups of four characters when it is printed on paper, an invoice or a letterhead. Both buttons here produce the exact same number in the two accepted presentations.
No. The country table and the mod-97 arithmetic are all in JavaScript running on your device — there are no network requests, and nothing is logged or stored.
Almost always a transposed or mistyped character: mod-97 catches every single-character error and nearly every swap of two adjacent characters. Compare it against the source document character by character, one block of four at a time.
Vai.la turns any URL into a short link with click statistics, QR Code and your own biolink.
Vai.la is not responsible for how the tools are used or for decisions made based on their results.