Structure de l'IBAN expliquée : code pays, chiffres de contrôle et BBAN
Comment se compose un IBAN : code pays, chiffres de contrôle Mod-97 et BBAN. La structure de l'International Bank Account Number expliquée étape par étape, avec un exemple chiffré.
Un IBAN allemand compte 22 caractères, commence par DE et ressemble au premier coup d’oeil à une suite de chiffres tirée au hasard. En réalité, une logique claire se cache derrière chaque bloc : un identifiant de pays, une somme de contrôle mathématique, un code banque et un numéro de compte. Une fois la structure comprise, on repère les fautes de frappe immédiatement et on peut déduire le code BIC à partir de l’IBAN. Cet article décompose un IBAN pièce par pièce et montre la méthode Mod-97 qui permet de le vérifier soi-même.
Ce qu’est réellement l’IBAN
L’IBAN (International Bank Account Number) est un numéro de compte normalisé au niveau international. Il suit la norme ISO 13616, qui existe depuis 1997 et est obligatoire pour tous les comptes en euros en Europe depuis 2014. L’objectif : les virements bancaires transfrontaliers devraient fonctionner aussi simplement que les virements à l’intérieur d’un même pays, sans que l’émetteur ait besoin de connaître les formats de numéros de compte nationaux en vigueur à l’étranger.
L’IBAN ne remplace pas le numéro de compte national, il l’enveloppe. Un IBAN allemand contient l’ancien code banque à huit chiffres et le numéro de compte allant jusqu’à dix chiffres, inchangés, simplement encadrés par un code pays et des chiffres de contrôle.
La longueur varie beaucoup : la Norvège possède les IBAN les plus courts avec 15 caractères, tandis que Malte et certains pays des Caraïbes ont les plus longs, de 31 à 34 caractères. En Allemagne, c’est toujours exactement 22 caractères.
Les trois parties d’un IBAN
Chaque IBAN se compose de trois éléments fixes, dans cet ordre précis.
1. Code pays (caractères 1 et 2)
Les deux premières lettres identifient le pays selon la norme ISO 3166. Ce code est fixe et suit la même logique que les extensions de domaine (.de, .at, .ch).
| Pays | Code | Longueur de l’IBAN |
|---|---|---|
| Allemagne | DE | 22 |
| Autriche | AT | 20 |
| Suisse | CH | 21 |
| Liechtenstein | LI | 21 |
| France | FR | 27 |
| Italie | IT | 27 |
| Pays-Bas | NL | 18 |
| Belgique | BE | 16 |
| Luxembourg | LU | 20 |
| Royaume-Uni | GB | 22 |
| Irlande | IE | 22 |
| Espagne | ES | 24 |
| Portugal | PT | 25 |
| Danemark | DK | 18 |
| Norvège | NO | 15 |
| Pologne | PL | 28 |
| Tchéquie | CZ | 24 |
| Malte | MT | 31 |
La liste complète figure dans le registre IBAN de SWIFT ainsi que dans notre panorama des IBAN par pays.
2. Chiffres de contrôle (caractères 3 et 4)
Les chiffres de contrôle sont le coeur de l’IBAN. Ils sont calculés selon la méthode Mod-97-10 (ISO 7064) et détectent plus de 99 pour cent des fautes de frappe : chiffres inversés, chiffres manquants, blocs permutés. C’est une protection que l’ancien code banque allemand accompagné du numéro de compte n’a jamais offerte.
Le principe en quatre étapes :
- Réorganiser l’IBAN : déplacer les quatre premiers caractères (pays plus chiffres de contrôle) à la fin.
DE89 3704 0044 0532 0130 00devient3704 0044 0532 0130 00 DE 89. - Convertir les lettres en chiffres : A=10, B=11, C=12, …, Z=35. DE devient 1314.
- Diviser le très grand nombre obtenu par 97.
- Le reste doit valoir exactement 1. S’il n’est pas égal à 1, l’IBAN est invalide.
Dans l’exemple, la séquence réorganisée se lit 3704004405320130001314 89. Divisée par 97, le reste est 1. L’IBAN est correct.
Lors de la génération d’un nouvel IBAN, le procédé fonctionne dans l’autre sens : la banque calcule les chiffres de contrôle de manière à ce que le reste du test soit toujours 1. C’est pourquoi les chiffres de contrôle d’un compte fraîchement ouvert ne sont pas prévisibles et semblent varier au hasard entre 01 et 98 (les valeurs 00 et 99 n’apparaissent pratiquement jamais).
3. BBAN : le numéro de compte national (du caractère 5 jusqu’à la fin)
La BBAN (Basic Bank Account Number) est la partie propre à chaque pays. C’est là que se trouvent les véritables données de banque et de compte, et le format varie considérablement d’un pays à l’autre.
Allemagne (14 chiffres) : 8 chiffres de code banque plus 10 chiffres de numéro de compte (généralement complétés par des zéros à gauche). Autriche (16 chiffres) : 5 chiffres de code banque plus 11 chiffres de numéro de compte. Suisse (17 caractères) : 5 chiffres de numéro BC (Bank Clearing) plus 12 chiffres de numéro de compte. Royaume-Uni (18 caractères) : 4 lettres de code banque plus 6 chiffres de sort code plus 8 chiffres de numéro de compte. Malte (23 caractères) : 4 lettres de code banque plus 5 chiffres de code d’agence plus 18 caractères de numéro de compte.
Le format allemand est relativement compact ; de nombreux pays d’Europe du Sud ont des segments de numéro de compte deux fois plus longs.
Exemple chiffré : l’IBAN DE89 3704 0044 0532 0130 00
Décomposons l’IBAN d’exemple caractère par caractère :
| Position | Valeur | Signification |
|---|---|---|
| 1-2 | DE | Code pays Allemagne (ISO 3166) |
| 3-4 | 89 | Chiffres de contrôle (Mod 97-10) |
| 5-12 | 37040044 | Code banque Commerzbank Cologne |
| 13-22 | 0532013000 | Numéro de compte (10 chiffres, zéros à gauche) |
Le code banque 37040044 détermine le code BIC : COBADEFFXXX (Commerzbank, Frankfurt am Main, siège). Notre validateur d’IBAN effectue exactement cette correspondance automatiquement : il extrait le code banque, le recherche dans le fichier de la Bundesbank et affiche la banque, la localité et le BIC. Si la notion de code BIC reste floue, notre guide qu’est-ce qu’un code BIC ? en détaille la structure.
Vérifier l’IBAN : pourquoi chaque erreur coûte
Une faute de frappe dans l’IBAN a trois conséquences possibles, classées par ordre de probabilité :
1. Le virement est rejeté. Le cas le plus fréquent : les chiffres de contrôle ne concordent pas. La banque ne transmet même pas l’IBAN au réseau SEPA et vous recevez aussitôt un message d’erreur.
2. Le virement part vers le mauvais compte. Cela arrive plus rarement, mais c’est dangereux : si une faute de frappe produit par hasard un IBAN valide appartenant à un autre compte, l’argent part vers le mauvais destinataire. Jusqu’en octobre 2025, le récupérer était compliqué. Aujourd’hui, le nouveau dispositif de vérification du bénéficiaire (Verification of Payee, un contrôle du nom avant l’exécution) devrait largement empêcher cela.
3. Le virement est exécuté, mais ne peut pas être affecté. Cela se produit lorsque seul le numéro de compte est erroné et que le compte cible n’existe tout simplement pas. Votre banque récupère l’argent au bout de quelques jours, assorti de frais de retour (typiquement 5 à 15 euros).
Sources d’erreur fréquentes :
- Chiffres inversés, par exemple 37040044 au lieu de 37004044 (toujours la mauvaise banque).
- Confusion entre caractères semblables, comme 0/O, 1/l, 8/B. Il n’y a pas de lettres dans les parties nationales des comptes allemands, mais les banques étrangères, elles, en utilisent (GB, MT, PL).
- Zéros à gauche omis dans le numéro de compte. La banque attend 10 chiffres dans la partie allemande ; quiconque écrit « 532013 » au lieu de « 0532013000 » produit aussitôt une erreur Mod-97.
Une vérification rapide avec le validateur d’IBAN prend deux secondes et détecte les trois types d’erreur.
Cas particuliers et cas limites
La règle IBAN-only : depuis février 2016, les virements SEPA ne peuvent plus exiger le BIC ; l’IBAN seul suffit. On en dit plus dans le guide Virement SEPA : le BIC est-il nécessaire ?.
Les IBAN hors d’Europe : de nombreux pays ont adopté l’IBAN, par exemple Israël (IL, 23 caractères), la Turquie (TR, 26), l’Arabie saoudite (SA, 24) et le Brésil (BR, 29). D’autres ne l’ont pas fait : les États-Unis, le Canada, l’Australie, la Chine, le Japon, l’Inde. On y trouve des normes nationales de numéro de compte (numéro de compte plus code de routage), et les transferts vers ces pays passent par SWIFT avec un BIC.
Les IBAN virtuels (vIBAN) : des prestataires de paiement comme Stripe, Wise ou N26 émettent parfois des IBAN « virtuels » qui pointent vers un compte de regroupement. Techniquement, ils ressemblent à des IBAN normaux et passent le contrôle Mod-97. Mais la banque qui se trouve derrière n’est pas forcément le pays indiqué dans le code pays (vous pouvez recevoir un IBAN virtuel allemand alors même que votre paiement Stripe transite par une banque irlandaise).
Questions fréquentes
Peut-on mémoriser un IBAN ? Le vôtre : oui, après quelques virements. Celui des autres : inutile, puisque l’on peut enregistrer les bénéficiaires dans la banque en ligne.
Chaque IBAN est-il unique dans le monde ? Oui. La combinaison du code pays, des chiffres de contrôle et de la BBAN est unique. Deux comptes ne peuvent pas avoir le même IBAN, ni à l’intérieur d’un pays ni au-delà des frontières.
Pourquoi certains pays ont-ils des IBAN aussi longs ? Parce que leurs identifiants de compte nationaux sont plus longs. Le système bancaire maltais utilise des numéros de compte à 18 chiffres, plus un code banque, plus un code d’agence, ce qui donne au total 31 caractères.
Un IBAN peut-il changer ? Rarement. Après une fusion de banques, l’ancien compte peut rester valide en parallèle un certain temps, puis être basculé plus tard. Transférer un compte à la même personne dans la même banque ne change pas l’IBAN.
Quelle est la différence entre un IBAN et une BBAN ? La BBAN est le numéro de compte national sans l’enveloppe européenne. IBAN = code pays + chiffres de contrôle + BBAN. La BBAN seule suffit pour les virements à l’intérieur d’un même pays, mais pas pour les transferts à l’échelle SEPA.
Ce qu’il faut retenir
L’IBAN n’est pas un numéro tiré au hasard, mais un champ de données précisément structuré : deux lettres pour le pays, deux chiffres pour la somme de contrôle, puis le numéro de compte national. Les chiffres de contrôle Mod-97 filtrent pratiquement toutes les fautes de frappe, et le BIC se déduit du code banque allemand (chiffres 5 à 12). Une fois la structure comprise, on repère un IBAN erroné au premier coup d’oeil, ou l’on utilise le validateur d’IBAN, qui fait l’ensemble du travail en quelques millisecondes.
Sources
VonMateusz Viola · Zuletzt geprüft