Biblioteca NFE.io em PHP para Emissão de Notas Fiscais (NFS-e, NF-e, NFC-e, CT-e)
SDK PHP oficial da NFE.io — PHP 8.2+, zero dependências de runtime, cliente único com recursos tipados e retorno discriminado por union types nativos.
SDK PHP oficial da NFE.io — PHP 8.2+, zero dependências de runtime, cliente único com recursos tipados e retorno discriminado por union types nativos.
Calcule os impostos de uma operação com o motor tributário da NFE.io via $nfe->taxCalculation->calculate, com escopo de tenant e payload em array.
Liste os dados de referência do motor tributário — códigos de operação, finalidades de aquisição e perfis fiscais — com $nfe->taxCodes, paginação 1-based com máximo de 50 por página.
Todas as opções do Nfe\Client e do Nfe\Config — chaves de API, modelo de duas chaves, timeout, retry, logger PSR-3, transporte PSR-18 e overrides por requisição.
Habilite o recebimento de CT-e de entrada e consulte documentos e eventos por chave de acesso com $nfe->transportationInvoices no host api.nfse.io /v2.
Consulte dados cadastrais de pessoa jurídica por CNPJ e a inscrição estadual por UF com $nfe->legalEntityLookup no host legalentity.api.nfe.io.
Consulte a situação cadastral de um CPF na Receita Federal com $nfe->naturalPersonLookup->getStatus, informando CPF e data de nascimento.
Consulte cupons fiscais CFe-SAT e NFC-e pela chave de acesso de 44 dígitos e baixe o XML com $nfe->consumerInvoiceQuery no host nfe.api.nfe.io.
Consulta de endereços por CEP com $nfe->addresses->lookupByPostalCode no host address.api.nfe.io/v2 — família de dados, usa a dataApiKey.
Consulte qualquer NF-e pela chave de acesso de 44 dígitos, liste eventos e baixe DANFE/XML com $nfe->productInvoiceQuery no host nfe.api.nfe.io.
Baixe PDF/XML das notas. Todos os métodos de download do SDK PHP devolvem os bytes crus como string — salve com file_put_contents, sem contratos especiais por recurso.
Entenda o contrato HTTP 202, os resultados Pending e Issued discriminados por union types nativos com instanceof, e como montar um loop de polling com FlowStatus::isTerminal().
CRUD de empresas emissoras e leitura do status do certificado digital no recurso companies do SDK PHP da NFE.io — escopo de conta, remove() e listAll().
Código pronto para integrar com o NFe/CTe Inbound em C#, Node.js, Python e PHP: busca por chave, consumo de webhook, listagem OData e ativação.
Snippets prontos em C#, Node.js, Python e PHP para listar as NFS-e recebidas via API.
Gerencie as inscrições estaduais (IE) da empresa emissora com $nfe->stateTaxes — pré-requisito para emitir NF-e/NFC-e, com paginação por cursor e envelope stateTax.
Ative a busca automática de NF-e emitidas contra o seu CNPJ (distribuição DF-e), consulte documentos e eventos, baixe XML/PDF e manifeste-se com $nfe->inboundProductInvoices.
Emita NFC-e modelo 65 com $nfe->consumerInvoices no host api.nfse.io /v2 — retorno discriminado 202, listagem paginada, cancelamento e inutilização de faixa.
Emita NF-e modelo 55 com $nfe->productInvoices no host api.nfse.io /v2 — listagem por cursor com environment obrigatório, carta de correção, inutilização e downloads em bytes.
Emita, liste, consulte, cancele e baixe NFS-e com $nfe->serviceInvoices no host api.nfe.io /v1, tratando o retorno discriminado 202 com instanceof.
Itere listas com Nfe\Util\ListResponse e leia os metadados de página em Nfe\Util\ListPage — paginação por página (pageIndex 1-based) ou por cursor, conforme o recurso.
CRUD de pessoas físicas (tomadores PF) vinculadas a uma empresa com $nfe->naturalPeople — federalTaxNumber como string, createBatch sequencial e findByTaxNumber.
CRUD de pessoas jurídicas (tomadores PJ) vinculadas a uma empresa com $nfe->legalPeople — create, createBatch sequencial, findByTaxNumber e delete.
Instale o pacote nfe/nfe via Composer, crie um Nfe\Client, emita sua primeira NFS-e e acompanhe o processamento com polling.
Entenda como o SDK roteia cada recurso para o host correto (api.nfe.io, api.nfse.io e os hosts de dados), o modelo de duas chaves e o override por requisição com RequestOptions.
A hierarquia Nfe\Exception, a tabela de códigos HTTP por classe, padrões idiomáticos de catch com instanceof, validação client-side fail-fast e erros de rede.
Verifique a assinatura HMAC-SHA1 das entregas de webhook da NFE.io com a classe estática Nfe\Webhook, leia o corpo cru antes de parsear o JSON e torne seus handlers idempotentes.
Crie, liste, atualize, teste e exclua alvos de entrega de webhook por empresa com $nfe->webhooks — a verificação de assinatura fica na classe estática Nfe\Webhook.