PHPackages                             brazanation/documents - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. brazanation/documents

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

brazanation/documents
=====================

Provides Brazilian Documents

v2.1.5(1y ago)219124.5k↓46.4%21[3 issues](https://github.com/brazanation/php-documents/issues)4MITPHPPHP &gt;=7.0CI failing

Since Aug 22Pushed 5mo ago25 watchersCompare

[ Source](https://github.com/brazanation/php-documents)[ Packagist](https://packagist.org/packages/brazanation/documents)[ RSS](/packages/brazanation-documents/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (10)Dependencies (2)Versions (20)Used By (4)

Brazanation Documents
=====================

[](#brazanation-documents)

[![Build Status](https://camo.githubusercontent.com/7d7d300da4fe7305130221a2ca21d6346c2deba64eb300d59d822aa9f4bb0562/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6272617a616e6174696f6e2f7068702d646f63756d656e74732f6261646765732f6275696c642e706e673f623d6d61696e)](https://scrutinizer-ci.com/g/brazanation/php-documents/build-status/main)[![Codacy Badge](https://camo.githubusercontent.com/bd29e6f40ee94c74d3d157f6b3d4e634841d9abc01d6ded1742d650651aac80d/68747470733a2f2f6170702e636f646163792e636f6d2f70726f6a6563742f62616467652f47726164652f6638633331333539666361363463306339633833373531383266626365656664)](https://www.codacy.com/gh/brazanation/php-documents/dashboard?utm_source=github.com&utm_medium=referral&utm_content=brazanation/php-documents&utm_campaign=Badge_Grade)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/bc30c41b2b492f8e2374e3630b91872579a05d755cd754c6dd7ffc2fdfb2cc46/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6272617a616e6174696f6e2f7068702d646f63756d656e74732f6261646765732f7175616c6974792d73636f72652e706e673f623d6d61696e)](https://scrutinizer-ci.com/g/brazanation/php-documents/?branch=main)[![Code Coverage](https://camo.githubusercontent.com/96c5881cbafbd12dbdd65e47109d9f969435383a0296d5a786f80b312ae0baf6/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6272617a616e6174696f6e2f7068702d646f63756d656e74732f6261646765732f636f7665726167652e706e673f623d6d61696e)](https://scrutinizer-ci.com/g/brazanation/php-documents/?branch=main)[![StyleCI](https://camo.githubusercontent.com/80fa3f4cf54c653911d341a860479ce8de89826e547a78e065d19cd7a93e31cd/68747470733a2f2f6769746875622e7374796c6563692e696f2f7265706f732f36363137393433312f736869656c643f6272616e63683d6d61696e)](https://github.styleci.io/repos/66179431?branch=main)

A PHP library to provide Brazilian Documents safer, easier and fun!

Installation
------------

[](#installation)

Install the library using [composer](http://getcomposer.org/). Add the following to your `composer.json`:

```
{
    "require": {
        "brazanation/documents": "2.1.*"
    }
}
```

Now run the `install` command.

```
$ composer.phar install
```

or

```
$ composer require brazanation/documents 2.1.*
```

### CPF (cadastro de pessoas físicas)

[](#cpf-cadastro-de-pessoas-físicas)

Registration of individuals or Tax Identification

```
use Brazanation\Documents\Cpf;

$document = Cpf::createFromString('06843273173');
if (false === $document) {
   echo "Not Valid";
}
echo $document; // prints 06843273173
echo $document->format(); // prints 068.432.731-73
```

or

```
use Brazanation\Documents\Cpf;
use Brazanation\Documents\Exception\InvalidDocument as  InvalidDocumentException;

try {
    $document = new Cpf('06843273173');
    echo $document; // prints 06843273173
    echo $document->format(); // prints 068.432.731-73
} catch (InvalidDocumentException $e) {
    echo $e->getMessage();
}
```

### CNPJ (cadastro nacional da pessoa jurídica)

[](#cnpj-cadastro-nacional-da-pessoa-jurídica)

Company Identification or National Register of Legal Entities

```
use Brazanation\Documents\Cnpj;

$document = Cnpj::createFromString('99999090910270');

if (false === $document) {
   echo "Not Valid";
}
echo $document; // prints 99999090910270
echo $document->format(); // prints 99.999.090/9102-70
```

### CNPJ (cadastro nacional da pessoa jurídica ALFA) a partir de 2026

[](#cnpj-cadastro-nacional-da-pessoa-jurídica-alfa-a-partir-de-2026)

Company Identification or National Register of Legal Entities

> NOTE: In 2026 this identification changes to Alphanumeric Type with:
>
> - 12 alphamuneric chacters A-Z and 0-9
> - last two control digits (numeric only) (MODULE 11)

```
use Brazanation\Documents\Cnpj;

$document = Cnpj::createFromString('12ABC34501DE35');

if (false === $document) {
   echo "Not Valid";
}
echo $document; 12ABC34501DE35
echo $document->format(); // prints 12.ABC.345/01DE-35
```

### CNH (carteira nacional de habilitação)

[](#cnh-carteira-nacional-de-habilitação)

National Driving License

```
use Brazanation\Documents\Cnh;

$document = Cnh::createFromString('83592802666');

if (false === $document) {
   echo "Not Valid";
}
echo $document; // prints 83592802666
echo $document->format(); // prints 83592802666
```

### Chave de Acesso Sped (chave da NFe, CTe e MDFe)

[](#chave-de-acesso-sped-chave-da-nfe-cte-e-mdfe)

Sped Access Key

Available models:

- NFe
- NFCe
- CTe
- CTeOther
- MDFe

```
use Brazanation\Documents\Sped\NFe;

$document = NFe::createFromString('52060433009911002506550120000007801267301613');

if (false === $document) {
   echo "Not Valid";
}
echo $document; // prints 52060433009911002506550120000007801267301613
echo $document->format(); // prints 5206 0433 0099 1100 2506 5501 2000 0007 8012 6730 1613
```

or generate your number

```
try {
    $nfeKey = NFe::generate(
        52,
        $generatedAt,
        new Cnpj('33009911002506'),
        12,
        780,
        EmissionType::normal(),
        26730161
    );
    echo $accessKey; // prints 52060433009911002506550120000007801267301613
}catch (InvalidDocumentException $e){
    echo $e->getMessage();
}
```

### PIS/PASEP (programa de integração social e programa de formação do patrimônio do servidor público)

[](#pispasep-programa-de-integração-social-e-programa-de-formação-do-patrimônio-do-servidor-público)

Social Integration Program and Training Program of the Heritage of Public Servant

```
use Brazanation\Documents\PisPasep;

$document = PisPasep::createFromString('518.23129.49-1');

if (false === $document) {
   echo "Not Valid";
}

echo $document; // prints 51823129491
echo $document->format(); // prints 518.23129.49-1
```

### Título de Eleitor

[](#título-de-eleitor)

Voter Registration

```
use Brazanation\Documents\Voter;

$document = Voter::createFromString('106644440302', 20, 42);

if (false === $document) {
   echo "Not Valid";
}

echo $document; // prints 106644440302
echo $document->getSection(); // prints 0020
echo $document->getZone(); // prints 042
```

### Inscrição Estadual

[](#inscrição-estadual)

State Registration

```
use Brazanation\Documents\StateRegistration;

// for Commercial São Paulo
$state = StateRegistration::SP('110.042.490.114');
echo $state; // prints 110042490114
echo $state->format(); // prints 110.042.490.114

// for Rural Producer São Paulo
$state = StateRegistration::SP('P011004243002');
echo $state; // prints P011004243002
echo $state->format(); // prints P-01100424.3/002
```

or

```
use Brazanation\Documents\StateRegistration;

$document = StateRegistration::createFromString('P011004243002', 'SP');

if (false === $document) {
   echo "Not Valid";
}
```

### Cartão Nacional de Saúde (SUS)

[](#cartão-nacional-de-saúde-sus)

National Health Card

```
use Brazanation\Documents\Cns;

$document = Cns::createFromString('242912018460005');

if (false === $document) {
   echo "Not Valid";
}

echo $document; // prints 242912018460005
echo $document->format(); // prints 242 9120 1846 0005
```

### Renavam (Registro Nacional de Veículos Automotores)

[](#renavam-registro-nacional-de-veículos-automotores)

National Registry of Motor Vehicles

```
use Brazanation\Documents\Renavam;

$document = Renavam::createFromString('61855253306');

if (false === $document) {
   echo "Not Valid";
}

echo $document; // prints 61855253306
echo $document->format(); // prints 6185.525330-6
```

### Processos Judiciais

[](#processos-judiciais)

Numbers of legal proceedings related to Judiciary assessments

```
use Brazanation\Documents\JudiciaryProcess;

$document = JudiciaryProcess::createFromString('0048032982009809');

if (false === $document) {
   echo "Not Valid";
}

echo $document; //prints  0048032982009809
echo $document->format(); //prints  0048032.98.2009.8.09.0000
```

### Suframa

[](#suframa)

Number of registration in "Superintendência da Zona Franca de Manaus" (Free Comercial Zones)

```
use Brazanation\Documents\Suframa;

$document = Suframa::createFromString('201111019');

if (false === $document) {
   echo "Not Valid";
}

echo $document; //prints  201111019
echo $document->format(); //prints  20.1111.019
```

### License

[](#license)

MIT, hell yeah!

###  Health Score

55

—

FairBetter than 97% of packages

Maintenance59

Moderate activity, may be stable

Popularity51

Moderate usage in the ecosystem

Community33

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 76.3% 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 ~186 days

Recently: every ~282 days

Total

18

Last Release

412d ago

Major Versions

0.8.0 → 1.0.x-dev2018-10-02

v1.0.0 → v2.0.02018-10-04

PHP version history (3 changes)0.1.0PHP ^5.6 || ^7.0

v0.7.1PHP ^7.0

v2.1.0PHP &gt;=7.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/966337?v=4)[Antonio Spinelli](/maintainers/tonicospinelli)[@tonicospinelli](https://github.com/tonicospinelli)

---

Top Contributors

[![tonicospinelli](https://avatars.githubusercontent.com/u/966337?v=4)](https://github.com/tonicospinelli "tonicospinelli (106 commits)")[![robmachado](https://avatars.githubusercontent.com/u/1437008?v=4)](https://github.com/robmachado "robmachado (23 commits)")[![Ferreiramg](https://avatars.githubusercontent.com/u/1509447?v=4)](https://github.com/Ferreiramg "Ferreiramg (2 commits)")[![carusogabriel](https://avatars.githubusercontent.com/u/16328050?v=4)](https://github.com/carusogabriel "carusogabriel (2 commits)")[![lerox](https://avatars.githubusercontent.com/u/2645882?v=4)](https://github.com/lerox "lerox (1 commits)")[![thalfm](https://avatars.githubusercontent.com/u/7064172?v=4)](https://github.com/thalfm "thalfm (1 commits)")[![joubertredrat](https://avatars.githubusercontent.com/u/1520407?v=4)](https://github.com/joubertredrat "joubertredrat (1 commits)")[![guil95](https://avatars.githubusercontent.com/u/12828803?v=4)](https://github.com/guil95 "guil95 (1 commits)")[![henriqueholanda](https://avatars.githubusercontent.com/u/6398091?v=4)](https://github.com/henriqueholanda "henriqueholanda (1 commits)")[![begnini](https://avatars.githubusercontent.com/u/283823?v=4)](https://github.com/begnini "begnini (1 commits)")

---

Tags

brasilbrazilbraziliancartaosuscnhcnpjcnscpfdocumentodocumentsjudiciarionfephpphp7php8pispispaseprenavamrgtituloeleitor

###  Code Quality

TestsPHPUnit

### Embed Badge

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

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

PHPackages © 2026

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