Download the PHP package mendesalexandre/php-nfse-nacional without Composer
On this page you can find all versions of the php package mendesalexandre/php-nfse-nacional. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download mendesalexandre/php-nfse-nacional
More information about mendesalexandre/php-nfse-nacional
Files in mendesalexandre/php-nfse-nacional
Package php-nfse-nacional
Short Description SDK PHP framework-agnostic pra NFS-e Nacional (Padrão Brasileiro SEFIN) — emissão DPS, consulta, cancelamento e DANFSE (NT 008/2026). PHP 8.1+, PSR-3/PSR-18.
License MIT
Informations about the package php-nfse-nacional
mendesalexandre/php-nfse-nacional
SDK PHP framework-agnostic para integração com NFS-e Nacional (Padrão Brasileiro SEFIN). Funciona em Laravel, Symfony, projeto vanilla — qualquer coisa com PHP 8.1+ e suporte a PSR-3/PSR-18.
📖 Documentação:
- Este README — quickstart, instalação, exemplos rápidos
- MANUAL.md — referência completa da API (cada método: assinatura, parâmetros, retorno, exceções)
- CHANGELOG.md — histórico de versões
examples/— scripts ponta-a-ponta (emitir, cancelar, substituir, consultar, download, danfse-local)
Status
Ciclo de vida da NFS-e completo: emissão, consulta, cancelamento, substituição,
download e DANFSe NT 008/2026. PHPStan level 8 limpo, 102 testes verdes, validado
ponta-a-ponta em homologação SEFIN (NFS-e #57, chave
51079092200179028000138000000000005726057774456203). Pré-1.0 — API pode
sofrer ajustes minor antes do 1.0.0; ver CHANGELOG.
Por que
- Suporte completo ao leiaute SefinNacional 1.6
- Suporte à NT 008/2026 (novo DANFSE válido a partir de 1º/jul/2026)
- Sem dependência de framework — funciona em Laravel, Symfony, projetos vanilla
- Tipagem forte (PHPStan level 8)
- Testes desde o dia 1
Requisitos
- PHP ^8.1
- Extensões:
dom,openssl,libxml,zlib,mbstring - Certificado digital A1 (.pfx) do prestador
- OpenSSL com legacy provider habilitado (rsa-sha1) — ver Configuração OpenSSL
Instalação
Uso rápido
Cancelamento
Substituição
Cancela uma NFS-e e a vincula a uma substituidora previamente emitida.
A substituidora precisa ter sido emitida antes via $nfse->emitir(...).
Eventos customizados
Pra outros tipos de evento que aparecerem no leiaute, implemente a interface
EventoNfse e use o EventoBuilder diretamente — sem alterar o SDK:
Configuração OpenSSL
OpenSSL 3.5+ (Fedora 43, RHEL 9) desabilita SHA1 por padrão. A DPS do
SEFIN usa rsa-sha1 — sem habilitar legacy, openssl_sign falha com
error:03000098:digital envelope routines::invalid digest.
Opção 1 (recomendada em prod): env var
Criar /etc/ssl/openssl-sha1.cnf:
Setar no Supervisor/php-fpm:
Opção 2 (dev/local): runtime
Arquitetura
Roadmap
- [x] Estrutura + composer + DTOs + Config
- [x] Certificate + Signer rsa-sha1
- [x] DpsBuilder (XML completo)
- [x] SefinClient + EmissaoService
- [x] ConsultaService (status NFS-e, eventos)
- [x] CancelamentoService (e101101)
- [x] DownloadService (XML + PDF cancelada)
- [x] DANFSe PDF — NT 008/2026 (TCPDF + QR Code)
- [x] Testes unitários (PHPUnit) — 62 testes
- [x] PHPStan level 8 limpo
- [x] CI no GitHub Actions (PHP 8.1 – 8.4)
- [x] Validação ponta-a-ponta em homologação SEFIN
- [x] Substituição de NFS-e (evento 101102)
- [x] Examples completos do ciclo de vida (emitir, cancelar, substituir, consultar, download, danfse-local)
- [ ] Cobertura ampliada (Certificate, Signer)
- [ ] DANFSe customizável (logo do prestador, observações livres)
- [ ] API CNC/ADN (
POST /DFe/,GET /DFe/{NSU}) — pra municípios c/ sistema próprio
Licença
MIT
All versions of php-nfse-nacional with dependencies
ext-dom Version *
ext-openssl Version *
ext-libxml Version *
ext-zlib Version *
ext-mbstring Version *
psr/http-client Version ^1.0
psr/http-message Version ^1.1 || ^2.0
psr/http-factory Version ^1.0
psr/log Version ^3.0
guzzlehttp/guzzle Version ^7.5
tecnickcom/tcpdf Version ^6.7