# International Bank Account Number

ISO 13616
L'International Bank Account Number, généralement nommé sous l'acronyme IBAN, quelquefois connu dans les établissements travaillant en langue française sous les termes de Numéro international de compte bancaire, est un système international de numérotation de comptes bancaires complémentaire du BIC, acronyme de Bank Identifier Code, du réseau Swift.
Il est institué par la norme ISO 13616, « Banque et services financiers connexes – Numéro international de compte bancaire » élaborée par l'Organisation internationale de normalisation (ou ISO en contractions anglaises) et le Comité européen de normalisation bancaire (en initiales anglaises : ECBS) devenu Conseil européen des paiements (en initiales anglaises : EPC).
Cette norme est publiée pour la première fois en 1997 et est plusieurs fois révisée, notamment en 2003, 2007 et 2020.
La norme ISO 13616 spécifie les éléments du numéro de compte bancaire, qui sert notamment pour les bénéficiaires de paiements transfrontaliers. Elle permet une identification homogène des comptes bancaires dans tous les pays et identifie de manière unique un compte bancaire quel que soit l'endroit où il est tenu. Elle est utilisée pour faciliter le traitement automatisé des paiements transfrontaliers.
Alors qu'un IBAN identifie à la fois un numéro de compte et l'agence auquel il est rattaché, certaines banques européennes demandent l'utilisation conjointe du Bank Identifier Code (BIC) et de l'IBAN. Une telle exigence, si elle est demandée par une banque établie dans l'Union européenne ou l'Espace économique européen, est en contradiction totale avec la directive européenne pour les virements intérieurs de chaque pays européen depuis le 1er février 2014 et celle valable pour les virements transfrontaliers à l'intérieur de pays de l'Union européenne et l'apparition du SEPA depuis le 1er février 2016.

## Composition

Composition de l'IBAN :
| 2 lettres | 2 lettres | 2 chiffres | 2 chiffres | 30 positions | 30 positions | 30 positions | 30 positions | 30 positions | 30 positions | 30 positions | 30 positions | 30 positions | 30 positions | 30 positions |
| CP | CP | CC | CC | BBAN | BBAN | BBAN | BBAN | BBAN | BBAN | BBAN | BBAN | BBAN | BBAN | BBAN |
* CP : Code du pays
* CC : Clef de contrôle (de 02 à 98)
* BBAN : Basic Bank Account Number
La longueur d'un IBAN est fixe dans chaque pays avec au moins 14 caractères et un maximum de 34 caractères. Pour les établissements établis en France, le numéro IBAN est un composé de 27 lettres et chiffres.
Par exemple, l'IBAN français commence par FR, est suivi ensuite par la clé de contrôle 76 (pour les comptes bancaires composés de chiffres uniquement) et se poursuit par un groupe de 23 chiffres qui représentent d'abord le code banque (5 premiers chiffres), le code guichet (à nouveau 5 chiffres) et se termine par le numéro complet du compte bancaire (soit 11 chiffres) et la clé du compte bancaire, égale à 2 chiffres.
Sous forme écrite, l'IBAN est précédé du sigle « IBAN » et est formaté en groupes de quatre caractères séparés par une espace ; dans les bases de données, l'IBAN est stocké dans une chaîne non formatée.
L'IBAN est différent selon le code du pays, la clé de contrôle, les codes banque et guichet, puis le numéro du compte ainsi que sa clé de sécurité. Chaque détenteur de compte bancaire dispose d'un numéro qui est donc unique.
Un IBAN belge commence par BE, un IBAN suisse par CH, etc.
L'IBAN simplifie ainsi les virements ou les prélèvements faits de compte à compte, tant au sein d'un même pays comme pour une opération sur un compte détenu dans une banque d'un autre pays.

## Exemples

* Algérie (24) Format IBAN : DZkk BBBS SSSS CCCC CCCC CCKK
       DZ = Dzayer ("Algérie" en algérien), B = code banque, S = code guichet, C = numéro de compte, K = clef
