Salta al contingut

Generador i Validador d'IBAN - Eina de Proves de Dades Bancàries

Genera IBANs de proves vàlids o valida els existents a l'instant. Admet 10 països europeus amb validació MOD 97. Perfecte per a proves de programari financer i desenvolupament.

Generador i Validador d'IBAN

Calculadora de càrrega...
📚

Documentació

Eina per generar i validar IBAN

Un IBAN (número internacional de compte bancari) és un codi estàndard que identifica un compte bancari per a pagaments internacionals. Aquesta eina genera IBAN de prova aleatoris i amb el format correcte per a deu països europeus, i comprova si un IBAN existent és vàlid mitjançant la fórmula de dígits de control MOD 97 que utilitzen els bancs.

Què és un IBAN?

Abans que existissin els IBAN, cada país utilitzava el seu propi format de número de compte bancari. Els pagaments transfronterers sovint fallaven perquè un número vàlid en un país no significava res en un altre. L’Organització Internacional per a la Normalització (ISO) va crear l’estàndard IBAN, ISO 13.616, per resoldre aquest problema. Cada IBAN conté un codi de país i dos dígits de control que permeten a un ordinador detectar la majoria d’errors d’escriptura abans d’enviar un pagament.

Un IBAN té tres parts:

  • Codi de país: dues lletres, com ara DE per a Alemanya o GB per al Regne Unit.
  • Dígits de control: dos dígits calculats amb la fórmula MOD 97, que s’explica més avall.
  • Número bàsic de compte bancari (BBAN): un bloc específic de cada país que sol contenir un codi bancari, de vegades un codi de sucursal, i un número de compte.

Els IBAN poden contenir fins a 34 caràcters, però la majoria dels europeus en tenen entre 16 i 28. La longitud i la disposició interna depenen completament del país. Un IBAN alemany té 22 caràcters; un de francès en té 27.

Estructura de l’IBAN per país

PaísLongitudEstructuraExemple
Alemanya (DE)22DE2!n8!n10!nDE89370400440532013000
Regne Unit (GB)22GB2!n4!a6!n8!nGB29NWBK60161331926819
França (FR)27FR2!n5!n5!n11!c2!nFR1420041010050500013M02606
Espanya (ES)24ES2!n4!n4!n1!n1!n10!nES9121000418450200051332
Itàlia (IT)27IT2!n1!a5!n5!n12!cIT60X0542811101000000123456
Països Baixos (NL)18NL2!n4!a10!nNL91ABNA0417164300
Suïssa (CH)21CH2!n5!n12!cCH9300762011623852957
Àustria (AT)20AT2!n5!n11!nAT611904300234573201
Bèlgica (BE)16BE2!n3!n7!n2!nBE68539007547034
Polònia (PL)28PL2!n8!n16!nPL61109010140000071219812874

A la columna d’estructura, n vol dir un dígit, a vol dir una lletra i c vol dir una lletra o un dígit. El número que precedeix cada lletra indica quants caràcters utilitza aquella part. Per exemple, 4!a6!n8!n en el format del Regne Unit vol dir quatre lletres, després sis dígits i després vuit dígits.

Com es calculen els dígits de control de l’IBAN (la fórmula MOD 97)

Els dígits de control es calculen amb l’algorisme de la norma ISO 7064, conegut com a MOD 97-10. Per generar els dígits de control d’un IBAN nou:

  1. Escriu el BBAN, seguit del codi de país i del marcador de posició 00.
  2. Substitueix cada lletra per un número: A = 10, B = 11, i així successivament fins a Z = 35. Els dígits es mantenen igual.
  3. Llegeix tot el resultat com un únic número llarg i calcula el residu de dividir-lo per 97.
  4. Resta aquest residu de 98. El resultat són els dos dígits de control. Si el resultat és d’un sol dígit, afegeix-hi un zero al davant.

En forma de fórmula: check digits = 98 − (N mod 97), on N és la cadena numèrica construïda als passos 1 i 2.

Exemple: càlcul dels dígits de control d’un IBAN alemany

Prenem el codi bancari alemany 37040044 i el número de compte 0532013000.

  1. BBAN + país + 00: 370400440532013000 + DE + 00 = 370400440532013000DE00
  2. Substitució de les lletres: D = 13, E = 14, de manera que la cadena esdevé 370400440532013000131400.
  3. En dividir aquest número per 97, el residu és 9.
  4. 98 − 9 = 89.

Els dígits de control són 89, de manera que l’IBAN complet és DE89370400440532013000.

Com es valida un IBAN

