# International Bank Account Number

Het International Bank Account Number (IBAN) wordt gebruikt om internationale transacties tussen rekeningen en banken in verschillende landen vlotter te laten verlopen. Sinds 2007 is het eveneens verplicht voor nationale betalingen.
Het IBAN telt maximaal 34 alfanumerieke tekens en heeft een vaste lengte per land. Het IBAN bestaat uit een landcode (twee letters), een controlegetal (twee cijfers) en een (voor bepaalde landen aangevuld) nationaal rekeningnummer.
De BIC-code verwijst naar een bepaalde bank, het IBAN identificeert een individuele bankrekening.
België is in 2007 overgegaan op het IBAN-systeem voor binnenlandse betalingen. Voor binnenlandse overschrijvingen is de BIC code optioneel. Belgische IBAN nummers hebben een vaste lengte: BE gevolgd door 14 cijfers, gewoonlijk genoteerd in groepen van 4 x 4 tekens met spaties. Hierbij vormen de eerste 2 cijfers een extra controlegetal, gevolgd door de 12 cijfers van het klassieke bankrekeningnummer met weglating van de koppeltekens. Belgische rekeningnummers hebben enkel cijfers, afgezien van de BE-prefix.
Nederland volgde op 1 augustus 2007. Alle bank- en toenmalige girorekeningnummers zijn toen aangevuld met enkele letters en cijfers. Bij een bankopdracht is opgave van het volledige IBAN verplicht. Een uitzondering geldt voor sommige goede doelen, zoals giro 555 van de Samenwerkende Hulporganisaties, waarbij de opdrachtgever kan volstaan met het korte nummer, dat automatisch in IBAN wordt omgezet.

## Regelgeving

Sinds 1 januari 2006 is kan het IBAN nummer worden gebruikt bij grensoverschrijdend Europees betalingsverkeer in euro's. Terwijl 2006 nog een overgangsjaar was, is sinds 1 januari 2007 weglating van het IBAN bij binnenlandse transacties niet meer mogelijk; banken accepteren een opdracht voor betaling alleen nog als het IBAN is aangegeven.

## Geografische spreiding van het systeem

Alle banken in Europa (behalve Rusland, Wit-Rusland en Oekraïne) gebruiken het IBAN-systeem. Ook in Israël, Tunesië, Mauritius, Turkije, Saoedi-Arabië en Libanon is dit Europese systeem overgenomen.
In Australië en Nieuw-Zeeland wordt het IBAN niet gebruikt maar worden een SWIFT-code en een BSB-nummer gebruikt.

## Structuur
### Samenstelling

Het IBAN bestaat uit de volgende combinatie alfanumerieke tekens:
* een landcode bestaande uit twee letters volgens ISO 3166-1,
* een controlegetal bestaande uit twee cijfers volgens ISO 7064,
* een rekeningidentificatie bestaande uit maximaal 30 cijfers en letters
Omwille van leesbaarheid wordt het nummer conform ISO13616 in groepen van vier tekens geschreven, de laatste groep kan minder dan vier tekens bevatten (voorbeeld: DE05 1002 0500 0003 2873 00). Dit is in strijd met de klassieke indeling van Nederlandse bankrekeningnummers (2,2,2,3), die daardoor minder herkenbaar worden.

### Controlegetal

Het controlegetal wordt verkregen als volgt:
| Neem het bankrekeningnummer. | 1234567 |
| Bij een Nederlands nummer: Voeg voorloopnullen toe zodat het nummer tien cijfers lang is. | 0001234567 |
| Zet de bankcode ervoor. | INGB 0001234567 |
| Zet de landcode erachter. | I N G B 0001234567 N L |
| Vervang elke letter door twee cijfers gebaseerd op de volgorde in het Latijns alfabet beginnend met A=10, B=11, ..., Y=34, Z=35. | 18 23 16 11 0001234567 23 21 |
| Voeg twee nullen toe. | 18 23 16 11 0001234567 23 21 00 |
| Deel het resulterende getal door 97 en neem de rest (mod 97). | 78 |
| Bereken 98 min deze rest. | 20 |
| Als het resultaat kleiner dan 10 is, wordt een voorloopnul toegevoegd. |
Het IBAN zal dus NL20 INGB 0001 2345 67 zijn.

### Valideren

Een IBAN wordt gevalideerd door het om te zetten naar cijfers en dan de restwaarde te bepalen als het geheeltallig gedeeld wordt door 97. Die restwaarde moet gelijk zijn aan 1.
Het algoritme van IBAN is als volgt:
* controleer of het controlegetal (op 3e en 4e positie) tussen 2 en 98 ligt
* valideer de samenstelling
* verplaats de eerste 4 karakters naar het einde
* vervang elke letter door 2 cijfers, waarbij A = 10, B = 11, ..., Z = 35
* bereken dan het getal modulo 97
* als de restwaarde 1 is, dan klopt het nummer op basis van het controlecijfer en kan het IBAN valide zijn
Voorbeeld (fictieve Britse bank met bankcode WEST en filiaalcode 12-34-56, rekeningnummer 98765432 - zie rechts):
* IBAN: GB82WEST12345698765432
* Eerste vier karakters verplaatsen: WEST12345698765432GB82
* Omzetten in cijfers: 3214282912345698765432161182
* Restwaarde berekenen: 3214282912345698765432161182 mod 97 = 1

### Landspecifieke regels