* Allemagne (22) Format IBAN : DEkk BBBB BBBB CCCC CCCC CC
       DE = Deutschland, B = codes banque et groupe de comptes (de:Bankleitzahl/BLZ), C = numéro de compte, K = clef
* Andorre (24) Format IBAN : ADkk BBBB SSSS CCCC CCCC CCCC
       B = code banque, S = code groupe de comptes, C = numéro de compte
* Arabie saoudite (24) Format IBAN : SAkk BBCC CCCC CCCC CCCC CC
       B = code banque, C = numéro de compte, K = clef
* Autriche (20) Format IBAN : ATkk BBBB BCCC CCCC CCCC
       B = code banque, C = numéro de compte, K = clef
* Belgique (16) Format IBAN : BEkk BBBC CCCC CCKK
       B = code banque, C = numéro de compte, K = clef
* Bosnie-Herzégovine (20) Format IBAN : BAkk BBBS SSCC CCCC CCKK
       B = code banque, S = code groupe de comptes, C = numéro de compte, K = clef
* Brésil (29) Format IBAN : BRkk BBBB BBBB SSSS SCCC CCCC CCCI P
       B = code banque, S = code guichet, C = numéro de compte, I = type de compte, P = position du compte
* Bulgarie (22) Format IBAN : BGkk BBBB SSSS DDCC CCCC CC
       B = code banque alphabétique (quatre premiers caractères du code SWIFT), S = code guichet, D = type de compte (numérique), C = n° de compte alphanumérique. Mis en place le 5 juin 2006.
* Croatie (21) Format IBAN : HRkk BBBB BBBC CCCC CCCC C
       HR = Hrvatska ("Croatie" en croate), B = code banque, C = numéro de compte
* Chypre (28) Format IBAN : CYkk BBBS SSSS CCCC CCCC CCCC CCCC
       B = code banque, S = code groupe de comptes, C = numéro de compte
* Danemark (18) Format IBAN : DKkk BBBB CCCC CCCC CC
       B = code banque, C = numéro de compte
* Espagne (24) Format IBAN : ESkk BBBB GGGG KKCC CCCC CCCC
       B = Code banque, G = code guichet, K = clef, C = n° de compte
* Estonie (20) Format IBAN : EEkk BBBB CCCC CCCC CCCK
       B = code banque, C = numéro de compte, K = clef
* Îles Féroé (18) Format IBAN : FOkk BBBB CCCC CCCC CC
       Même format que les comptes danois à l'exception du code pays.
* Finlande (18) Format IBAN : FIkk BBBB BBCC CCCC CK
       B = codes banque, guichet et type de compte, C = numéro de compte, K = clef.
* France (27) Format IBAN : FRkk BBBB BGGG GGCC CCCC CCCC CKK
       B = code banque, G = code guichet, C = numéro de compte, K = clef
          Note: le BBAN correspond au RIB. Si ce dernier ne comporte que des chiffres, l'IBAN commence par FR76 suivi du RIB scindé en groupes de quatre caractères (voir la section Exemples ci-dessous).
* Géorgie (22) Format IBAN : GEkk bbcc cccc cccc cccc cc
       B = code banque national, C = numéro de compte, K = clef
* Gibraltar (23) Format IBAN : GIkk BBBB CCCC CCCC CCCC CCC
       B = Premiers caractères du SWIFT BIC, C = numéro de compte
* Grande-Bretagne (22) Format IBAN : GBkk BBBB SSSS SSCC CCCC CC
       B = code banque alphabétique, S = code groupe de comptes (en général code guichet), C = numéro de compte
* Grèce (27) Format IBAN : GRkk BBB BBBB CCCC CCCC CCCC CCCC
       K = clef, B = code banque et code guichet, C = numéro de compte
* Groenland (18) Format IBAN : GLkk BBBB CCCC CCCC CC
       Même format que les comptes danois à l'exception du code pays
* Hongrie (28) Format IBAN : HUkk BBBG GGGK CCCC CCCC CCCC CCCK
       B = code banque, G = code guichet, C = numéro de compte, K = clef