Per comprovar si un IBAN existent és vàlid, el procés es fa en l’altre sentit:

  1. Elimina els espais i trasllada els quatre primers caràcters (el codi de país i els dígits de control) al final de la cadena.
  2. Substitueix cada lletra per un número mitjançant la mateixa regla, A = 10 fins a Z = 35.
  3. Calcula el residu de dividir el número resultant per 97.
  4. L’IBAN només és vàlid si el residu és igual a 1.

Aquesta regla detecta gairebé tots els errors habituals d’entrada de dades, inclosos un dígit incorrecte o dos dígits intercanviats, perquè canviar qualsevol caràcter gairebé sempre modifica el residu.

Abans de fer la comprovació MOD 97, aquesta eina també verifica que el codi de país sigui reconegut, que l’IBAN tingui la longitud exacta requerida per a aquell país i que les lletres i els dígits només apareguin als llocs permesos pel format del país. Cada comprovació genera el seu propi missatge d’error, de manera que un error assenyala el problema concret en lloc de mostrar un resultat genèric d’«invàlid».

Ús de l’eina

Pestanya Generador: selecciona un país al menú desplegable i fes clic a «Genera l’IBAN». L’eina crea un BBAN aleatori amb el format correcte per a aquell país, calcula els dígits de control corresponents i mostra el resultat amb el desglossament de les parts. El botó «Copia al porta-retalls» copia l’IBAN complet.

Pestanya Validador: escriu o enganxa un IBAN, amb espais o sense. L’eina el comprova mentre l’escrius i mostra si és vàlid. Per a un IBAN vàlid, mostra el codi de país, els dígits de control, el codi bancari, el codi de sucursal (quan el format del país n’inclou un) i el número de compte.

Com que el codi de país ocupa els dos primers caràcters, el validador no necessita que el país se seleccioni manualment; llegeix el codi i aplica automàticament les regles corresponents.

Tot s’executa al navegador. No s’envia cap IBAN a un servidor ni se’n desa cap enlloc.

Per què aquesta eina és útil per fer proves

El programari que gestiona pagaments necessita dades de prova que es comportin com un IBAN real però que no estiguin vinculades a cap compte real. Una cadena de dígits aleatoris sol fallar la comprovació MOD 97, de manera que les proves basades en aquesta cadena poden fallar per un motiu incorrecte: dades de prova inadequades, no pas un error en el codi que s’està provant. Generar un IBAN amb el format correcte evita aquest problema, perquè supera la mateixa validació que faria un sistema en producció, però no té cap relació amb cap compte bancari real.

Preguntes més freqüents

Per a què s’utilitza un IBAN? Identifica un compte bancari concret per a transferències internacionals i nacionals, mitjançant un format que els ordinadors poden comprovar per detectar errors abans d’enviar un pagament.

Els IBAN que genera aquesta eina estan vinculats a comptes bancaris reals? No. Són números aleatoris que segueixen el format correcte i superen la comprovació MOD 97, però no corresponen a cap compte real. Només s’han d’utilitzar per a proves, desenvolupament o formació, mai per a transferències reals.

Per què els IBAN tenen longituds diferents segons el país? Cada país va dissenyar el seu propi format de número bàsic de compte bancari abans que l’estàndard IBAN els combinés sota un únic codi de país i un sistema de dígits de control. La norma ISO 13.616 va fixar la longitud de cada país, però no va obligar tots els països a utilitzar la mateixa disposició interna.

Els espais d’un IBAN són importants? No. Els IBAN sovint es mostren en grups de quatre caràcters per facilitar-ne la lectura, com ara DE89 3704 0044 0532 0130 00, però els espais no afecten la validació. DE89370400440532013000 és el mateix IBAN sense espais.

Quins països admet aquesta eina? Deu països europeus: Alemanya, el Regne Unit, França, Espanya, Itàlia, els Països Baixos, Suïssa, Àustria, Bèlgica i Polònia.

Quina diferència hi ha entre un IBAN i un codi SWIFT/BIC? Un codi SWIFT/BIC identifica un banc o una sucursal bancària. Un IBAN identifica un compte concret d’aquell banc. Les transferències internacionals sovint necessiten tots dos: el codi SWIFT/BIC dirigeix el pagament al banc correcte i l’IBAN el dirigeix al compte correcte.

Referències

  1. ISO 13616-1:2007 — Especificació de l’estructura de l’IBAN.
  2. Registre d’IBAN de SWIFT — Formats oficials d’IBAN per país.
  3. ISO 7064:2003 — Sistemes de caràcters de control, inclòs MOD 97-10.