BAI2 para camt.053: extratos bancários dos EUA e Canadá
O BAI2 é o formato de extrato bancário dominante nos EUA e no Canadá. Veja a correspondência com ISO 20022 camt.053 e converta-o gratuitamente no navegador.
Valide o seu ficheiro agora
Grátis, instantâneo e 100% no seu navegador - nenhum ficheiro é enviado.
O que é um ficheiro BAI2?
O BAI2 é o formato "Cash Management Balance Reporting" publicado pelo Bank Administration Institute (BAI). A versão 2 foi lançada em 1987 e continua a ser o formato de extrato bancário de fim de dia dominante nos Estados Unidos e no Canadá — o equivalente norte-americano do SWIFT MT940 europeu. Os bancos utilizam-no para entregar o reporte de saldos e de transações a sistemas ERP e de tesouraria.
Um ficheiro BAI2 é uma hierarquia de registos numéricos, cada um escrito como uma linha delimitada por vírgulas e terminada por uma barra (/): um 01 File Header envolve um ou mais 02 Group Headers, cada grupo envolve um ou mais 03 Account Identifiers, e cada conta contém as suas linhas 16 Transaction Detail (com registos 88 Continuation quando uma linha transborda). Duas particularidades do BAI2 confundem quem começa: os montantes são expressos em unidades menores inteiras, sem separador decimal (10000 significa 100.00 numa moeda de 2 casas decimais como USD ou EUR, mas 100 unidades inteiras em JPY, e 10.000 numa moeda de 3 casas decimais como KWD ou BHD), e o sentido débito/crédito não é uma marca, mas um código de tipo numérico — 100–399 para créditos, 400–699 para débitos.
Tal como o MT940, o BAI2 não tem esquema XSD, pelo que a verificação de integridade fundamental é aritmética. O 03 Account Identifier transporta os saldos por código numérico — 010 para o saldo contabilístico de abertura e 015 para o saldo contabilístico de fecho (040/045 são saldos disponíveis) — e um ficheiro bem formado reconcilia: o saldo contabilístico de abertura mais o líquido de todas as transações deve ser igual ao saldo contabilístico de fecho. Um ficheiro que não reconcilia perdeu, duplicou ou atribuiu o sinal errado a uma linha.
Os registos dentro de um ficheiro BAI2
Um ficheiro BAI2 é construído a partir de um pequeno conjunto de códigos de registo numéricos que se aninham sempre pela mesma ordem. Eis os que transportam o ficheiro, os grupos, as contas, os saldos e as transações.
01 — File Header
Abre o ficheiro. Transporta os identificadores do remetente e do destinatário, a data e a hora de criação e um número de identificação do ficheiro.
02 — Group Header
Inicia um grupo de contas para uma origem/destino e uma data de referência. Um ficheiro pode conter vários grupos.
03 — Account Identifier
Identifica a conta e lista os seus saldos por código numérico: 010 saldo contabilístico de abertura, 015 saldo contabilístico de fecho, 040/045 saldos disponíveis, cada um com um montante em unidades menores inteiras.
16 — Transaction Detail
Um registo por transação: um código de tipo numérico que define o sentido (100–399 crédito, 400–699 débito), o montante em unidades menores inteiras, uma referência bancária e uma descrição em texto.
88 — Continuation
Dá continuação ao registo anterior quando o seu conteúdo excede uma linha — na maioria das vezes o detalhe em texto livre de uma transação 16.
49 / 98 / 99 — Trailers
Fecham cada nível e transportam os totais de controlo: 49 o Account Trailer, 98 o Group Trailer e 99 o File Trailer no final.
Como o BAI2 corresponde ao ISO 20022 camt.053
O camt.053 (Bank-to-Customer Statement) é a substituição moderna do BAI2 em XML ISO 20022. Onde o BAI2 condensa um saldo num registo conciso como 03,123456789,USD,010,10000,,,015,12500,,/, o camt.053 exprime a mesma informação como elementos <Bal> estruturados com códigos de tipo explícitos (OPBD para o saldo de abertura, CLBD para o saldo de fecho), um montante com atributo de moeda, um indicador de crédito/débito e uma data. É XML, muito mais rico do que o BAI2, e validado contra um XSD oficial em vez de reconciliado à mão.
A correspondência é direta no essencial: o 03 Account Identifier torna-se a conta camt.053 mais os seus blocos de saldo OPBD e CLBD, e cada 16 Transaction Detail torna-se um <Ntry> (lançamento contabilizado) com o seu montante, a sua data de contabilização, a sua descrição como informação de remessa e — de forma crucial — um CdtDbtInd derivado do código de tipo BAI2 (100–399 → crédito, 400–699 → débito). O montante em unidades menores inteiras é reescalado para um decimal correto utilizando o número de casas decimais da moeda.
É por isto que a migração importa na prática: as plataformas modernas de ERP e de tesouraria (SAP, Kyriba e outras) padronizam cada vez mais no camt.053 para a importação de extratos, independentemente de onde a conta é mantida. As equipas financeiras norte-americanas assentes em fluxos BAI2 precisam de uma forma fiável de os converter, para que o mesmo extrato circule pelo mesmo pipeline ISO 20022 que as suas contas europeias.
Converter BAI2 para camt.053 sem carregar os seus dados
Uma conversão só é útil se o resultado for um camt.053 válido que o seu ERP aceite efetivamente. A chave está em transportar os saldos reais de abertura e de fecho diretamente dos códigos 010/015, reescalar os montantes em unidades menores inteiras usando as casas decimais da moeda para que 10000 USD se torne 100.00, e derivar o indicador de débito/crédito fielmente a partir de cada código de tipo 16 — um código 400–699 torna-se um lançamento a débito, um código 100–399 um lançamento a crédito — para que nada fique com o sinal errado. Os intervalos ambíguos (700+ empréstimos, 900+ códigos personalizados específicos do banco) são sinalizados em vez de adivinhados.
Tão importante quanto isto é o que NÃO envia para lado nenhum. Um extrato bancário são dados sensíveis: números de conta, contrapartes, montantes. A ValidateFin processa e converte o BAI2 inteiramente no seu navegador — o ficheiro nunca sai da sua máquina, não há carregamento e nada é armazenado num servidor. É essa a diferença entre um rápido colar-e-converter e enviar um extrato por email para um serviço de terceiros.
Antes de converter, a ferramenta também reconcilia o extrato: o saldo contabilístico de abertura (010) mais o líquido das transações deve ser igual ao saldo contabilístico de fecho (015). Se não coincidirem, recebe um aviso em vez de um camt.053 silenciosamente incorreto — a mesma verificação aritmética que um analista de tesouraria cuidadoso faria à mão.
Converta já o seu BAI2 para camt.053
Coloque o seu ficheiro BAI2 no visualizador BAI2 da ValidateFin para ver os saldos e as transações, e depois exporte um extrato camt.053.001.02 válido — inteiramente no seu navegador. Nenhum ficheiro BAI2 é alguma vez carregado para um servidor.
Abrir o visualizador e conversor BAI2Perguntas frequentes
O que é um ficheiro BAI2?
O BAI2 é o formato Cash Management Balance Reporting do Bank Administration Institute, versão 2, lançado em 1987. É o formato de extrato bancário de fim de dia dominante nos Estados Unidos e no Canadá — o equivalente norte-americano do SWIFT MT940 europeu.
Qual é a diferença entre BAI2 e MT940?
Ambos são formatos de extrato bancário em texto, herdados e sem esquema. O MT940 é a norma SWIFT usada sobretudo na Europa, com campos marcados por etiquetas com dois-pontos e uma marca de letra para débito/crédito. O BAI2 domina nos EUA e no Canadá, usando códigos de registo numéricos aninhados (01/02/03/16…) e um código de tipo numérico — não uma marca — para o sentido. Ambos estão a ser substituídos pelo ISO 20022 camt.053.
Posso converter BAI2 para camt.053 gratuitamente?
Sim. A ferramenta BAI2 da ValidateFin lê um ficheiro BAI2 e exporta um extrato camt.053.001.02 válido gratuitamente, inteiramente no seu navegador. Sem registo e sem carregamento.
O meu extrato bancário é carregado para um servidor?
Não. O ficheiro BAI2 é lido, processado e convertido inteiramente no seu navegador com JavaScript. Nenhum dado do extrato é alguma vez enviado para um servidor ou nele armazenado.
Como é que o BAI2 codifica um débito ou um crédito?
Pelo código de tipo numérico no registo 16 Transaction Detail, não por uma marca: 100–399 são créditos e 400–699 são débitos. Os códigos 700 e superiores (empréstimos) e 900 e superiores (códigos personalizados específicos do banco) são ambíguos e não podem ser classificados apenas pelo intervalo.
Como sei que um ficheiro BAI2 está correto?
O BAI2 não tem esquema, pelo que a verificação fundamental é aritmética: o saldo contabilístico de abertura (código 010) mais o líquido de todas as transações deve ser igual ao saldo contabilístico de fecho (código 015). Se não reconciliar, uma linha foi perdida, duplicada ou ficou com o sinal errado.
Porquê converter BAI2 para camt.053?
O camt.053 é o extrato XML ISO 20022, validado contra um esquema oficial e muito mais rico do que os registos numéricos concisos do BAI2. Os sistemas modernos de ERP e de tesouraria (SAP, Kyriba) importam cada vez mais apenas camt.053, pelo que converter o BAI2 permite que as contas norte-americanas circulem pelo mesmo pipeline que as europeias.
O conversor lida com ficheiros com várias contas?
Sim. O parser lê todos os grupos e contas (02/03) do ficheiro e o visualizador mostra cada um; a exportação camt.053 abrange a primeira conta — o caso comum de migração um-ficheiro-uma-conta.