O CNPJ vai ter letras. Seu sistema está pronto?
A partir de 31 de julho de 2026 a Receita Federal passa a emitir CNPJ no formato alfanumérico. Bancos de dados, regex, validações e emissores de nota fiscal feitos só para números vão rejeitar cadastros e travar integrações. Teste, valide em lote e adapte tudo aqui.
para a primeira emissão no novo formato · produção dos sistemas em 27/07
Validador instantâneo
numérico ou alfanumérico · com ou sem máscaraVer o cálculo do módulo 11 passo a passo
Uma alteração pequena na regra. Um estrago grande no sistema.
As 12 primeiras posições passam a aceitar letras (A–Z) além de números. Só os 2 dígitos verificadores continuam numéricos. Quem programou o CNPJ como "14 números" quebra.
11.222.333/0001-81
/^\d{14}$/
100 milhões de combinações. Regex numérica. CHAR(14) numérico no banco.
12.ABC.345/01DE-35
/^[0-9A-Z]{12}[0-9]{2}$/
~3 trilhões de combinações. Precisa aceitar A–Z nas 12 primeiras posições.
Onde costuma quebrar
- Validação de formulário com regex
\d - Coluna de banco numérica /
BIGINT - Emissão de NF-e e integrações fiscais
- Máscara de input que só aceita dígito
- Conciliação e cruzamento de bases
Cronograma oficial
- 25/07/2026 · base do CNPJ indisponível para procedimentos finais
- 27/07/2026 · sistemas entram em produção
- 31/07/2026 · primeira emissão no novo formato
- CNPJs numéricos já existentes continuam válidos
Sua regex vai quebrar?
Cole a expressão que seu sistema usa hoje:
Passe sua base inteira de uma vez
Tem uma planilha com milhares de CNPJs de clientes ou fornecedores? Solte aqui e receba de volta um relatório com o status de cada um — válido, inválido, alfanumérico ou legado. Tudo processado no seu navegador: nenhum dado é enviado a servidor algum.
Arraste um CSV/TXT ou clique para escolher
uma coluna de CNPJs, com ou sem máscara · ou cole abaixo
| # | CNPJ | Formatado | Tipo | Status |
|---|
API REST para plugar no seu ERP
Um endpoint HTTP para validar CNPJ direto do seu backend, sem reescrever a lógica do módulo 11 em cada sistema. Roda no edge da Cloudflare — resposta em milissegundos.
/api/v1/validate
Chama a API real no edge da Cloudflare.
{ }
curl -X POST https://cnpj-alfanumerico-6li.pages.dev/api/v1/validate \
-H "Content-Type: application/json" \
-d '{"cnpj":"12.ABC.345/01DE-35"}'
const r = await fetch("https://cnpj-alfanumerico-6li.pages.dev/api/v1/validate", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ cnpj: "12.ABC.345/01DE-35" }),
});
const data = await r.json();
console.log(data.valid, data.type);
import requests
r = requests.post(
"https://cnpj-alfanumerico-6li.pages.dev/api/v1/validate",
json={"cnpj": "12.ABC.345/01DE-35"},
)
print(r.json()["valid"], r.json()["type"])
$ch = curl_init("https://cnpj-alfanumerico-6li.pages.dev/api/v1/validate");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ["Content-Type: application/json"],
CURLOPT_POSTFIELDS => json_encode(["cnpj" => "12.ABC.345/01DE-35"]),
]);
$data = json_decode(curl_exec($ch), true);
echo $data["valid"] ? "valido" : "invalido";
/api/v1/validate/batchaté 1.000 por vez/api/v1/generate?count=10CNPJs de teste/api/v1/healthstatus + autocheckEspecificação completa: openapi.yaml · CORS liberado, sem autenticação nesta versão.
A função de validação pronta, na sua linguagem
Não quer depender de API externa? Leve a função para dentro do seu sistema. Cada implementação é o mesmo algoritmo oficial, sem dependências, com um autoteste embutido que você roda para conferir. É exatamente o arquivo que você baixa — domínio público.
carregando…
Validação nos seus formulários com uma linha
Tem loja, sistema ou landing com campo de CNPJ? Cole o script e todo input
data-cnpj passa a validar o formato novo automaticamente — máscara,
checagem em tempo real e bloqueio de envio inválido. Sem build, sem dependência.
Como o dígito verificador é calculado
Mesma lógica do módulo 11 de sempre, com uma tabela de valores estendida: cada caractere
vale seu código ASCII menos 48. Assim 0–9 valem 0 a 9 e A–Z valem 17 a 42.
1. Valor de cada caractere
valor = ASCII(caractere) − 48
2. Pesos (direita → esquerda, 2 a 9)
DV1: 5 4 3 2 9 8 7 6 5 4 3 2
DV2: 6 5 4 3 2 9 8 7 6 5 4 3 2
Soma dos produtos, resto da divisão por 11. Resto 0 ou 1 → dígito 0; senão 11 − resto.
3. Fonte oficial
Instrução Normativa RFB nº 2.229/2024.
Manual público do SERPRO — "Cálculo dos dígitos verificadores de CNPJ alfanumérico".
Exemplo de referência: 12.ABC.345/01DE-35 (DVs 3 e 5).
Dúvidas sobre a virada
O que é o CNPJ alfanumérico?
É o novo formato de CNPJ da Receita Federal (IN RFB nº 2.229/2024). As 12 primeiras
posições passam a aceitar letras de A a Z além de números; só os 2 dígitos verificadores
continuam numéricos. Exemplo: 12.ABC.345/01DE-35.
Quando entra em vigor?
A primeira emissão no formato alfanumérico é em 31/07/2026; os sistemas entram em produção em 27/07/2026. Os CNPJs numéricos já existentes continuam válidos e não precisam ser reemitidos.
Meus CNPJs numéricos atuais vão mudar?
Não. A mudança vale apenas para novas inscrições. O que muda é que seu sistema precisa aceitar os novos CNPJs com letras, sem quebrar cadastros e integrações.
Minha regex ^\d{14}$ vai parar de funcionar?
Sim — ela rejeita CNPJ alfanumérico válido. Troque por ^[0-9A-Z]{12}[0-9]{2}$
(sem máscara), que aceita letras nas 12 primeiras posições e mantém os dígitos verificadores
numéricos. Teste a sua na seção "O que muda".
Os dados que eu colo aqui vão para algum servidor?
Não. A validação e o processamento de CSV rodam inteiramente no seu navegador. A API é opcional e existe só para quem quer integrar no backend.
A ferramenta pega o óbvio. O diagnóstico pega o que está escondido.
O validador acima resolve regex e formulário. Mas o risco caro costuma estar no banco de dados, na integração fiscal, na planilha de conciliação e no emissor de NF-e. Eu reviso seus sistemas, aponto exatamente o que vai quebrar e entrego um checklist de correção antes do prazo. Consultoria avulsa, sem mensalidade.
- ✓ Revisão de banco, formulário, regex e integrações
- ✓ Lista priorizada do que quebra
- ✓ Checklist de correção com exemplos de código
- ✓ Pagamento via Pix, sem contrato longo