Les clés de contrôle nationales de l'IBAN

Les chiffres de contrôle que de nombreux pays gardent dans le numéro de compte, de la clé RIB française au CIN italien, et ce qui les distingue de ceux de l'IBAN.

Mis à jour le

Tout IBAN porte deux chiffres de contrôle juste après le code pays, calculés avec MOD-97. Beaucoup de pays ajoutent leurs propres chiffres de contrôle à l'intérieur du BBAN, le numéro de compte national. La plupart sont plus anciens que l'IBAN : les banques s'en servaient pour repérer les fautes de frappe dans les numéros de compte nationaux avant que l'IBAN n'existe, et l'IBAN les a conservés en reprenant ces numéros.

Deux niveaux de contrôle

Prenons l'IBAN français d'exemple FR14 2004 1010 0505 0001 3M02 606. Le 14 qui suit FR correspond aux chiffres de contrôle de l'IBAN. Les deux derniers chiffres, 06, forment la clé RIB, le contrôle national français. Ils ne protègent pas la même chose :

Chiffres de contrôle de l'IBAN Clé de contrôle nationale
Emplacement Positions 3 et 4, dans tout IBAN Dans le BBAN, à un endroit fixé par chaque pays
Méthode MOD 97-10 (ISO/IEC 7064), la même partout Une règle nationale, différente d'un pays à l'autre
Ce qui est contrôlé Tout l'IBAN, code pays compris En général le code banque, le code guichet et le numéro de compte
Qui fixe la règle La norme ISO 13616 La banque centrale ou l'association bancaire du pays

Les deux niveaux sont indépendants. Un IBAN peut avoir des chiffres de contrôle MOD-97 corrects et échouer quand même au contrôle national, par exemple quand quelqu'un a placé dans un IBAN un numéro national mal saisi, puis calculé les chiffres de contrôle de l'IBAN. L'inverse arrive aussi : changez un chiffre d'un IBAN valide et le contrôle MOD-97 échoue, même si le contrôle national passe encore.

Les principales méthodes

Les contrôles nationaux ont l'air très différents, mais la plupart appartiennent à quelques grandes familles.

Les terminaisons MOD 97

Plusieurs pays terminent le BBAN par deux chiffres calculés avec MOD 97-10, la même méthode que pour les chiffres de contrôle de l'IBAN, appliquée aux chiffres qui les précèdent. C'est le cas du Portugal (les chiffres de contrôle du NIB), de la Slovénie, de la Serbie, du Monténégro, de la Macédoine du Nord, de la Bosnie-Herzégovine, du Kosovo et du Timor oriental.

Les clés RIB

La clé RIB française vaut 97 moins le reste de la division par 97 de 89 × code banque + 15 × code guichet + 3 × numéro de compte. Les lettres du numéro de compte sont d'abord converties en chiffres (A et J valent 1, B, K et S valent 2, et ainsi de suite). La clé rend le numéro national entier divisible par 97. La France et Monaco la partagent, et la Tunisie et la Mauritanie utilisent des clés RIB qui visent le même but : un numéro de compte entier divisible par 97.

Le CIN italien

L'Italie et Saint-Marin placent une lettre de contrôle, le CIN, au début du BBAN. Elle couvre les 22 caractères qui la suivent : le code banque ABI, le code guichet CAB et le numéro de compte. Les caractères en position impaire sont convertis à l'aide d'un tableau, ceux en position paire gardent leur valeur simple (un chiffre vaut lui-même, les lettres vont de A = 0 à Z = 25). La somme divisée par 26 laisse un reste de 0 à 25, qui devient une lettre de A à Z.

Les chiffres de contrôle espagnols

Un code de compte espagnol (CCC, Código Cuenta Cliente) contient deux chiffres de contrôle entre le code guichet et le numéro de compte. Le premier contrôle le code banque et le code guichet, le second le numéro de compte à 10 chiffres. Chacun part d'une somme pondérée, avec les poids 1, 2, 4, 8, 5, 10, 9, 7, 3, 6 : on divise cette somme par 11 et on soustrait le reste de 11. Un résultat de 11 devient 0, et un résultat de 10 devient 1. Voir le format espagnol.

Les sommes pondérées

