BoletoNet / BoletoNetCore

Versão do BoletoNet para .NET Core
MIT License
186 stars 117 forks source link

Build status Nuget count Nuget count Issues open Coverage Status MyGet Ultimo PR

Status

Alt

Projeto boleto .NET Core

Esta é uma versão do Boleto2Net, adaptada para funcionar com .NET Core. Para evitar a quebra de compatibilidade com aplicações que utilizam versões do .NET inferiores à 4.6.1, optamos por criar um novo projeto.

O que é o projeto boleto .net core? R: Live sobre o entendimento do projeto

Carteiras Homologadas

Banco Código do banco Carteira
Banrisul 041 1
Bradesco 237 09
Bradesco 237 09
Brasil 001 17 (Variações 019 027 035)
Caixa Econômica Federal 104 SIG14
Cecred/Ailos 085 1
Itau 341 109, 112
Inter 077 110
Safra 422 1
Santander 033 101
Sicoob 756 1-01
Sicredi 748 1-A
Uniprime Norte PR 084 09

Carteiras Implementadas (Não foi homologada. Falta teste unitário)

Banco Código do banco Carteira
Banco do Brasil 001 11 (Variação 019)
Banco CrediSIS 097 18
Nordeste 004 1

Atenção: Para manter a ordem do projeto, qualquer solicitação de Pull Request de um novo banco ou carteira implementada, deverá seguir o formato dos bancos/carteiras já implementados e vir acompanhado de teste unitário da geração do boleto (PDF), arquivo remessa e geração de 9 boletos, com dígitos da linha digitável variando de 1 a 9, checando além do próprio dígito verificador, o cálculo do nosso número, linha digitável e código de barras.

Pre requisitos

Como Contribuir

Leia o arquivo contributing.md

Este projeto está dividido em 3 partes:

BoletoNetCore (Projeto Principal)

Responsável por guardar toda a lógica de leitura de remessa e retorno de arquivos e regras e impressão do boleto em hipertexto. Por ser um projeto multitarget, todo o código será avaliado se puder rodar corretamente tanto em netstandard2 quanto em net40.

BoletoNetCore.Pdf

Responsável pelos serviços de impessão em PDF.

Obs.: Para geração de PDF em linux (ambientes baseados em Debian), é necessário a instalação das seguintes dependências:

apt-get install -y libfontconfig1 libxrender1 libxext6

Também é necessário garantir a permissão de execução para o binário responsável por gerar o PDF:

chmod +x "<Caminho do projeto>/BoletoNetCore.Testes/bin/Debug/net7.0/Rotativa/Linux/wkhtmltopdf"

BoletoNetCore.Testes

Validação e testes de toda a lógica dos boletos.

Migrando do Boleto2Net

Este projeto possui algumas diferenças relevantes em relação ao Boleto2Net que podem quebrar o seu código: