Se você desenvolve sistemas de gestão financeira (ERP), plataformas de e-commerce, módulos de cobrança ou trabalhou na integração de um banco brasileiro, com certeza já se deparou com arquivos de extensão .rem (Remessa) ou .ret (Retorno). Esses arquivos são baseados no padrão CNAB (Centro Nacional de Automação Bancária) da FEBRABAN (Federação Brasileira de Bancos).
Embora existam APIs bancárias modernas via Pix e Open Finance, os padrões CNAB continuam sendo a espinha dorsal de cobranças por boleto, pagamentos em lote de salários, fornecedores e conciliação bancária massiva no Brasil.
Neste artigo, vamos comparar detalhadamente os dois principais formatos utilizados no mercado: o CNAB 240 e o CNAB 400, explorando suas diferenças de layout, hierarquia de registros e cenários de uso.
O que é um Arquivo Posicional CNAB?
Diferente de formatos modernos como JSON ou XML, um arquivo CNAB é um arquivo de texto puro (UTF-8 ou ASCII) baseado em largura de colunas fixa (posicional). Isso significa que cada campo possui uma posição de início e fim rigorosamente definida por contrato.
- Colunas / Posicionamento: Se o código do banco fica nas colunas
001 a 003, os 3 primeiros caracteres da linha sempre representarão o número da instituição financeira (ex:001para Banco do Brasil,341para Itaú,237para Bradesco). - Preenchimento: Campos numéricos são alinhados à direita e preenchidos com zeros à esquerda. Campos alfanuméricos são alinhados à esquerda e preenchidos com espaços em branco à direita.
- Tolerância a Erros: Zero. Um único caractere adicionado ou removido desloca todos os campos subsequentes da linha, fazendo o banco rejeitar o arquivo inteiro.
Tabela Comparativa: CNAB 240 vs CNAB 400
| Característica | CNAB 240 | CNAB 400 |
|---|---|---|
| Comprimento da Linha | 240 caracteres exatamente por linha | 400 caracteres exatamente por linha |
| Estrutura de Hierarquia | Multi-nível (Header de Arquivo, Header de Lote, Segmentos, Trailer de Lote, Trailer de Arquivo) | Simples (Header de Arquivo, Registros Detalhe Tipo 1, Trailer de Arquivo) |
| Tipos de Operação | Cobrança, Pagamento de salários/fornecedores, PIX, Custódia de cheques, Extrato para conciliação | Focado primariamente em Cobrança Bancária (Emissão e Liquidação de Boletos) |
| Flexibilidade | Alta (Permite misturar diferentes tipos de serviço no mesmo arquivo via lotes) | Baixa (Um arquivo por carteira/serviço) |
| Adotado por | Bancos públicos (Caixa, BB) e novos serviços de pagamentos em lote | Amplo legado em grandes bancos privados (Itaú, Bradesco, Santander) |
Anatomia Estrutural do CNAB 400
O CNAB 400 é uma estrutura mais antiga e simples. Cada linha possui exatos 400 caracteres e o arquivo é dividido em 3 partes principais:
- Header do Arquivo (Registro Tipo 0): Primeira linha do arquivo. Contém a identificação da empresa (CNPJ, Razão Social), o código do banco, a data de geração e a identificação do serviço de cobrança.
- Registros Detalhe (Registro Tipo 1): Linhas intermediárias. Cada linha representa um título de cobrança (boleto). Contém o Nosso Número, data de vencimento, valor do título, juros, multa, dados do pagador (sacado) e código de ocorrência.
- Trailer do Arquivo (Registro Tipo 9): Última linha. Contém a contagem total de linhas do arquivo e o valor total acumulado dos títulos.
01REMESSA01COBRANCA 00000000000000123456EMPRESA EXEMPLO LTDA 237BRADESCO 2207260000001... (Header - 400 caracteres)
10201234567890000000000123456789... (Registro Detalhe Boleto 1 - 400 caracteres)
10201234567890000000000123456789... (Registro Detalhe Boleto 2 - 400 caracteres)
9 (Trailer - 400 caracteres)
Anatomia Estrutural do CNAB 240
O CNAB 240 introduziu o conceito de Lotes e Segmentos. Cada linha possui 240 caracteres e o arquivo é organizado em uma árvore hierárquica:
- Header de Arquivo (Tipo de Registro 0): Identifica a empresa e o banco emissor do arquivo global.
- Header de Lote (Tipo de Registro 1): Inicia um lote específico (ex: Lote de Pagamento de Salários ou Lote de Cobrança).
- Registros de Detalhe / Segmentos (Tipo de Registro 3):
- Segmento P: Dados do título, Nosso Número, vencimento, valor.
- Segmento Q: Dados do pagador (Nome, CPF/CNPJ, Endereço, CEP).
- Segmento R: Descontos, multas, chave Pix ou dados adicionais.
- Segmento A / B / J: Utilizados em transferências TED/PIX e pagamento de títulos/tributos.
- Trailer de Lote (Tipo de Registro 5): Fecha o lote e traz o totalizador de títulos daquele serviço.
- Trailer de Arquivo (Tipo de Registro 9): Última linha do arquivo que encerra a transmissão.
Remessa vs Retorno: Como Funciona o Fluxo Bancário
A comunicação via CNAB é bidirecional entre o ERP da empresa e a plataforma do banco:
- Arquivo de Remessa (
.REM): Gerado pela sua aplicação e enviado ao banco. Instrui o banco a registrar novos boletos, cancelar títulos, alterar vencimentos ou agendar pagamentos. - Arquivo de Retorno (
.RET): Gerado pelo banco e baixado pela sua aplicação. Informa quais boletos foram liquidados (pagos pelo cliente), quais foram rejeitados por erro de cadastro e quais tarifas foram cobradas.
Conclusão
Entender a diferença entre CNAB 240 e CNAB 400 é essencial ao arquitetar integrações financeiras no Brasil. Enquanto o CNAB 400 oferece simplicidade direta para emissão de boletos simples, o CNAB 240 traz poder para gerenciar múltiplos serviços bancários em um único fluxo automatizado.
Precisa validar o formato de um arquivo CNAB ou encontrar erros de alinhamento de colunas? Teste agora o nosso Leitor e Decodificador de CNAB Gratuito!
🛠️ Experimente na prática
Use nossas ferramentas online gratuitas — sem cadastro, direto no navegador.
