Download the PHP package danielbbarcelos/laravel-notas-fiscais without Composer

On this page you can find all versions of the php package danielbbarcelos/laravel-notas-fiscais. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-notas-fiscais

laravel-notas-fiscais

Latest Version on Packagist PHP Version Laravel

Repositório: github.com/danielbbarcelos/laravel-notas-fiscais

Emissão de notas fiscais de serviço (NFS-e) sob um contrato único, com drivers por provedor. Laravel 11+.

Hoje implementa o provedor IPM Atende.Net (NFS-e municipal) em dois padrões. A arquitetura de contracts é genérica para acomodar novos provedores — e, futuramente, outros tipos de documento (NF-e, NFC-e).

Qual driver usar (IPM)

O Atende.Net expõe a NFS-e em dois padrões diferentes, por município:

Driver Padrão Serviço Quando usar
ipm REST proprietário (NTE 35/2021) WNERestServiceNFSe Municípios com o REST <nfse>/multipart
ipm-abrasf ABRASF 2.04 (SOAP) WNENotaFiscalEletronicaNfe Municípios ABRASF — ex.: Pouso Alegre/MG

Ambos autenticam por login/senha (Basic) — sem certificado. Para descobrir qual o município usa, teste o endpoint: se o REST responder 503 "Serviço não disponível" e o SOAP responder, use ipm-abrasf. Note que o ABRASF identifica o município pelo código IBGE (7 dígitos), enquanto o REST usa o código TOM.

Notas práticas do ABRASF (validado em produção — Pouso Alegre/MG)

Emissão e cancelamento reais já validados ponta a ponta. Pontos que costumam barrar:

Instalação

Integrando numa API? Veja o Guia de integração Laravel — passo a passo multi-tenant/SaaS com endpoints REST, service, persistência e PDF.

Configuração

config/notas-fiscais.php (ou via .env):

A URL do Web Service varia por município. Solicite acesso no Portal do Cidadão da prefeitura ("Emissão de NFS-e por WebService").

Proxy de saída (servidor fora do Brasil)

Alguns municípios só respondem a requisições vindas de um IP brasileiro. Se a aplicação roda fora do país, aponte o driver para um proxy no Brasil:

Sem a variável, nada muda: a requisição sai direto do servidor. O valor é repassado ao Guzzle, então vale qualquer esquema que o cURL suporte (http://, https://, socks5://).

Dois avisos antes de montar essa infra:

Uso

Cancelamento e consulta:

Erros do provedor lançam NotaFiscalApiException (com ->codigo e ->corpo); documento não suportado lança OperacaoNaoSuportadaException. Ambas estendem NotaFiscalException.

Exportação de arquivos (XML e TXT)

Reproduz o menu Download do Atende.Net (XML IPM / XML Abrasf / TXT). Como o Web Service não devolve esses arquivos prontos, o package os gera localmente a partir da nota enviada (NotaServico) e do retorno da emissão (NotaEmitida). Os gateways que suportam isso implementam o contrato ExportaArquivos:

O PDF e a Impressão do menu correspondem ao NotaEmitida::link (ver abaixo). Já E-mail, Anexos e Consulta Nota Nacional são recursos do portal sem endpoint no Web Service — fora do escopo do package.

Comprovante da NFS-e em PDF

O PDF oficial do município (link /ged/r/{hash} do Atende.Net) é gerado por um endpoint protegido por captcha (Cloudflare Turnstile) na via pública — então não é automatizável. Para anexar em e-mail / download, o pacote gera um comprovante próprio em PDF a partir dos dados canônicos, sem captcha. O PDF deixa explícito que não é o documento fiscal oficial e aponta, no topo, o link de autenticidade onde a NFS-e oficial pode ser consultada e impressa (e que reflete o status atual):

Se a emissão usou o prestador da config (NotaServico sem prestador), passe-o no 3º argumento. O 4º argumento (Emitente) coloca logo e nome da empresa no cabeçalho — ambos opcionais (sem eles, o comprovante usa placeholders):

Requer dompdf (dependência opcional, PHP puro, sem binário):

Multi-tenant / SaaS (credenciais em runtime)

O .env é só o default opcional (single-tenant). Não guarde credenciais de clientes no .env/config num SaaS: a aplicação armazena com segurança (ex.: coluna criptografada por tenant) e injeta em runtime.

Instâncias resolvidas em runtime não são cacheadas pelo nome (sem vazamento entre tenants), e a sessão (PHPSESSID) é isolada por credencial. Para uso fixo single-tenant, NotaFiscal::nfse() segue lendo a config nomeada normalmente.

Playground (validação visual)

Para validar campos e retornos numa tela, ligue a demo (mantenha desligada em produção):

Isso registra a rota GET/POST /notas-fiscais/demo com um formulário que monta o NotaServico, mostra o XML gerado e o NotaEmitida parseado (ou o erro). Um toggle alterna entre:

Dentro do próprio repositório do pacote, sirva via Testbench:

A demo vive em routes/demo.php + resources/views/demo.blade.php e só é carregada quando notas-fiscais.demo é true.

Novos provedores

Implemente Contracts\Provedor + Contracts\NfseGateway e registre no boot:

Testes

Contribuindo

Issues e pull requests são bem-vindos em github.com/danielbbarcelos/laravel-notas-fiscais.

Licença

Distribuído sob a licença MIT. Veja LICENSE.


All versions of laravel-notas-fiscais with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
ext-dom Version *
ext-simplexml Version *
illuminate/support Version ^11.0|^12.0
illuminate/http Version ^11.0|^12.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package danielbbarcelos/laravel-notas-fiscais contains the following files

Loading the files please wait ...