Releases: raykavin/gocnab
Releases · raykavin/gocnab
Release list
v0.0.1 - SDK CNAB 240 FEBRABAN multi-banco
SDK em Go para geração de arquivos de remessa no padrão CNAB 240 FEBRABAN, com arquitetura em três camadas (motor genérico, descritores de layout por banco e API pública de domínio).
Destaques
- Motor genérico (
internal/engine): preenchimento de campos, montagem de registros de 240 colunas, sequenciais/trailers e os limites do padrão FEBRABAN (70 lotes/arquivo, 10.000 movimentos/lote) - cobertura de testes acima de 85%. - Layout de referência
febraban240embutido, com suporte a layouts customizados via JSON (layout.NewFromJSON) para adaptar a bancos específicos. - API de domínio (pacote
cnab) sem exposição de posições de campo: empresa, conta, favorecido e tipos de pagamento, crédito em conta, TED, PIX (por chave ou dados bancários), boleto, tributos com código de barras, DARF, GPS e cancelamento de pagamento. - Valores monetários sempre em centavos (
cnab.Cents), datas emtime.Timee erros tipados e descritivos (ValidationError,LimitExceededError,FieldError, entre outros). - Documentação: ARQUITETURA.md, API.md e NOVO-BANCO.md.
- Exemplos executáveis para cada cenário em
./examples.
Requisitos
Go 1.26+, sem dependências externas além da biblioteca padrão.
O que mudou
- feat: estrutura inicial do projeto e suporte a campo/charset do motor por @raykavin em #1
- feat: adiciona montagem de registros e pipeline de build ao motor cnab por @raykavin em #2
- feat: adiciona cálculo de trailer, limites e erros do motor por @raykavin em #3
- feat: adiciona descritores genéricos de campo e valor de layout por @raykavin em #4
- feat: adiciona definição de layout e descritores de registro por @raykavin em #5
- feat: adiciona importação de layout baseada em JSON por @raykavin em #6
- feat: adiciona layouts de header de arquivo e lote do febraban240 por @raykavin em #7
- feat: adiciona layouts de pagamento por crédito dos segmentos A e B do febraban240 por @raykavin em #8
- feat: adiciona segmentos de tributos e previdência do febraban240 por @raykavin em #9
- feat: adiciona trailers do febraban240 e testes de integração de layout por @raykavin em #10
- feat: adiciona interface de pagamento e value objects principais de dinheiro/documento por @raykavin em #11
- feat: adiciona entidades de domínio de empresa e conta bancária por @raykavin em #12
- feat: adiciona entidade favorecido e registro de layout por @raykavin em #13
- feat: adiciona tipo de pagamento crédito em conta por @raykavin em #14
- feat: adiciona tipo de pagamento boleto por @raykavin em #15
- feat: adiciona tipo de pagamento TED por @raykavin em #16
- feat: adiciona tipo de pagamento PIX por @raykavin em #17
- feat: adiciona tipos de pagamento de tributo e tributo com código de barras por @raykavin em #18
- feat: adiciona suporte a cancelamento de pagamento por @raykavin em #19
- feat: adiciona montagem de lote e arquivo de remessa por @raykavin em #20
- feat: adiciona exemplos de uso para todos os tipos de pagamento por @raykavin em #21
- docs: adiciona guia de arquitetura e integração de novo banco por @raykavin em #22
- docs: adiciona referência da API pública por @raykavin em #23
- docs: adiciona readme do projeto por @raykavin em #24
- Atualiza documentação do README.md por @raykavin em #25
- docs: atualiza seção de exemplos no README.md para maior clareza e formatação por @raykavin em #26
Novos contribuidores
Changelog completo: https://github.com/raykavin/gocnab/commits/v0.0.1