In de onderstaande lijst worden de volgende afkortingen gebruikt:
* kk = controlecijfers van hele IBAN
* B = bankcode
* T = rekeningtype
* S = bankfiliaalcode (soms al verwerkt in bankcode of rekeningnummer)
* K = controlecijfer (maakt reeds deel uit van het nationale rekeningnummer)
* R = bedoeld voor gebruik in de toekomst, is voorlopig standaard altijd '0'
* 9 = rekeningnummer, indien nodig aangevuld met voorloopnullen
* X = persoonlijk identificatienummer van de eigenaar (vergelijkbaar met het sofinummer in Nederland en het rijksregisternummer in België)
* D = munteenheid van de rekening, 3-letterige ISO 4217-code
Lijst met IBAN-structuur per land, tussen haakjes de lengte van het IBAN:
| Land | Lengte | Formaat | Opmerkingen |
| Albanië | 28 | ALkk BBB SSSSK 9999 9999 9999 9999 | |
| Andorra | 24 | ADkk BBBB SSSS 9999 9999 9999 | |
| België | 16 | BEkk BBB9 9999 99KK | na BE alleen cijfers; de laatste 12 cijfers vormen het nationaal rekeningnummer |
| Bosnië en Herzegovina | 20 | BAkk BBBS SS99 9999 99KK | |
| Bulgarije | 22 | BGkk BBBB SSSS 99CC CCCC CC | 9 = numeriek rekeningnummer, C = alfanumeriek rekeningnummer |
| Cyprus | 28 | CYkk BBBS SSSS 9999 9999 9999 9999 | |
| Denemarken | 18 | DKkk BBBB 9999 9999 99 | |
| Duitsland | 22 | DEkk BBBB BBBB 9999 9999 99 | |
| Estland | 20 | EEkk BBSS 9999 9999 999K | |
| Faeröer | 18 | FOkk 9999 9999 9999 99 | |
| Finland | 18 | FIkk BBBB BB99 9999 9K | B = bankcode, bankfiliaalcode en rekeningtype |
| Frankrijk | 27 | FRkk BBBB BSSS SS99 9999 9999 9KK | |
| Georgië | 22 | GEkk BB99 9999 9999 9999 99 | |
| Gibraltar | 23 | GIkk BBBB 9999 9999 9999 999 | |
| Griekenland | 27 | GRkk BBBS SSS9 9999 9999 9999 999 | |
| Groenland | 18 | GLkk BBBB 9999 9999 99 | |
| Hongarije | 28 | HUkk BBBS SSSK 9999 9999 9999 999K | |
| Ierland | 22 | IEkk BBBB SSSS SS99 9999 99 | |
| IJsland | 26 | ISkk BBBB TT99 9999 XXXX XXXX XX | |
| Israël | 23 | ILkk BBB SSS 9999999999999 | |
| Italië | 27 | ITkk KBBB BBSS SSS9 9999 9999 999 | |
| Jordanië | 30 | JOkk BBBB SSSS 9999 9999 9999 9999 99 | |
| Kroatië | 21 | HRkk BBBB BBB9 9999 9999 9 | |
| Letland | 21 | LVkk BBBB 9999 9999 9999 9 | |
| Libanon | 28 | LBkk BBBB 9999 9999 9999 9999 9999 | |
| Liechtenstein | 21 | LIkk BBBB B999 9999 9999 9 | |
| Litouwen | 20 | LTkk BBBB B999 9999 9999 | |
| Luxemburg | 20 | LUkk BBB9 9999 9999 9999 | |
| Malta | 31 | MTkk BBBB SSSS S999 9999 9999 9999 999 | |
| Mauritius | 30 | MUkk BBBB BBSS 9999 9999 9999 RRRD DD | |
| Monaco | 27 | MCkk BBBB BSSS SS99 9999 9999 9KK | |
| Montenegro | 22 | MEkk BBB9 9999 9999 9999 KK | |
| Nederland | 18 | NLkk BBBB 9999 9999 99 | BBBB in letters |
| Noord-Macedonië | 19 | MKkk BBB9 9999 9999 9KK | |
| Noorwegen | 15 | NOkk BBBB 9999 99K | |
| Oostenrijk | 20 | ATkk BBBB B999 9999 9999 | |
| Polen | 28 | PLkk BBBS SSSK 9999 9999 9999 9999' | |
| Portugal | 25 | PTkk BBBB SSSS 9999 9999 999K K | Bij sommige banken is geen filiaalcode nodig en wordt bij SSSS '0000' ingevuld |
| Roemenië | 24 | ROkk BBBB 9999 9999 9999 9999 | |
| San Marino | 27 | SMkk KBBB BBSS SSSX XXXX XXXX XXX | |
| Saoedi-Arabië | 24 | SAkk BB99 9999 9999 9999 9999 | |
| Servië | 22 | RSkk BBB9 9999 9999 9999 KK | |
| Slowakije | 24 | SKkk BBBB SSSS SS99 9999 9999 | |
| Slovenië | 19 | SIkk BBSS S999 9999 9KK | |
| Spanje | 24 | ESkk BBBB SSSS KK99 9999 9999 | |
| Tsjechië | 24 | CZkk BBBB SSSS SS99 9999 9999 | |
| Turkije | 26 | TRkk BBBB BR99 9999 9999 9999 99 | |
| Tunesië | 24 | TNkk BBBB B999 9999 9999 9999 | |
| Verenigd Koninkrijk | 22 | GBkk BBBB SSSS SS99 9999 99 | |
| Verenigde Arabische Emiraten | 23 | AEkk BBBB SSSS 9999 9999 999 | |
| Zweden | 24 | SEkk BBBB 9999 9999 9999 9999 | |
| Zwitserland | 21 | CHkk BBBB B999 9999 9999 9 | |