* Islande (26) Format IBAN : ISkk BBBB SSCC CCCC NNNN NNNN NN
       B = code banque, S = type de compte, C = n° de compte, N = numéro d'identification unique du titulaire de compte délivré par le Bureau des statistiques.
* Israël (23) Format IBAN : ILkk BBBG GGCC CCCC CCCC CCC
       B = code banque, G = code guichet, C = numéro de compte
* Irlande (22) Format IBAN : IEkk AAAA BBBB BBCC CCCC CC
       A = Premiers caractères du code SWIFT, B = code groupe de comptes, C = n° de compte.
* Italie (27) Format IBAN : ITkk ABBB BBCC CCCN NNNN NNNN NNN
       A = clef (système italien), B = code banque, C = code guichet (CAB), N = n° de compte.
* Lettonie (21) Format IBAN : LVkk BBBB CCCC CCCC CCCC C
       B = Premiers caractères du code SWIFT, C = n° de compte.
* Liechtenstein (21) Format IBAN : LIkk BBBB BCCC CCCC CCCC C
       B = code banque, C = numéro de compte
* Lituanie (20) Format IBAN : LTkk BBBB BCCC CCCC CCCC
       B = code banque, C = numéro de compte
* Luxembourg (20) Format IBAN : LUkk BBBC CCCC CCCC CCCC
       B = code banque, C = numéro de compte
* Macédoine (19) Format IBAN : MKkk BBBC CCCC CCCC CKK
       B = code banque, C = numéro de compte, K = clef
* Madagascar (27) Format IBAN : MGkk BBBB BGGG GGCC CCCC CCCC CKK
       B = code banque, G = code guichet, C = numéro de compte, K = clef
* Malte (31) Format IBAN : MTkk BBBB SSSS SCCC CCCC CCCC CCCC CCC
       B = premiers caractères du code SWIFT, S = code groupe de comptes, C = numéro de compte
* Maurice (30) Format IBAN : MUkk BBBB CCCC CCCC CCCC CCCC CCCC CC
       B = premiers caractères du code SWIFT, C = numéro de compte
* Monaco (27) Format IBAN : MCkk BBBB BGGG GGCC CCCC CCCC CKK
       Même format que les comptes français à l'exception du code pays
* Norvège (15) Format IBAN : NOkk BBBB CC CCCCC
       B = code banque, C = n° de compte, K = clef
* Pays-Bas (18) Format IBAN : NLkk BBBB CCCC CCCC CC
       NL = Nederland ("Pays-Bas" en néerlandais), B = code banque, C = n° de compte.
* Pologne (28) Format IBAN : PLkk BBBB BBBk CCCC CCCC CCCC CCCC
       B = code banque (positions 1 à 3) et code groupe de comptes ou code guichet, C = n° de compte, kk = clefs.
* Portugal (25) Format IBAN : PTkk BBBB BBBB CCCC CCCC CCCK K
       B = code banque (positions 1 à 4) et code guichet, C = numéro de compte, K = clef
* République tchèque (24) Format IBAN : CZkk BBBB SSSS SSCC CCCC CCCC
       B = code banque, S = code groupe de comptes, C = numéro de compte
* Roumanie (24) Format IBAN : ROkk BBBB CCCC CCCC CCCC CCCC
       B = code banque, C = code guichet et n° de compte.
* Saint-Marin (27) Format IBAN : SMkk ABBB BBCC CCCN NNNN NNNN NNN
       Même format que les comptes italiens à l'exception du code pays
* Serbie (22) Format IBAN : RSkk BBBC CCCC CCCC CCCC CC
       B = code banque, C = numéro de compte
* Slovaquie (24) Format IBAN : SKkk BBBB CCCC CCCC CCCC CCCC
       B = code banque, C = numéro de compte
* Slovénie (19) Format IBAN : SIkk BB BBB CCCCCCCC KK
       B = code banque (2 premières positions) et code guichet, C = code compte, K = clef
