PHPackages                             nfe/nfe - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. nfe/nfe

ActiveLibrary[API Development](/categories/api)

nfe/nfe
=======

NFe.io PHP Library

2.5(8y ago)42115.7k↑40.1%19[1 PRs](https://github.com/nfe/client-php/pulls)MITPHPPHP &gt;=5.4

Since Jun 9Pushed 6y ago10 watchersCompare

[ Source](https://github.com/nfe/client-php)[ Packagist](https://packagist.org/packages/nfe/nfe)[ Docs](https://nfe.io)[ RSS](/packages/nfe-nfe/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (10)Used By (0)

Cliente PHP para emissão de notas fiscais - NFe.io
==================================================

[](#cliente-php-para-emissão-de-notas-fiscais---nfeio)

Onde acessar a documentação da API?
-----------------------------------

[](#onde-acessar-a-documentação-da-api)

> Acesse a [nossa documentação](https://nfe.io/doc/rest-api/nfe-v1) para mais detalhes e referências.

Como realizar a instalação do pacote?
-------------------------------------

[](#como-realizar-a-instalação-do-pacote)

Você pode instalar via [Composer](http://getcomposer.org/), executando o comando a seguir:

```
composer require nfe/nfe
```

Para usar a biblioteca, use o [Composer autoload](https://getcomposer.org/doc/00-intro.md#autoloading):

```
require_once('vendor/autoload.php');
```

> **Observação**: A versão do PHP deverá ser 5.4 ou superior.

Dependencias
------------

[](#dependencias)

Esta biblioteca requer as seguintes extensões para funcionamento correto:

**-** [`curl`](https://secure.php.net/manual/en/book.curl.php)

**-** [`json`](https://secure.php.net/manual/en/book.json.php)

Se você usa o Composer, essas dependencias são gerenciadas automaticamente. Caso tenha feito a instalação manual, você precisa ter certeza que estas extensões estão instaladas e disponíveis.

> Se você não quiser utilizar o Composer, você pode fazer o download de uma das últimas versões, utilizando o endereço

Exemplos de uso
---------------

[](#exemplos-de-uso)

Depois de baixar o pacote, inclua a biblioteca em seu arquivo PHP, utilizando o código abaixo:

```
require_once("caminho-para/client-php/lib/init.php");
```

> **Observação**: Caso você utilizar mais de um arquivo .php para fazer a integração, o código acima deverá ser replicado nos outros arquivos.

### Como emitir uma Nota Fiscal de Serviço?

[](#como-emitir-uma-nota-fiscal-de-serviço)

Abaixo, temos um código-exemplo para realizar uma Emissão de Nota Fiscal de Serviço:

```
require_once("caminho-para/client-php/lib/init.php");

NFe_io::setApiKey('c73d49f9649046eeba36dcf69f6334fd'); // Ache sua chave API no painel (https://app.nfe.io/account/apikeys)

$invoiceCreated = NFe_ServiceInvoice::create(
  // ID da empresa, você deve copiar exatamente como está no painel
  '64555e0ee340420fdc94ad09',
  // Dados da nota fiscal de serviço
  array(
    // Código do serviço de acordo com o a cidade
    'cityServiceCode' => '2690',
    // Descrição dos serviços prestados
    'description'     => 'TESTE EMISSAO',
    // Valor total do serviços
    'servicesAmount'  => 0.01,
    // Dados do Tomador dos Serviços
    'borrower' => array(
      // CNPJ ou CPF (opcional para tomadores no exterior)
      'federalTaxNumber' => 191,
      // Nome da pessoa física ou Razão Social da Empresa
      'name'             => 'BANCO DO BRASIL SA',
      // Email para onde deverá ser enviado a nota fiscal
      'email'            => 'nfe@mailinator.com', // Para visualizar os e-mails https://www.mailinator.com/
      // Endereço do tomador
      'address'          => array(
        // Código do pais com três letras
        'country'               => 'BRA',
        // CEP do endereço (opcional para tomadores no exterior)
        'postalCode'            => '70073901',
        // Logradouro
        'street'                => 'Outros Quadra 1 Bloco G Lote 32',
        // Número (opcional)
        'number'                => 'S/N',
        // Complemento (opcional)
        'additionalInformation' => 'QUADRA 01 BLOCO G',
        // Bairro
        'district'              => 'Asa Sul',
        // Cidade é opcional para tomadores no exterior
        'city' => array(
            // Código do IBGE para a Cidade
            'code' => '5300108',
            // Nome da Cidade
            'name' => 'Brasilia'
        ),
        // Sigla do estado (opcional para tomadores no exterior)
        'state' => 'DF'
      )
    )
  )
);

echo($invoiceCreated->id);
```

### Como cancelar uma nota?

[](#como-cancelar-uma-nota)

Abaixo, temos um código-exemplo para efetuar o cancelamento de uma nota:

```
require_once("caminho-para/client-php/lib/init.php");

NFe_io::setApiKey("c73d49f9649046eeba36dcf69f6334fd"); // Ache sua chave API no painel (https://app.nfe.io/account/apikeys)

$invoice = NFe_ServiceInvoice::fetch(
  '64555e0ee340420fdc94ad09', // ID da empresa, você deve copiar exatamente como está no painel
  'wPi7i954QAcr6kmy17BtEKtN'  // ID da nota fiscal
);

if ( $invoice->status == 'Issued' ) {
  $invoice->cancel();
}
```

### Como criar uma empresa para realizar a emissão de notas fiscais?

[](#como-criar-uma-empresa-para-realizar-a-emissão-de-notas-fiscais)

Abaixo, temos um código-exemplo de criação de uma empresa, para realizar a emissão de nota fiscal:

```
require_once("caminho-para/client-php/lib/init.php");

NFe_io::setApiKey("c73d49f9649046eeba36dcf69f6334fd"); // Ache sua chave API no painel (https://app.nfe.io/account/apikeys)

$companyCreated = NFe_Company::create(
  array(
    'federalTaxNumber' => 87502637000164, // Use esse gerador para testar: http://www.geradordecnpj.org/
    'name'             => 'BANCO DO BRASIL SA',
    'tradeName'        => 'BANCO DO BRASIL',
    'email'            => 'nfe@mailinator.com', // Para visualizar os e-mails https://www.mailinator.com/inbox2.jsp?public_to=nfe
     // Endereço da empresa
    'address'          => array(
      // Código do pais com três letras
      'country'               => 'BRA',
      // CEP do endereço (opcional para tomadores no exterior)
      'postalCode'            => '70073901',
      // Logradouro
      'street'                => 'Outros Quadra 1 Bloco G Lote 32',
      // Número (opcional)
      'number'                => 'S/N',
      // Complemento (opcional)
      'additionalInformation' => 'QUADRA 01 BLOCO G',
      // Bairro
      'district'              => 'Asa Sul',
      // Cidade é opcional para tomadores no exterior
      'city' => array(
          // Código do IBGE para a Cidade
          'code' => '5300108',
          // Nome da Cidade
          'name' => 'Brasilia'
      ),
      // Sigla do estado (opcional para tomadores no exterior)
      'state' => 'DF'
    )
  )
);

echo($companyCreated->id);
```

### Como efetuar o download de uma nota em PDF?

[](#como-efetuar-o-download-de-uma-nota-em-pdf)

Abaixo, temos um código exemplo para baixar uma nota em PDF:

```
require_once("caminho-para/client-php/lib/init.php");

NFe_io::setApiKey('c73d49f9649046eeba36dcf69f6334fd'); // Ache sua chave API no painel (https://app.nfe.io/account/apikeys)

$url = NFe_ServiceInvoice::pdf(
  '64555e0ee340420fdc94ad09', // ID da empresa, você deve copiar exatamente como está no painel
  'wPi7i954QAcr6kmy17BtEKtN'  // ID da nota fiscal
);

file_put_contents( './invoice_file.pdf', file_get_contents($url) );
```

### Como validar o Webhook?

[](#como-validar-o-webhook)

PHP &gt; 5.3

```
define('WEBHOOK_SECRET_KEY', 'COLOQUE SUA CHAVE DEFINIDA NO SITE AQUI');
function verify_webhook($data, $hmac_header)
{
    $calculated_hmac = base64_encode(hash_hmac('sha1', $data, WEBHOOK_SECRET_KEY,true));
    return ($hmac_header == $calculated_hmac);
}

$hmac_header = str_replace("sha1=", '', $_SERVER['HTTP_X_NFEIO_SIGNATURE']);
$data = file_get_contents('php://input');
$verified = verify_webhook($data, $hmac_header);
if(!$verified) {
	//Código para requisição que não foi validada
} else {
	//Código para requisição validada
}

```

Testes
------

[](#testes)

Instale as dependências necessárias para executar os testes. O client-php do NFe utiliza [SimpleTest](http://simpletest.org/).

```
composer update --dev
```

Execute a comitiva de testes:

```
php ./test/NFe.php
```

###  Health Score

41

—

FairBetter than 89% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity46

Moderate usage in the ecosystem

Community21

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 68.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~83 days

Recently: every ~154 days

Total

9

Last Release

2964d ago

Major Versions

1.0.2 → 2.02016-07-20

PHP version history (2 changes)1.0.0PHP &gt;=5.2

2.0PHP &gt;=5.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/8da225a4adeb6ed39799b29c93fbe8de0da5d5f8598506bd2526454470c946bd?d=identicon)[gblmarquez](/maintainers/gblmarquez)

---

Top Contributors

[![renatonascalves](https://avatars.githubusercontent.com/u/19148962?v=4)](https://github.com/renatonascalves "renatonascalves (31 commits)")[![gblmarquez](https://avatars.githubusercontent.com/u/367279?v=4)](https://github.com/gblmarquez "gblmarquez (9 commits)")[![luismallozzi](https://avatars.githubusercontent.com/u/4340446?v=4)](https://github.com/luismallozzi "luismallozzi (2 commits)")[![Leuloch](https://avatars.githubusercontent.com/u/5075742?v=4)](https://github.com/Leuloch "Leuloch (1 commits)")[![lnmunhoz](https://avatars.githubusercontent.com/u/4376835?v=4)](https://github.com/lnmunhoz "lnmunhoz (1 commits)")[![yagosenhorini](https://avatars.githubusercontent.com/u/14964398?v=4)](https://github.com/yagosenhorini "yagosenhorini (1 commits)")

---

Tags

client-phpcomposernfepackagistpacoteapinfenota fiscalnfsenotanfe.io

### Embed Badge

![Health badge](/badges/nfe-nfe/health.svg)

```
[![Health](https://phpackages.com/badges/nfe-nfe/health.svg)](https://phpackages.com/packages/nfe-nfe)
```

###  Alternatives

[webmaniabr/nfe

PHP SDK da REST API de Nota Fiscal Eletrônica da WebmaniaBR®

137.8k](/packages/webmaniabr-nfe)[m165437/laravel-blueprint-docs

API Blueprint Renderer for Laravel

22779.0k](/packages/m165437-laravel-blueprint-docs)[nfephp-org/sped-nfse-ginfes

API para geração e comunicação de RPS e NFSe no padão Ginfes.

434.7k](/packages/nfephp-org-sped-nfse-ginfes)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