Beaucoup de pays multiplient chaque chiffre par un poids, additionnent les produits et gardent le reste :

  • Belgique : les deux derniers chiffres sont les dix premiers chiffres modulo 97 (97 à la place de 0).
  • Norvège : MOD 11 avec les poids 5, 4, 3, 2, 7, 6, 5, 4, 3, 2. Les numéros de compte qui demanderaient la valeur 10 ne sont jamais attribués.
  • Finlande : l'algorithme de Luhn, celui des numéros de carte bancaire.
  • Estonie : la méthode 7-3-1, avec les poids 7, 3, 1 répétés en partant de la droite.
  • Hongrie : deux chiffres avec les poids 9, 7, 3, 1, l'un pour le code banque et le code guichet, l'autre pour le numéro de compte.
  • Pologne : un chiffre à la fin du code d'établissement à 8 chiffres, poids 3, 9, 7, 1.
  • Albanie : un chiffre après le code banque et le code guichet, poids 9, 7, 3, 1.
  • République tchèque et Slovaquie : le préfixe de compte et le numéro de compte doivent chacun donner une somme pondérée divisible par 11.
  • Croatie : ISO 7064 MOD 11,10, une fois pour le code banque et une fois pour le numéro de compte.
  • Costa Rica : le dernier chiffre du numéro de compte client, poids de 1 à 9 puis de 1 à 7, modulo 11.
  • Russie : la clé de contrôle de la Banque de Russie, poids 7, 1, 3 sur la fin du code banque BIK et sur le numéro de compte.

Pays par pays

Le tableau liste tous les pays dont ce site calcule la clé nationale, avec la position de ses chiffres dans l'IBAN. Suivez le lien d'un pays pour ouvrir son générateur et son format complet.

