O novo CNPJ alfanumérico já é realidade. Desde 31 de julho de 2026, a Receita Federal pode atribuir a novas inscrições números que misturam letras e algarismos, e o primeiro CNPJ nesse formato foi gerado justamente nessa data. Para quem desenvolve ou mantém sistemas, a pergunta deixou de ser “quando” e passou a ser “o meu sistema já aceita?”.
Neste guia, você vai entender o que mudou no formato, por que tantos sistemas quebram com a primeira letra, como funciona o novo cálculo do dígito verificador e um checklist técnico para validar banco de dados, telas, APIs e integrações.
Neste artigo:
- O que mudou no CNPJ
- Quem é afetado
- Onde os sistemas quebram
- Como calcular o dígito verificador
- Checklist técnico de adequação
- Como testar seu sistema
- Perguntas frequentes
O que mudou no novo CNPJ
Resposta direta: o CNPJ continua com 14 posições, mas as 12 primeiras (raiz e ordem do estabelecimento) passam a aceitar letras maiúsculas de A a Z além de números. Os dois últimos caracteres, os dígitos verificadores, continuam sendo numéricos. Um exemplo divulgado pela Receita é 12.ABC.345/01DE-35.
| Característica | CNPJ numérico | CNPJ alfanumérico |
|---|---|---|
| Tamanho | 14 posições | 14 posições |
| Raiz (8 primeiras) | Só números | Letras A-Z e números |
| Ordem (posições 9 a 12) | Só números | Letras A-Z e números |
| Dígitos verificadores | Numéricos | Numéricos |
| Máscara | 00.000.000/0000-00 | Mesma estrutura, aceitando letras |
A mudança foi necessária para ampliar a quantidade de combinações disponíveis. Os dois formatos vão conviver: CNPJs já existentes continuam válidos, e novas inscrições ainda podem receber números puramente numéricos.
Quem é afetado pelo novo CNPJ
Empresas que já têm CNPJ não precisam trocar de número. O impacto está em quem armazena, valida ou troca CNPJs de terceiros, ou seja, praticamente todo sistema empresarial:
- ERPs, sistemas contábeis e de faturamento;
- emissores de nota fiscal e PDVs;
- cadastros de clientes, fornecedores e parceiros;
- sistemas bancários, de cobrança e meios de pagamento;
- integrações via API, arquivos de remessa e EDI;
- bancos de dados, data warehouses e relatórios de BI.
Basta um cliente ou fornecedor novo com CNPJ alfanumérico para que um cadastro, uma venda ou uma integração falhe.
Onde os sistemas quebram com o CNPJ alfanumérico
A comparação com o Bug do Milênio faz sentido: uma premissa assumida por décadas (“CNPJ é número”) está espalhada em lugares que ninguém lembra mais. Os pontos de falha mais comuns:
- Colunas numéricas: campos do tipo INT, BIGINT ou NUMERIC rejeitam letras. Pior: em alguns casos, CNPJs numéricos com zeros à esquerda já eram armazenados de forma errada.
- Máscaras de front-end: componentes que só permitem dígitos bloqueiam a digitação de letras.
- Validações e regex: expressões como ^\d{14}$ rejeitam o novo formato.
- Cálculo do dígito verificador: rotinas que convertem cada caractere com conversão numérica direta falham ao encontrar letras.
- Tipagem em código: variáveis declaradas como inteiro ou long em vez de string.
- Integrações: APIs, layouts de arquivo e contratos que definem o campo como numérico.
- Chaves e índices: CNPJ usado como chave primária numérica ou em particionamento.
- Normalização: rotinas que removem tudo que não é dígito e acabam apagando as letras.
Como calcular o dígito verificador do novo CNPJ
A lógica continua sendo módulo 11, com os mesmos pesos. A diferença está em como cada caractere vira número: usa-se o código ASCII do caractere menos 48. Assim, os dígitos de 0 a 9 mantêm seus valores e as letras passam a valer A = 17, B = 18, C = 19, e assim por diante até Z = 42.
- Converta cada um dos 12 primeiros caracteres para o valor (ASCII menos 48).
- Multiplique pelos pesos 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2 e some.
- Calcule o resto da divisão por 11. Se o resto for 0 ou 1, o primeiro dígito é 0; caso contrário, é 11 menos o resto.
- Repita com os 13 caracteres (incluindo o primeiro dígito) e os pesos 6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2 para obter o segundo dígito.
Exemplo de implementação em JavaScript:
function dvCnpj(base12) {
const valores = [...base12.toUpperCase()].map(c => c.charCodeAt(0) - 48);
const pesos1 = [5,4,3,2,9,8,7,6,5,4,3,2];
const calc = (vals, pesos) => {
const resto = vals.reduce((s, v, i) => s + v * pesos[i], 0) % 11;
return resto < 2 ? 0 : 11 - resto;
};
const d1 = calc(valores, pesos1);
const d2 = calc([...valores, d1], [6, ...pesos1]);
return String(d1) + String(d2);
}
dvCnpj("12ABC34501DE"); // "35"
dvCnpj("112223330001"); // "81", funciona também para CNPJs numéricos
Como a regra vale para os dois formatos, uma única função atende CNPJs antigos e novos. Antes de colocar em produção, confira a especificação técnica oficial publicada pela Receita Federal.
Checklist técnico de adequação ao novo CNPJ
- Banco de dados: armazenar como texto (CHAR(14) ou VARCHAR), sem formatação, em maiúsculas. Revise índices, chaves e constraints.
- Back end: tipagem como string, validação com regex do tipo ^[A-Z0-9]{12}[0-9]{2}$ e novo cálculo de DV.
- Front end: máscaras que aceitem letras, conversão automática para maiúsculas e mensagens de erro claras.
- Integrações: revisar contratos de API, layouts de arquivos e parceiros (bancos, adquirentes, contabilidade).
- Dados e BI: ETLs, modelos e relatórios que tratam CNPJ como número.
- Fornecedores de software: confirmar por escrito a versão compatível de ERPs e sistemas de terceiros.
- Convivência: garantir que CNPJs numéricos e alfanuméricos funcionem juntos em buscas, ordenações e relatórios.
Em arquiteturas com Dataverse ou SQL Server, a revisão de tipos e chaves segue a mesma lógica descrita em arquitetura de dados com Dataverse e SQL.
Como testar seu sistema com o novo CNPJ
O teste mais simples continua sendo o mais revelador: cadastre 12.ABC.345/01DE-35 no sistema principal e acompanhe o dado por todo o fluxo.
- O campo aceita a digitação com letras?
- A validação reconhece o dígito verificador como correto?
- O dado é gravado e recuperado sem perder as letras?
- Buscas, relatórios e exportações exibem o valor corretamente?
- As integrações enviam e recebem o CNPJ sem rejeição?
- Um CNPJ inválido (com DV errado) continua sendo bloqueado?
O ideal é transformar esses cenários em testes automatizados no pipeline de entrega, para que nenhuma mudança futura volte a quebrar o suporte. Veja como isso se encaixa em pipelines de CI/CD modernos.
Perguntas frequentes sobre o novo CNPJ
Quando começou o CNPJ alfanumérico?
A Receita Federal iniciou a implantação em 31 de julho de 2026, data em que foi gerado o primeiro CNPJ no novo formato.
Minha empresa vai mudar de CNPJ?
Não. CNPJs já existentes continuam válidos e não precisam ser substituídos. O formato alfanumérico é para novas inscrições.
Os dígitos verificadores também terão letras?
Não. Apenas as 12 primeiras posições podem ter letras. Os dois dígitos verificadores continuam numéricos.
Preciso mudar o cálculo do dígito verificador?
Sim, se a rotina atual converte caracteres assumindo que todos são números. A nova regra usa o valor ASCII menos 48 e funciona para os dois formatos.
Conclusão
O novo CNPJ alfanumérico já está em circulação, e cada nova empresa cadastrada nesse formato é um teste real para o seu sistema. A adequação técnica não é complexa: armazenar como texto, ajustar máscaras e validações, atualizar o cálculo do dígito verificador e revisar integrações.
O risco está em deixar para depois e descobrir o problema quando uma venda, uma nota fiscal ou um pagamento for rejeitado. Teste hoje, automatize os testes e trate o CNPJ como o que ele sempre deveria ter sido: um identificador textual.
