PHPackages                             tongedev/rfb-document - 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. [PDF &amp; Document Generation](/categories/documents)
4. /
5. tongedev/rfb-document

ActiveLibrary[PDF &amp; Document Generation](/categories/documents)

tongedev/rfb-document
=====================

Pacote para validar/gerar/formatar RG e CPF

v1.1.3(4y ago)103171[2 issues](https://github.com/tongedev/rfb-document/issues)MITPHPPHP ^8.0

Since Mar 1Pushed 3y ago1 watchersCompare

[ Source](https://github.com/tongedev/rfb-document)[ Packagist](https://packagist.org/packages/tongedev/rfb-document)[ RSS](/packages/tongedev-rfb-document/feed)WikiDiscussions main Synced 4w ago

READMEChangelog (4)Dependencies (4)Versions (9)Used By (0)

 [![RFB-document](https://camo.githubusercontent.com/ff566d263b2dd8cc85668a49fdae8ccebe2f9951780320f1847d686d7c7f9646/68747470733a2f2f62616e6e6572732e6265796f6e64636f2e64652f524642253230446f63756d656e742e706e673f7468656d653d6c69676874267061636b6167654d616e616765723d636f6d706f7365722b72657175697265267061636b6167654e616d653d746f6e67656465762532467266622d646f63756d656e74267061747465726e3d617263686974656374267374796c653d7374796c655f31266465736372697074696f6e3d2b76616c69646525324667657265253246666f726d6174652b756d2b6e2543332542416d65726f2b64652b5247253246435046266d643d312673686f7757617465726d61726b3d3026666f6e7453697a653d313030707826696d616765733d6964656e74696669636174696f6e)](https://camo.githubusercontent.com/ff566d263b2dd8cc85668a49fdae8ccebe2f9951780320f1847d686d7c7f9646/68747470733a2f2f62616e6e6572732e6265796f6e64636f2e64652f524642253230446f63756d656e742e706e673f7468656d653d6c69676874267061636b6167654d616e616765723d636f6d706f7365722b72657175697265267061636b6167654e616d653d746f6e67656465762532467266622d646f63756d656e74267061747465726e3d617263686974656374267374796c653d7374796c655f31266465736372697074696f6e3d2b76616c69646525324667657265253246666f726d6174652b756d2b6e2543332542416d65726f2b64652b5247253246435046266d643d312673686f7757617465726d61726b3d3026666f6e7453697a653d313030707826696d616765733d6964656e74696669636174696f6e)

 [![Total Downloads](https://github.com/tongedev/rfb-document/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/tongedev/rfb-document/actions) [![Issues Open](https://camo.githubusercontent.com/e89c446cb079d1cb584ec37fe26e0feac89c2c4e5aaef8fc33514effca81fe50/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f746f6e67656465762f7266622d646f63756d656e74)](https://github.com/tongedev/rfb-document/issues) [![Total Downloads](https://camo.githubusercontent.com/e4d3de160d7ec60910fe0a2d6f121694d0b26ac8bd47dc0c2ad5e9db9e3b9f77/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f746f6e67656465762f7266622d646f63756d656e74)](https://packagist.org/packages/tongedev/rfb-document) [![Latest Version](https://camo.githubusercontent.com/18ecddd67980c27357eac6635b7e6be7f17b79da30eb6d4d677c464d308fcebe/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f746f6e67656465762f7266622d646f63756d656e74)](https://packagist.org/packages/tongedev/rfb-document) [![License](https://camo.githubusercontent.com/b5e59a4f54f3501a974ab5cdd2e1a5c2cdbdbce092befe0983fbbf4b89f80d92/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f746f6e67656465762f7266622d646f63756d656e74)](https://packagist.org/packages/tongedev/rfb-document)

---

**RFB Document** é um pacote que te ajuda a lidar com números de cadastro da Receita Federal do Brasil, CPF (cadastro de pessoa física) e CNPJ (cadastro nacional de pessoa jurídica). Através dele é possível gerar números de CPF/CNPJ válidos, validar um número existente e formatá-los. Tudo de maneira simples e prática.

> ❗ IMPORTANTE: Este pacote não realiza nenhuma consulta na Receita Federal, portanto, não verifica a situação atual do documento ou se o mesmo está atrelado a uma pessoa ou empresa específica. Toda a checagem é baseada no algoritmo utilizado para gerar os números de cadastro.

Requisitos
----------

[](#requisitos)

> **Requer [PHP 8.0+](https://www.php.net/releases/)**

Se você usa o Laravel, verifique a compatibilidade de versões:

LaravelRFB Document8.x1.x9.x1.xInstalação
----------

[](#instalação)

Para instalar o pacote, basta usar o [composer](https://getcomposer.org):

```
composer require tongedev/rfb-document
```

Em caso de aplicações Laravel, não é preciso publicar o pacote nos Providers, isso é feito de forma automática pelo auto discovery, durante a instalação.

Como usar
---------

[](#como-usar)

### Classes

[](#classes)

Uma forma de se usar o **RFB Document** se dá instanciando a classe correspondente ao documento desejado (CPF ou CNPJ) e então usufruindo dos recursos disponíveis:

```
// no caso de querer manipular CPF
$cpfClass = new Tongedev\RfbDocument\CPFDocument();

$cpf = $cpfClass->generate(); // retorno: xxxxxxxxxxx (um número de CPF aleatório)

// no caso de querer manipular CNPJ
$cnpjClass = new Tongedev\RfbDocument\CNPJDocument();

$cnpj = $cnpjClass->generate(); // retorno: xxxxxxxxxxx (um número de CNPJ aleatório)
```

### Facades

[](#facades)

Em aplicações Laravel, é possível tirar proveito do container IoC (inversion of control) presente no framework. Quando o pacote é instalado, suas facades são automaticamente publicadas entre os Providers, permitindo um uso mais rápido dos recursos:

```
$cpf = CPF::generate(); // retorno: xxxxxxxxxxx (um número de CPF aleatório)

$cnpj = CNPJ::generate(); // retorno: xxxxxxxxxxxxxx (um número de CNPJ aleatório)
```

Recursos
--------

[](#recursos)

Os recursos disponíveis são: geração de um novo documento válido, sanitização, formatação e validação de um dado documento. Destacando que as chamadas dos recursos são as mesmas para CPF e CNPJ.

RecursoParâmetroRetornogenerate()bool | formatted (default: false)documento, formatado ou não (string)sanitize()string | documentNumberdocumento sanitizado (string)format()string | documentNumberdocumento formatado (string)validate()string | documentNumber(bool) se documento é válido (true) ou não (false)Todos os exemplos abaixo funcionam para `CPF` e `CPNJ`, bastando apenas alterar a classe utilizada.

```
$cpf = CPF::generate(); // retorno: xxxxxxxxxxx (cpf sanitizado)

$cnpj = CNPJ::generate(); // retorno: xxxxxxxxxxxxxxx (cnpj sanitizado)
```

E os demais métodos:

```
$cpf = CPF::generate(true); // retorno: xxx.xxx.xxx-xx (cpf formatado)

$cpf = CPF::sanitize('xxx.xxx.xxx-xx'); // retorno: xxxxxxxxxxx (cpf sanitizado)

$cpf = CPF::format('xxxxxxxxxxx'); //retorno: xxx.xxx.xxx-xx (cpf formatado)

$cpf = CPF::validate('xxx.xxx.xxx-xx'); // retorno: booleano dependendo do valor passado no parâmetro

$cpf = CPF::validate('xxxxxxxxxxx'); // é possível passar documento sanitizado também para validação
```

Exceções
--------

[](#exceções)

Caso as funções recebam valores ou cadeias de caracteres que não correspondem a um conjunto de dígitos esperado de um dos documentos, uma exceção é lançada:

```
$cpf = CPF::format('123456ASasdfas'); // esse código irá gerar uma exceção do tipo `RfbDocumentException`.
```

Contribuindo
------------

[](#contribuindo)

Obrigado por considerar contribuir para o RFB Document. Tudo sobre contribuições está descrito [aqui](CONTRIBUTING.md).

👋 Siga o autor [@devatreides](https://twitter.com/tongedev) no Twitter para saber das últimas novidades e conhecer outros projetos. Diga oi!

Licença
-------

[](#licença)

RFB Document é um software open source licenciado sob a [Licença MIT](LICENSE.md).

###  Health Score

29

—

LowBetter than 60% of packages

Maintenance16

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 81.4% 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 ~0 days

Total

8

Last Release

1527d ago

Major Versions

v0.0.3 → v1.0.02022-03-01

### Community

Maintainers

![](https://www.gravatar.com/avatar/f975c19c0ff9d224e8946919894dd22aa3a0635614c9555ff91bd31da741bb65?d=identicon)[tombenevides](/maintainers/tombenevides)

---

Top Contributors

[![devatreides](https://avatars.githubusercontent.com/u/18440704?v=4)](https://github.com/devatreides "devatreides (35 commits)")[![dansysanalyst](https://avatars.githubusercontent.com/u/79267265?v=4)](https://github.com/dansysanalyst "dansysanalyst (8 commits)")

---

Tags

cnpjcnpj-generatorcnpj-validatorcpfcpf-generatorcpf-validadorhacktoberfesthacktoberfest2022laravelphpphpvalidationformatdocumentgeneratecpfcnpj

###  Code Quality

TestsPest

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/tongedev-rfb-document/health.svg)

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

###  Alternatives

[netcarver/textile

Textile markup language parser

2311.5M16](/packages/netcarver-textile)

PHPackages © 2026

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