LIVE

Verificação de contas bancárias, quatro padrões.

CBU é Mod-10 por bloco, CVU segue a mesma regra pra carteiras virtuais, IBAN é Mod-97-10 sobre toda a string, CLABE usa o dígito ponderado do Banxico. Nenhum registro público expõe todos — a Normadata implementa a matemática.

4
formatos
80+
países IBAN
0
consultas gov
EA
acesso antecipado
01 · PROBLEMA

Não existe API unificada pros formatos que seus payouts precisam

Payouts argentinos precisam de CBU. Fornecedores cross-border precisam de IBAN. Folha mexicana precisa de CLABE. Trilhos de carteira virtual (Mercado Pago, Uala, Brubank) precisam de CVU — mesmo checksum do CBU, prefixo diferente. Cada formato vem com regras próprias e as bibliotecas open-source cobrem no máximo uma. Sem validação de formato upstream, um número digitado errado vira uma transferência devolvida, um ticket de conciliação manual e uma contraparte irritada. A Normadata pega os erros de formato antes do dinheiro sair da sua carteira.

02 · CAPACIDADES

Quatro formatos, um schema

Cada identificador bancário que validamos hoje, com sua regra de checksum.

01

CBU · Argentina

22 dígitos, módulo-10 nas posições 1–8 e 9–22. Resolve bank_code → bank_name a partir do registro BCRA.

cbu → bank_code, bank_name
02

CVU · Carteiras virtuais

Mesmo comprimento e checksum do CBU. Resolução de PSP a partir de fintechs registradas no BCRA.

cvu → psp_name
03

CLABE · México

18 dígitos. Checksum ponderado Banxico (3, 7, 1 rotando). Códigos de banco e agência dentro do número.

clabe → bank_code
04

IBAN · ISO 13616

Com prefixo de país, Mod-97-10 sobre a string rotacionada. Valida comprimento por país (DE 22, BR 29…).

iban → country, checksum_valid
04 · USO

Mande qualquer combinação, receba cada campo

Os campos são independentes. Mande um CBU e um IBAN na mesma request; cada um recebe seu próprio checksum e metadata. Os campos que falham são omitidos.

POST /v1/verify/bank
$ curl -X POST https://api.normadata.io/v1/verify/bank \
    -H "X-API-Key: nd_your_key_here_22_random_bytes" \
    -H "X-Country-Hint: AR" \
    -d '{"cbu":"0170010600000123456780","iban":"DE89370400440532013000"}'
Response · 200 OK
{
  "contains_pii": true,
  "country_hint": "AR",
  "processed_at": "2026-05-15T01: 00: 00Z",
  "cbu": {
    "normalized":     "0170010600000123456780",
    "bank_code":      "017",
    "bank_name":      "Galicia",
    "checksum_valid": true,
    "valid": true
  },
  "iban": {
    "normalized":     "DE89370400440532013000",
    "country":        "DE",
    "checksum_valid": true,
    "valid": true
  }
}

Pegue contas ruins antes que custem uma transferência

Grátis durante o acesso antecipado. Manda um email e respondemos em 24 horas.