Austrian IBANs follow a strict 20-character layout defined by the SWIFT IBAN Registry and enforced under ISO 13616. A single transposed digit when wiring money or onboarding a supplier can misdirect a SEPA payment and trigger correction fees. This validator catches those errors instantly, entirely in your browser.
How it works
An Austrian IBAN always begins with AT, followed by two check digits, a five-digit Bankleitzahl (BLZ), and an eleven-digit account number:
AT kk bbbbb aaaaaaaaaaa
^ ^ ^ account number (11 digits)
| | Bankleitzahl / BLZ (5 digits)
| check digits (2)
country code
The validator runs three checks: the length must be exactly 20; the 16-digit BBAN must be all digits; and the ISO 7064 MOD-97-10 checksum must pass. For the checksum the first four characters (ATkk) are moved to the end, every letter is replaced by its numeric code, and the resulting long integer must leave a remainder of 1 when divided by 97. The computation is folded digit-by-digit to stay inside JavaScript’s safe integer range.
Worked example
Take AT61 1904 3002 3457 3201: country code AT, check digits 61, BLZ 19043, account 00234573201. Rearranging to 190430023457320110293361 and dividing by 97 leaves remainder 1, so the checksum passes.
Tips
Common mistakes include copying only the 11-digit account number without the BLZ prefix, or including an internal bank reference that is not part of the IBAN. Both are caught immediately by the length check. Every figure is processed locally and never uploaded.