* Suède (24) Format IBAN : SEkk BBBB CCCC CCCC CCCC CCCC
       B = Code banque, C = n° de compte
* Suisse (21) Format IBAN : CHkk BBBB BCCC CCCC CCCC C
       CH = Confédération Helvétique, B = code banque, C = numéro de compte
* Turquie (26) Format IBAN : TRkk BBBB BRCC CCCC CCCC CCCC CC
       B = code banque, R = "0" pour tous les comptes, C = code guichet et n° de compte. Utilisé à partir du 1er septembre 2005.
* Tunisie (24) Format IBAN : TNkk BBBB BCCC CCCC CCCC CCCC
       B = code banque, C = numéro de compte

### Méthode de calcul des clefs de contrôle

* Créer un IBAN artificiel, composé du code du pays (ISO 3166), suivi de "00" et du BBAN (sans caractères autres que numériques et alphabétiques).
    Un BBAN belge comme 510-0075470-61 devient BE00510007547061
* Déplacer les 4 premiers caractères de l'IBAN à la droite du numéro.
    Résultat : 510007547061BE00
* Convertir les lettres en chiffres, selon la règle suivante. Chaque lettre est remplacée par les deux chiffres du nombre obtenu en ajoutant 9 à son rang dans l'alphabet. On obtient 10 pour A, 11 pour B… et 35 pour Z.
    Résultat : 510007547061111400
* Appliquer le MOD 97-10 (cf. ISO 7064).
    Calculer le modulo 97, c'est-à-dire le reste de la division du résultat précédent par 97, et retrancher ce reste de 98. Si le résultat comporte un seul chiffre, le faire précéder du chiffre zéro. Dans l'exemple considéré, ce reste est égal à 36.
* Insérer le résultat ainsi obtenu à la position 3 de l'IBAN artificiel créé dans l'étape préalable (en remplacement des 2 zéros) :
    98 - 36 = 62, d'où IBAN = BE62510007547061
Cette méthode de calcul d'un IBAN à partir d'un BBAN est identique pour tous les pays.

### Algorithme de vérification de l'IBAN

* Enlever les caractères indésirables (espaces, tirets),
* Déplacer les 4 premiers caractères à la fin du compte,
* Remplacer les lettres par des chiffres au moyen d'une table de conversion (A=10, B=11, C=12 etc.),
* Diviser le nombre ainsi obtenu par 97,
* Si le reste n'est pas égal à 1 l'IBAN est incorrect : modulo de 97 égal à 1.
S'il y a trop de chiffres (plus de 30) il est possible que votre machine ne puisse pas faire un si gros calcul. Dans ce cas, prendre les n(n) premiers (disons les 10 premiers chiffres par exemple). Calculer ce nombre modulo 97 et le remplacer par le reste au début des autres chiffres. Refaire le modulo du nouveau nombre obtenu.

### Exemples

GB87 BARC 2065 8244 9716 55
* GB87BARC20658244971655
* BARC20658244971655GB87
* 1110271220658244971655161187
* 1110271220658244971655161187 Modulo 97 = 1
BE43068999999501
* BE43068999999501
* 068999999501BE43
* 068999999501111443
* 068999999501111443 Modulo 97 = 1

### Exemple de calcul de modulo par étapes

Vérification du code IBAN suivant : 068999999501111443.
Décomposition du code IBAN (conservation des 11 premiers chiffres). Effectuez le calcul du modulo : 06899999950 Modulo 97 = 10.
Placer le résultat du modulo (10) devant le reste du code IBAN (1111443). Effectuez le calcul du modulo : 101111443 Modulo 97 = 1.
Ce code IBAN (068999999501111443) est correct car l'opération Modulo 97 est égale à 1.
Les comptes français uniquement constitués de chiffres ont tous la même clef IBAN égale à 76. Cela est dû à la clef du RIB français qui est elle-même un modulo 97. La correspondance numérique des lettres étant différente entre le calcul de la clef RIB et le calcul de la clef IBAN, cela n'est pas vrai pour les comptes français qui comportent au moins une lettre.