Pays Positions Méthode Chiffres de contrôle IBAN Source
Albanie 12 Poids 9, 7, 3, 1 (mod 10) Variables selon le compte Bank of Albania, Decision No. 26 of 4.5.2022
Belgique 15–16 10 premiers chiffres mod 97 Variables selon le compte Febelfin / National Bank of Belgium
Bosnie-Herzégovine 19–20 MOD 97-10 BA39 Centralna banka Bosne i Hercegovine
Costa Rica 22 Poids de 1 à 9 (mod 11) Variables selon le compte Banco Central de Costa Rica, Cuenta Cliente
Croatie 11, 21 ISO 7064 MOD 11,10 Variables selon le compte Hrvatska narodna banka, Narodne novine 13/2025
Espagne 13–14 Chiffres de contrôle DC (mod 11) Variables selon le compte Consejo Superior Bancario, Código Cuenta Cliente (AEB/CECA)
Estonie 20 7-3-1 (mod 10) Variables selon le compte Estonian Banking Association (Pangaliit)
Finlande 18 Luhn (mod 10) Variables selon le compte Finance Finland (Finanssiala)
France 26–27 Clé RIB (mod 97) FR76 si le numéro de compte ne contient que des chiffres CFONB, RIB standard (Banque de France)
Hongrie 12, 28 Poids 9, 7, 3, 1 (mod 10) Variables selon le compte Magyar Nemzeti Bank, 35/2017. (XII. 14.) MNB rendelet
Italie 5 Lettre de contrôle CIN (mod 26) Variables selon le compte ABI, coordinate bancarie (Banca d'Italia)
Kosovo 19–20 MOD 97-10 XK05 Central Bank of the Republic of Kosovo (BQK)
Macédoine du Nord 18–19 MOD 97-10 MK07 National Bank of the Republic of North Macedonia
Mauritanie 26–27 Clé RIB (mod 97) MR13 Banque Centrale de Mauritanie, Instruction 16/GR/2008
Monaco 26–27 Clé RIB (mod 97) MC58 si le numéro de compte ne contient que des chiffres CFONB, RIB standard (Banque de France)
Monténégro 21–22 MOD 97-10 ME25 Centralna banka Crne Gore
Norvège 15 MOD 11 Variables selon le compte Bits AS / Finans Norge
Pologne 12 Poids 3, 9, 7, 1 (mod 10) Variables selon le compte Narodowy Bank Polski
Portugal 24–25 MOD 97-10 PT50 Banco de Portugal, NIB
République tchèque 14, 24 MOD 11 pondéré Variables selon le compte Česká národní banka, vyhláška č. 169/2011 Sb.
Russie 22 Clé de contrôle, poids 7, 1, 3 Variables selon le compte Bank of Russia, Procedure No. 515 of 8.9.1997
Saint-Marin 5 Lettre de contrôle CIN (mod 26) Variables selon le compte Banca Centrale della Repubblica di San Marino (ABI standard)
Serbie 21–22 MOD 97-10 RS35 Narodna banka Srbije
Slovaquie 14, 24 MOD 11 pondéré Variables selon le compte Národná banka Slovenska, opatrenie č. 8/2009
Slovénie 18–19 MOD 97-10 SI56 Banka Slovenije, Uradni list RS 85/2016
Timor oriental 22–23 MOD 97-10 TL38 Banco Central de Timor-Leste
Tunisie 23–24 Clé RIB (mod 97) TN59 Banque Centrale de Tunisie

Pour quelques autres pays, comme le Burundi, Djibouti et Sao Tomé-et-Principe, les exemples du registre laissent penser qu'il existe aussi un contrôle national, mais nous n'en avons pas trouvé de description officielle. Le générateur laisse ces chiffres aléatoires.

Des chiffres de contrôle IBAN fixes

Avec une terminaison MOD 97 ou une clé RIB, le BBAN laisse toujours le même reste quand on le divise par 97, quel que soit le compte. Comme les chiffres de contrôle de l'IBAN ne dépendent que de ce reste et du code pays, tous les IBAN valides de ces pays ont les mêmes chiffres de contrôle : tous les IBAN portugais commencent par PT50, tous les IBAN serbes par RS35 et tous les IBAN tunisiens par TN59. Les IBAN français dont le numéro de compte ne contient que des chiffres commencent tous par FR76. Des lettres dans un numéro de compte français changent le résultat : c'est pourquoi l'exemple du registre cité plus haut commence par FR14.

C'est une vérification rapide et pratique quand vous lisez des IBAN de ces pays : d'autres chiffres de contrôle signifient que l'IBAN est faux.

Un validateur doit-il les vérifier ?

Le contrôle MOD-97 détecte déjà toute erreur sur un seul chiffre et toute inversion de deux chiffres voisins : les clés nationales apportent donc peu contre les fautes de frappe. Elles servent dans d'autres cas : un IBAN construit à la main à partir d'un numéro national erroné, ou un IBAN inventé dont l'auteur n'a calculé que les chiffres MOD-97.

Avant de les ajouter à votre propre validateur :

  • Chaque pays demande son propre algorithme, et chacun doit suivre exactement la règle officielle. Une implémentation erronée rejette les IBAN de vrais clients, ce qui est pire que de ne rien vérifier.
  • Testez chaque algorithme avec des exemples au format réel, comme l'exemple du registre affiché sur chaque page pays.
  • Gardez un message d'erreur précis. « La clé de contrôle nationale ne correspond pas » aide davantage un utilisateur que « IBAN invalide ».

Notre validateur d'IBAN vérifie les clés nationales partout où la règle est connue, et le signale quand elle ne l'est pas. La bibliothèque open source iban-check couvre les contrôles de structure et le MOD-97.

Tester avec les clés nationales

Le générateur calcule la clé nationale de chaque pays du tableau ci-dessus, dans les deux modes, réaliste et entièrement aléatoire : les validateurs qui la vérifient acceptent donc les IBAN générés. Pour un test négatif, modifiez l'un des chiffres de la clé nationale et recalculez les chiffres de contrôle de l'IBAN : l'IBAN passe alors le contrôle MOD-97 mais échoue au contrôle national. Le validateur propose les bons chiffres de contrôle IBAN quand ils sont faux. L'article IBAN de test pour les développeurs et la QA présente les autres niveaux de contrôle d'un validateur.

Sources

  • Registre IBAN de SWIFT, version 102 (juin 2026) : la structure du BBAN de chaque pays et les exemples utilisés plus haut.
  • ISO/IEC 7064 : les systèmes de caractères de contrôle MOD 97-10 et MOD 11,10.
  • Banque nationale tchèque, IBAN : le décret 169/2011 sur le numéro de compte tchèque et son contrôle.
  • 35/2017. (XII. 14.) MNB rendelet, annexe 1 : le numéro de compte hongrois et ses chiffres de contrôle.
  • Les sources nationales citées dans le tableau : banques centrales, associations bancaires et normes qu'elles publient.

Besoin d'un IBAN de test ?

Générez un IBAN valide pour l'un des 91 pays proposés, copiez-le au format qui vous convient et voyez ce que signifie chaque segment.

Ouvrir le générateur