1001Ferramentas
🏦 Validadores

Validador de IBAN

Valide qualquer IBAN internacional pelo padrão ISO 13616 (mod-97) com verificação de país e comprimento. Validação 100% no navegador.

Como funciona a validação de IBAN?

O IBAN (International Bank Account Number) segue o padrão ISO 13616: começa com duas letras do código de país, dois dígitos de controle e o número de conta doméstico (BBAN). Cada país tem um comprimento fixo — Alemanha 22, França 27, Brasil 29, Reino Unido 22 — e uma estrutura própria para o BBAN.

A validação usa o algoritmo mod-97 definido na ISO 7064: os 4 primeiros caracteres são movidos para o final, as letras viram números (A=10, B=11, …, Z=35) e o número resultante é dividido por 97. Se o resto for igual a 1, o IBAN é estruturalmente válido.

A validação garante que os dígitos de controle batem com o BBAN, mas não confirma se a conta existe ou se está ativa — isso só pode ser feito pelo banco. Toda a verificação acontece no seu navegador, sem enviar o IBAN a nenhum servidor.

IBAN segundo a ISO 13616: o formato global de conta bancaria

O International Bank Account Number (IBAN) e definido pela ISO 13616, publicada inicialmente em 1997 e revisada em 2007 e 2020. Existe para tornar pagamentos transfronteiricos roteaveis sem ambiguidade: cada IBAN codifica pais, identificador do banco, agencia (quando aplicavel) e numero local da conta em uma unica string que cabe numa mensagem SWIFT MT103 ou num payload ISO 20022 pacs.008.

Um IBAN e composto por 2 letras do pais (ISO 3166-1 alpha-2), 2 digitos verificadores e um BBAN (Basic Bank Account Number) especifico de cada pais. O comprimento total e fixo por pais e varia de 15 (Noruega) a 34 caracteres. O registro e mantido pela SWIFT como autoridade oficial da ISO 13616.

O algoritmo mod-97-10 (ISO 7064)

Os digitos verificadores do IBAN usam o esquema ISO 7064 mod 97-10, a mesma familia que protege VAT IDs europeus e ICCIDs de SIM. Para validar:

  • Mova os 4 primeiros caracteres (pais + verificadores) para o final da string.
  • Substitua cada letra por dois digitos: A=10, B=11, ..., Z=35.
  • Interprete a string decimal resultante como um inteiro grande.
  • O IBAN e valido se inteiro mod 97 == 1.
iban = "DE89370400440532013000"
move = "370400440532013000DE89"
sub  = "370400440532013000131489"
       (D=13, E=14)
n mod 97 = 1  -> valido

Para gerar os digitos verificadores, defina-os como 00, aplique a mesma transformacao, calcule 98 - (n mod 97) e preencha com dois digitos. Isso garante o invariante final mod-97 = 1.

Comprimento por pais

  • BR Brasil: 29 — BR97 0036 0305 0000 1000 9795 493P 1
  • PT Portugal: 25; DE Alemanha: 22; GB Reino Unido: 22
  • FR Franca: 27; ES Espanha: 24; IT Italia: 27
  • NL Holanda: 18; CH Suica: 21; BE Belgica: 16

Um validador robusto precisa checar tanto o comprimento contra o registro do pais quanto o mod-97. Muitas APIs (Wise, Adyen, Stripe Treasury) rejeitam IBANs aritmeticamente corretos mas com comprimento incompativel com o pais declarado — sinal forte de erro de digitacao ou corrupcao em copia/cola.

SEPA, TARGET2 e SEPA Instant

O IBAN e a porta de entrada dos trilhos SEPA (Single Euro Payments Area) operados pelo Banco Central Europeu. O SEPA cobre 36 paises (UE + EEE + Reino Unido + Suica + Monaco + microestados). Dentro do SEPA:

  • SEPA Credit Transfer (SCT): liquida em 1 dia util.
  • SEPA Instant (SCT Inst): liquidacao em 10 segundos, 24/7, ate EUR 100.000 por transferencia.
  • TARGET2: sistema RTGS do BCE para liquidacao de alto valor.
  • SEPA Direct Debit (SDD): cobranca via mandato + IBAN.

O Brasil nao e membro do SEPA; o IBAN brasileiro existe no registro mas e praticamente nunca usado internamente — o Pix (chave, QR ou copia-e-cola) deslocou identificadores tipo IBAN dentro do pais. O IBAN brasileiro aparece principalmente em remessa internacional quando o banco da contraparte exige roteamento ISO 13616.

Bibliotecas, AML e screening OFAC

Bibliotecas testadas em producao: iban no npm (Kevin Boltz), schwifty em Python, iban4j em Java. Encapsulam a matematica mod-97 mais as tabelas do registro SWIFT. Em compliance, a validacao de IBAN sempre vem acompanhada de:

  • Screening OFAC / sancoes UE: o codigo do banco no BBAN e comparado com listas restritivas.
  • AML (antilavagem): monitoramento transacional sobre IBANs validos.
  • Inferencia de BIC: em alguns paises o BBAN ja codifica o codigo do banco, tornando o BIC/SWIFT opcional.

FAQ

O Brasil usa IBAN no dia a dia? Nao. O IBAN brasileiro existe no papel mas e usado quase so para remessas internacionais entrando. Transferencias domesticas usam Pix, TED ou DOC, identificadas por agencia + conta, nao por IBAN.

O SEPA inclui o Brasil? Nao. O SEPA e restrito a 36 paises europeus. Uma SEPA Credit Transfer nao pode ser enviada a um IBAN BR — o banco rejeita ou roteia como SWIFT wire (mais caro, mais lento).

Da para consultar saldo a partir do IBAN? Nao. O IBAN e identificador, nao token de autenticacao. Saldo e extrato exigem consentimento de open banking (PSD2 na Europa, Open Finance no Brasil) assinado pelo titular.

Por que o IBAN BR tem 29 caracteres? O BBAN brasileiro empacota o codigo de 8 digitos do banco, a agencia de 5 digitos, a conta de 10 digitos, o tipo de conta e um caractere verificador — tudo exigido pelo esquema interno de roteamento do Bacen.

O mod-97 garante que a conta existe? Nao. Ele so prova que o IBAN esta bem formado. Confirmar existencia exige uma API de verificacao de IBAN (Wise, ClearBank, SurePay), normalmente usada para evitar fraude de confirmation-of-payee.

Ferramentas Relacionadas

Valide um IBAN internacional

O IBAN é o número de conta bancária padronizado usado em transferências internacionais, principalmente na Europa. Um dígito errado pode mandar o dinheiro para o lugar errado, por isso ele traz uma verificação embutida. Esta ferramenta valida qualquer IBAN pelo padrão ISO 13616.

Ela aplica a verificação mod-97, confere o código do país e o comprimento esperado para aquele país (cada um tem o seu), apontando se o IBAN é válido. É essencial para quem faz ou recebe transferências internacionais e quer ter certeza de que digitou a conta corretamente antes de confirmar.

A validação roda inteiramente no navegador, sem enviar o número para fora. Cole o IBAN e confirme a validade na hora, com a segurança de quem trabalha localmente.