CNPJ alfanumérico: o que muda e o que quebra
Em 31 de julho de 2026 a Receita Federal emitiu o primeiro CNPJ com letra dentro: 00.000.000/E08G-12, uma filial do Banco do Brasil. São as mesmas quatorze posições, a mesma máscara e a mesma conta de dígito verificador de sempre — só que as doze primeiras posições agora podem trazer qualquer uma das 26 letras. Seu CNPJ não muda. O que muda é tudo que lê CNPJ.
Esta página faz quatro coisas que o comunicado oficial não faz. Conferimos os seis CNPJ alfanuméricos publicados em documento oficial e um deles não fecha a própria conta — está no PDF de perguntas e respostas da Receita, e quem usar aquele número como massa de teste vai procurar defeito no lugar errado. Medimos quanto do CNPJ numérico ainda sobra, que a Receita diz ser pouco e não publica. Mostramos a conta do novo dígito verificador passo a passo, com o exemplo da própria Receita. E medimos o que a conta nova deixa passar — um erro de digitação escapa 155 vezes mais no formato com letras do que no formato antigo.
A resposta curta, se você só quer saber se precisa fazer algo
Se você TEM uma empresa: nada. O número não muda, não há recadastramento, não há taxa, não há prazo. As perguntas e respostas oficiais respondem isso em cinco perguntas diferentes, porque é a dúvida que mais aparece. Quem tem CNPJ numérico morre com ele.
Se você VAI abrir empresa ou filial: o número pode vir com letra, e pode vir sem — a atribuição é aleatória e os dois formatos convivem. Nada muda no processo de inscrição.
Se você ESCREVE software, cadastra fornecedor ou emite nota: aqui mora o trabalho todo. Campo numérico não guarda letra, máscara de dígito recusa letra, e a validação copiada de tutorial rejeita como inválido um CNPJ que a Receita acabou de emitir. É disso que trata o resto desta página.
A linha do tempo, com a norma de cada data
| Data | O que aconteceu |
|---|---|
| 15/10/2024 | Instrução Normativa RFB nº 2.229 é publicada e cria o formato |
| 25/04/2025 | Nota Técnica Conjunta DF-e 2025.001 leva o formato para a nota fiscal eletrônica |
| 06/04/2026 | Ambiente de homologação dos documentos fiscais passa a aceitar letras |
| 06/07/2026 | Ambiente de produção dos documentos fiscais passa a aceitar letras |
| 23 a 25/07/2026 | Janela de manutenção: a base do CNPJ fica só em consulta |
| 31/07/2026 | A Receita gera o primeiro CNPJ alfanumérico do país, 00.000.000/E08G-12 |
Cronograma da página oficial do projeto; as datas dos ambientes fiscais são as da Nota Técnica Conjunta DF-e 2025.001.
Não existe data de obrigatoriedade para empresa nenhuma, porque não existe migração: o formato alcança apenas inscrições novas. O que existe é prazo para sistema, e ele já passou — o ambiente de produção da nota fiscal aceita letra desde 6 de julho de 2026, e o primeiro CNPJ com letra existe desde 31 de julho. A partir daqui é questão de quando um deles cai no seu formulário.
Quanto do CNPJ numérico já acabou
A página oficial do projeto diz que o objetivo é “solucionar o esgotamento iminente de números CNPJ disponíveis”. Ela não diz quanto sobra, e nós não achamos publicação da Receita que diga — as duas apresentações técnicas do projeto pedem autenticação, e as perguntas e respostas não trazem número nenhum de espaço restante. Então medimos.
A raiz do CNPJ tem 8 posições, o que dá 100.000.000 raízes numéricas possíveis, e ela é atribuída em sequência. Isso não é suposição: montamos o CNPJ da matriz de raízes espalhadas pela faixa inteira e perguntamos a uma consulta pública se cada um existe. As datas saíram em ordem crescente, do primeiro milhão em 1996 até a fronteira de hoje.
| Raiz | Atividade iniciada em | Raízes por ano no trecho |
|---|---|---|
| 1.000.000 | 15/01/1996 | — |
| 10.000.000 | 10/07/2008 | 720.395 |
| 20.000.000 | 02/04/2014 | 1.744.742 |
| 30.000.000 | 21/03/2018 | 2.518.979 |
| 40.000.000 | 03/12/2020 | 3.694.332 |
| 50.000.000 | 20/03/2023 | 4.360.812 |
| 55.000.000 | 04/05/2024 | 4.440.389 |
| 60.000.000 | 20/03/2025 | 5.703.125 |
| 65.000.000 | 07/02/2026 | 5.632.716 |
| 67.960.000 | 11/07/2026 | 7.015.584 |
| 67.970.000 | não existe | |
Sondagem feita em 9 de agosto de 2026 contra a consulta pública de CNPJ da BrasilAPI, que espelha os dados abertos do cadastro. A data é a de início de atividade declarada, não a da atribuição da raiz.
O que a conta dá
A última raiz que encontramos foi a 67.960.000, com atividade iniciada em 11/07/2026. Isso põe 68% do espaço numérico já gasto e 32.040.000 raízes de sobra. No ritmo do último trecho medido — 7.015.584 raízes por ano — o CNPJ só de números acaba em cerca de 4,6 anos. E o ritmo está subindo: eram 4.440.389 raízes por ano no trecho que terminou em 04/05/2024.
É por isso que a mudança veio agora, e é por isso que ela não podia esperar a última raiz acabar: um cadastro que fica sem número não para de emitir número, para de aceitar empresa nova. O Mapa de Empresas do governo registrou 456 mil aberturas em junho de 2026, com 25,2 milhões de empresas ativas.
Do outro lado, o espaço que as letras abrem não é “um pouco maior”. A raiz sai de 100.000.000 para 2.821.109.907.456 combinações — 28.211 vezes mais. A ordem da filial, que ia de 0001 a 9.999, passa a ter 1.679.616 valores possíveis, ou 168 vezes mais. Uma empresa deixa de ter teto prático de filiais no mesmo dia em que o país deixa de ter teto prático de empresas.
Onde exatamente entram as letras
Continuam sendo quatorze posições com a máscara de sempre, e a divisão é a de sempre: as 8 primeiras são a raiz, que identifica a entidade e é igual na matriz e em toda filial dela; as 4 seguintes são a ordem, que distingue um estabelecimento do outro; as duas últimas são os dígitos verificadores.
Letra pode aparecer nas doze primeiras. Os dois dígitos verificadores continuam sendo algarismo, sempre — se você recebeu um “CNPJ” com letra nas duas últimas posições, o número está errado, e não é o formato novo. Raiz e ordem variam de forma independente, o que dá quatro combinações possíveis:
| Exemplo | Raiz | Ordem | Quando aparece |
|---|---|---|---|
| 12.345.678/0001-95 | Numérica | Numérica | O CNPJ de sempre. Continua sendo emitido e continua valendo. |
| 12.345.678/000A-08 | Numérica | Com letra | Empresa antiga abrindo filial nova. É a forma do primeiro CNPJ emitido. |
| AA.345.678/0003-86 | Com letra | Numérica | Empresa nova, filial de número comum. |
| AA.345.678/000A-29 | Com letra | Com letra | As duas partes com letra ao mesmo tempo. |
As bases dos três exemplos com letra saem da pergunta 23 das perguntas e respostas oficiais. Os dígitos verificadores desta tabela são calculados aqui, e não copiados de lá — um dos três está errado no documento, e a conferência está logo abaixo.
Repare no primeiro CNPJ emitido de verdade, 00.000.000/E08G-12: a raiz é toda de zeros — é a do Banco do Brasil, a mesma de 00.000.000/0001-91 — e a letra está na ordem. Não foi uma empresa nova estreando o formato: foi uma filial nova de uma empresa velha.
São as 26 letras — não 21, não 22
Circula bastante que I, O, U, Q e F ficariam de fora para não confundir com algarismo. Não é o que a Receita escreve. A resposta oficial usa estas palavras: a identificação será composta por “números de 0 a 9 e quaisquer uma das 26 letras de A até Z”. A tabela de cálculo do Serpro lista as vinte e seis, e o primeiro CNPJ emitido traz um G — que estaria proibido na versão que circula.
Existe um detalhe verdadeiro por trás do boato, e ele está na pergunta 45: a Receita evita certas combinações na hora de gerar o número, para não formar palavra ofensiva nem confundir com algarismo. Só que esse controle é interno e não é publicado — e a orientação oficial para quem escreve software é a oposta: “que as adaptações nos sistemas considerem todas as letras do alfabeto”. Um validador que recusa cinco letras vai recusar CNPJ legítimo.
Só as maiúsculas entram na conta. A minúscula não é uma variação inofensiva do mesmo número — ela quebra a aritmética, e mais adiante está medido em quanto.
A conta do dígito verificador, passo a passo
O algoritmo é o módulo 11 de sempre. O único acréscimo é a tradução de letra para número, e a regra é curta: cada caractere vale o seu código ASCII menos 48. Os algarismos continuam valendo eles mesmos, porque 0 é 48 na tabela ASCII e 48 − 48 = 0. As letras entram depois:
A = 17 · B = 18 · C = 19 · D = 20 · E = 21 · F = 22 · G = 23 · H = 24 · I = 25 · J = 26 · K = 27 · L = 28 · M = 29 · N = 30 · O = 31 · P = 32 · Q = 33 · R = 34 · S = 35 · T = 36 · U = 37 · V = 38 · W = 39 · X = 40 · Y = 41 · Z = 42
Repare no buraco entre 9 e 17: são os sete caracteres que a tabela ASCII põe entre 9 e A. O buraco não atrapalha nada — a conta só precisa que cada caractere tenha um valor, não que os valores sejam seguidos. Ele tem uma consequência, e é justamente a que a seção seguinte mede.
Feita a tradução, o resto é a conta antiga: cada valor é multiplicado por um peso, os pesos vão de 2 a 9 da direita para a esquerda e recomeçam em 2 depois do oitavo, soma tudo e tira o resto por 11. Resto 0 ou 1 dá dígito 0; qualquer outro dá 11 menos o resto.
O exemplo abaixo é o da própria Receita, 12.ABC.345/01DE-35, para você poder conferir esta tabela contra a fonte. A base é 12ABC34501DE.
Primeiro dígito
| Posição | Caractere | Valor | Peso | Produto |
|---|---|---|---|---|
| 1ª | 1 | 1 | 5 | 5 |
| 2ª | 2 | 2 | 4 | 8 |
| 3ª | A | 17 | 3 | 51 |
| 4ª | B | 18 | 2 | 36 |
| 5ª | C | 19 | 9 | 171 |
| 6ª | 3 | 3 | 8 | 24 |
| 7ª | 4 | 4 | 7 | 28 |
| 8ª | 5 | 5 | 6 | 30 |
| 9ª | 0 | 0 | 5 | 0 |
| 10ª | 1 | 1 | 4 | 4 |
| 11ª | D | 20 | 3 | 60 |
| 12ª | E | 21 | 2 | 42 |
| Soma | 459 |
459 dividido por 11 deixa resto 8. Como o resto é 2 ou mais, o dígito é 11 menos o resto: 3.
Segundo dígito
Agora são treze caracteres, porque o primeiro verificador entra na conta — é esse encadeamento que faz um erro em qualquer posição derrubar os dois dígitos. Os pesos recomeçam, e repare que a primeira posição agora vale 6 em vez de 5: eles são contados da direita, então acrescentar um caractere no fim empurra todo mundo.
| Posição | Caractere | Valor | Peso | Produto |
|---|---|---|---|---|
| 1ª | 1 | 1 | 6 | 6 |
| 2ª | 2 | 2 | 5 | 10 |
| 3ª | A | 17 | 4 | 68 |
| 4ª | B | 18 | 3 | 54 |
| 5ª | C | 19 | 2 | 38 |
| 6ª | 3 | 3 | 9 | 27 |
| 7ª | 4 | 4 | 8 | 32 |
| 8ª | 5 | 5 | 7 | 35 |
| 9ª | 0 | 0 | 6 | 0 |
| 10ª | 1 | 1 | 5 | 5 |
| 11ª | D | 20 | 4 | 80 |
| 12ª | E | 21 | 3 | 63 |
| 13ª | 3 | 3 | 2 | 6 |
| Soma | 424 |
Resto 6, dígito 5. O CNPJ fecha em 12.ABC.345/01DE-35, que é exatamente o número publicado na pergunta 14 do documento oficial.
Uma observação para quem vai escrever isso: o peso recomeçar é onde a mão erra. São oito pesos para doze ou treze posições, então a sequência dá a volta. Quem continua contando 10, 11, 12 produz um dígito perfeitamente plausível, e o defeito só aparece quando alguém confere contra um CNPJ de verdade — que é exatamente por que o exemplo desta página é o da Receita, e por que a tabela acima é calculada pelo mesmo código que roda no validador daqui, e não digitada à mão.
E conferir um número não resolve. Rodamos as duas versões da conta — com e sem o recomeço — nas 1.679.616 bases possíveis de variar as quatro primeiras posições, que são as únicas em que os pesos diferem: em 10,74% delas as duas dão o mesmo primeiro dígito. Uma a cada 9,3, mais ou menos. Pegar um CNPJ, conferir na mão e ver bater é um teste que a implementação errada passa com folga.
A maior parte dessa coincidência é aritmética pura — 152.669 dos 180.457 casos são aqueles em que a soma dos quatro primeiros valores é múltipla de 11, e a diferença some no resto. Os outros 27.788 vêm da regra do resto: 0 e 1 produzem o mesmo dígito 0, então duas somas diferentes desembocam no mesmo lugar. As oito posições restantes foram fixadas em 45670001, e a segunda parcela depende delas — por isso este número é medido e não deduzido.
Conferimos os seis CNPJ oficiais. Um não fecha a conta.
Já que a página ensina a conta, ela tem que aguentar ser usada. Pegamos todo CNPJ alfanumérico que encontramos escrito em documento oficial — o exemplo resolvido do Serpro, o primeiro número realmente emitido, e os que aparecem nas perguntas e respostas da Receita — e passamos os seis pela mesma rotina que roda no validador daqui. 5 fecham. Um não.
| Como está publicado | Onde | DV publicado | DV que a conta dá |
|---|---|---|---|
| 12.ABC.345/01DE-35 | Serpro, cálculo do DV; Receita, pergunta 14 | 35 | igual |
| 00.000.000/E08G-12 | Receita, notícia de 31 de julho de 2026 | 12 | igual |
| 12.345.678/0001-95 | Receita, pergunta 17 | 95 | igual |
| AA345678/0003-29 | Receita, pergunta 23, Ex1 | 29 | 86 |
| AA345678/000A-29 | Receita, pergunta 23, Ex2 | 29 | igual |
| 12.345.678/000A-08 | Receita, pergunta 23, Ex3 | 08 | igual |
Documentos lidos em 9 de agosto de 2026. A coluna da direita sai de cnpj.ts, o módulo que o gerador e o validador deste site usam.
O que não fecha é o primeiro exemplo da pergunta 23, AA345678/0003-29. A base AA3456780003 produz 86, e não 29. O número certo seria AA.345.678/0003-86.
A conta dele, por extenso
| Posição | Caractere | Valor | Peso | Produto |
|---|---|---|---|---|
| 1ª | A | 17 | 5 | 85 |
| 2ª | A | 17 | 4 | 68 |
| 3ª | 3 | 3 | 3 | 9 |
| 4ª | 4 | 4 | 2 | 8 |
| 5ª | 5 | 5 | 9 | 45 |
| 6ª | 6 | 6 | 8 | 48 |
| 7ª | 7 | 7 | 7 | 49 |
| 8ª | 8 | 8 | 6 | 48 |
| 9ª | 0 | 0 | 5 | 0 |
| 10ª | 0 | 0 | 4 | 0 |
| 11ª | 0 | 0 | 3 | 0 |
| 12ª | 3 | 3 | 2 | 6 |
| Soma | 366 |
366 dividido por 11 deixa resto 3, então o primeiro dígito é 8. Com ele no fim, a base de treze soma 412, resto 5, e o segundo dígito é 6. Dá para refazer no papel em dois minutos, e é o que pedimos que você faça antes de acreditar na frase acima.
De onde o 29 veio
O exemplo logo acima dele, na mesma pergunta, é AA345678/000A-29 — e esse fecha. Os dois têm a mesma raiz e diferem só na ordem: 000A num, 0003 no outro. O dígito 29 é o do primeiro. Tem toda a cara de o segundo exemplo ter nascido do primeiro com a ordem trocada e a conta não refeita — que é, com uma ironia difícil de ignorar, exatamente o erro que o dígito verificador existe para pegar.
Três coisas para essa acusação ficar do tamanho certo. É erro de exemplo, não de norma: a regra descrita no mesmo documento é a que este site implementa, e ela concorda com os outros cinco números oficiais, incluindo o CNPJ numérico da pergunta 17 — que entra na conferência justamente como controle. Ninguém perde nada lendo o exemplo: ele existe para mostrar que raiz e ordem variam de forma independente, e isso ele mostra direito. Quem paga é quem usa como massa de teste: o número entra no formulário, o sistema recusa, e a pessoa vai caçar defeito na própria implementação — que é o pior lugar para procurar um defeito que não está lá.
Conferimos por três caminhos independentes antes de escrever isto: à mão, por um script escrito do zero a partir do PDF do Serpro e pelo módulo deste repositório. Você pode fazer um quarto sem sair daqui: cole AA345678/0003-29 no validador e veja qual dígito ele aponta. E pode fazer um quinto na fonte, com o Simulador Nacional de CNPJ, que é da própria Receita e também valida.
Não achamos errata, e não avisamos ninguém antes de publicar — se o documento for corrigido, esta seção continua descrevendo com precisão o PDF de 9 de agosto de 2026, que é a data em que ele foi lido.
O que a conta nova deixa passar
Dígito verificador existe para uma coisa: recusar na hora um número digitado errado. Vale perguntar o quanto o formato novo continua fazendo isso — e a resposta é que ele piorou, de um jeito que dá para calcular.
O módulo 11 enxerga a diferença entre o caractere certo e o errado. Se essa diferença for múltipla de 11, ela some: o peso multiplica a diferença, múltiplo de 11 vezes qualquer peso continua múltiplo de 11, o resto não se mexe e os dois dígitos saem iguais. Entre algarismos isso nunca acontece: a maior diferença possível é 9, e a conta dos pares invisíveis no formato numérico dá 0. Com as letras os valores vão até 42, e ela dá 43:
| Diferença | Pares que a conta não distingue |
|---|---|
| 11 | 6↔A 7↔B 8↔C 9↔D A↔L B↔M C↔N D↔O E↔P F↔Q G↔R H↔S I↔T J↔U K↔V L↔W M↔X N↔Y O↔Z |
| 22 | 0↔F 1↔G 2↔H 3↔I 4↔J 5↔K 6↔L 7↔M 8↔N 9↔O A↔W B↔X C↔Y D↔Z |
| 33 | 0↔Q 1↔R 2↔S 3↔T 4↔U 5↔V 6↔W 7↔X 8↔Y 9↔Z |
Lista derivada do alfabeto oficial pelo mesmo módulo que calcula os dígitos no site, e não digitada à mão.
Cada caractere pode ser trocado por 35 outros, e 6,83% dessas trocas caem num par cego — contra 0% no formato numérico. Isso é a aritmética. A medição por simulação confirma e acrescenta um pouco: trocamos cada um dos doze caracteres da base de 100 mil CNPJ de cada formato por cada outro caractere do alfabeto — 42 milhões de trocas no formato alfanumérico — e conferimos quantas continuavam fechando a conta.
| Erro simulado | Passa no CNPJ numérico | Passa no alfanumérico |
|---|---|---|
| Um caractere trocado por outro | 1 em 2.262 | 1 em 15 |
| Dois caracteres vizinhos trocados de lugar | 1 em 746 | 1 em 14 |
Um erro de um caractere escapa 155 vezes mais no formato novo. E note a primeira coluna: mesmo no CNPJ só de números a conta não pega tudo. Ela falha 1 vez em 2.262, e a culpa é da regra do resto — restos 0 e 1 produzem o mesmo dígito 0, então existe uma fresta por onde uma troca passa sem mudar nenhum dos dois dígitos. Quem repete que “o módulo 11 pega qualquer erro de digitação” está arredondando.
A parte boa: quase nada disso é erro humano
Olhe a lista de pares cegos de novo e procure uma dupla que alguém confunda de verdade. Quase não tem. Os pares que a conta perde são coisas como 0↔F e A↔L — ninguém troca essas teclas por descuido. As confusões que existem de fato são entre caracteres parecidos, e a diferença de valor entre eles quase nunca é múltipla de 11:
| Confusão | Diferença de valor | A conta pega? |
|---|---|---|
| 0 ↔ O | 31 | Sim |
| 1 ↔ I | 24 | Sim |
| 1 ↔ L | 27 | Sim |
| 5 ↔ S | 30 | Sim |
| 8 ↔ B | 10 | Sim |
| 2 ↔ Z | 40 | Sim |
| 6 ↔ G | 17 | Sim |
| 2 ↔ S | 33 | Não — passa batido |
Zero com O, um com I, cinco com S, oito com B, dois com Z, seis com G: a conta pega todas. A exceção da tabela é 2 ↔ S, que é confusão real de escrita à mão e de leitura automática de documento, e é um dos 43 pares cegos. Ou seja: a piora que medimos é grande em proporção e pequena em prática — ela ameaça o número que chega truncado, embaralhado por um sistema ou chutado por um script, não o número que alguém digitou olhando o cartão.
E o filtro de sequência repetida? Aqui ele quase não tem o que filtrar
Todo validador de CPF carrega uma lista das dez sequências de algarismo repetido — 111.111.111-11 e companhia —, porque as dez passam na aritmética do módulo 11 e nenhuma delas é um CPF. A intuição de quem chega no CNPJ vindo de lá é copiar esse filtro, e ela está errada: rodamos a conta nos 36 caracteres do alfabeto, repetidos nas quatorze posições, e só uma fecha — a de 0, os quatorze zeros.
O motivo é a soma dos pesos da base, que dá 58 — e 58 não é múltiplo de 11. Para qualquer caractere de valor diferente de zero, a conta devolve um verificador que não é o próprio caractere, então essas sequências simplesmente não existem como número válido. O zero passa porque zero vezes qualquer peso continua zero. Quem copiar a lista de dez do CPF vai escrever nove ramos que nenhum número jamais alcança — e o validador daqui diz “a conta até fecha” só para a de zeros, porque para as outras nove a frase seria mentira.
Minúscula derruba 98% dos CNPJ — e é aí que mora a armadilha
Muito sistema normaliza texto para minúscula antes de guardar ou comparar. É um hábito velho e quase sempre inofensivo. Aqui ele não é: a vale 97 na tabela ASCII, e 97 − 48 dá 49 — um valor que nenhuma posição de CNPJ pode ter. A conta roda assim mesmo, com o número errado, e devolve outro dígito.
Sorteamos 500 mil CNPJ alfanuméricos com pelo menos uma letra e recalculamos os dois dígitos depois de passar cada um por toLowerCase(): 98,1% deixam de fechar a conta. Os outros 1,9% continuam fechando — e são eles o problema.
Um sistema que recusasse 100% seria consertado no primeiro dia, porque ninguém conseguiria se cadastrar. Um sistema que recusa 98% parece um sistema com bug intermitente: a maioria dos clientes reclama, um a cada cinquenta passa, e o suporte fica procurando padrão onde só existe aritmética. A explicação do resíduo é exata — dos 4.095 arranjos possíveis de posição de letra nas doze casas, 27 têm a soma dos pesos das posições com letra num múltiplo de 11, e nesses o deslocamento da minúscula some no resto exatamente como somem os pares cegos da seção anterior.
O conserto é de uma linha, e a ordem importa: converta para MAIÚSCULA antes de validar, nunca depois. Um aviso sobre o atalho, porque ele morde: em JavaScript, "ı".toUpperCase() devolve "I" — o i sem pingo do turco vira um I legítimo, e a conta passa a rodar sobre um número que ninguém digitou. Por isso o validador daqui confere os caracteres contra uma lista explícita antes de converter a caixa, e avisa na tela quando converteu.
O que quebra no seu sistema, em ordem de probabilidade
O campo do banco de dados. CNPJ guardado como BIGINT, NUMERIC ou INT não aceita letra: a gravação falha, ou pior, o dado entra truncado. O tipo certo é texto de quatorze posições, e sempre foi — CNPJ nunca foi número, é identificador. Quem guardava como número já perdia o zero à esquerda.
A limpeza da entrada. replace(/\D/g, "") é a linha mais copiada do Brasil e agora ela come as letras: o CNPJ alfanumérico chega com quatorze posições e sai com dez, e a mensagem que o usuário recebe é “faltam 4 dígitos”. Tire só a pontuação da máscara — ponto, barra, hífen e espaço.
A validação de formato. ^\d{14}$ recusa CNPJ legítimo. O formato hoje é doze posições alfanuméricas seguidas de dois algarismos.
O cálculo do dígito. Toda implementação que converte caractere com parseInt devolve NaN na primeira letra e a soma inteira vira NaN — o que costuma aparecer como “CNPJ inválido”, e não como erro. A regra é código ASCII menos 48.
Ordenação e comparação. Ordenar CNPJ como número deixa de funcionar; ordenar como texto passa a misturar formatos. E comparar sem normalizar a caixa vai encontrar duplicata onde não tem, ou deixar de encontrar onde tem.
Planilha. Colar uma coluna de CNPJ sem máscara no Excel ou no Google Planilhas continua sendo péssima ideia, e agora por dois motivos: os numéricos viram notação científica e perdem zero à esquerda, como sempre, e uma parte pequena dos alfanuméricos tem a forma dígitos + E + dígitos — que a planilha também lê como número. Formate a coluna como texto antes de colar.
0001 deixou de ser sinônimo de matriz
Esta é a mudança que passa mais despercebida, porque não é de formato. A Receita esclarece na pergunta 25 que o sufixo 0001 continua indicando a matriz no momento em que o CNPJ é gerado, mas que essa associação não é permanente: com o tempo, uma filial pode se tornar o estabelecimento principal mantendo um número de ordem diferente de 0001.
Quem tem regra de negócio do tipo “se termina em 0001 antes do dígito, é matriz” está com um fato do cadastro codificado num palpite sobre a string. Isso não quebra hoje e não dá erro nenhum — só passa a responder errado, silenciosamente, que é a pior forma de estar errado.
A nota fiscal já aceita, e desde quando
A adaptação dos documentos fiscais eletrônicos veio pela Nota Técnica Conjunta DF-e 2025.001, de 25 de abril de 2025, que cobre NF-e, NFC-e, CT-e, MDF-e, BP-e, NF3-e e NFCom, complementada pela Nota Técnica 2026.004 com as mudanças de schema. Os prazos da nota conjunta foram homologação a partir de 6 de abril de 2026 e produção a partir de 6 de julho de 2026 — ou seja, o ambiente fiscal passou a aceitar letra algumas semanas antes de existir o primeiro CNPJ com letra, que é a ordem certa de fazer isso.
Para a NF-e e a NFC-e especificamente, a 2026.004 ajustou esse calendário: homologação a partir de 15 de junho e produção em 1º de julho de 2026. Essas duas datas são as únicas desta página que não lemos no documento de origem — o PDF no portal da NF-e entra em laço de redirecionamento a partir daqui, e elas ficam como estão nos boletins que reproduzem a nota. A conclusão não muda com nenhuma das versões: o ambiente fiscal já aceitava letra antes de 31 de julho.
Duas respostas rápidas do documento oficial, porque são as perguntas que aparecem: a chave PIX vinculada a CNPJ continua funcionando igual, e o DARF preenchido manualmente aceita CNPJ alfanumérico no campo de CPF/CNPJ.
A Receita não vai te ligar por causa disso
Mudança de cadastro é época de golpe, e a Receita colocou o aviso no documento oficial, na pergunta 44: ela não entra em contato por WhatsApp, e-mail ou SMS pedindo atualização, pagamento de taxa ou qualquer informação relacionada ao CNPJ alfanumérico. Se entrarem em contato, é golpe.
Vale repetir o que sustenta esse aviso: não existe recadastramento, não existe taxa, não existe prazo para empresa nenhuma trocar de número, e nenhum CNPJ será cancelado por não ser alfanumérico.
Como testar o seu sistema
A Receita publicou um Simulador Nacional de CNPJ, gratuito, que gera até mil CNPJ fictícios por usuário, valida regras de formação e roda inteiro no navegador. É a referência oficial, e é para onde ir quando a discussão for “o número que estou usando no teste é legítimo?”.
O gerador daqui resolve o mesmo problema com menos cliques e mais controle: você escolhe se quer o formato antigo ou o novo, matriz ou filial, com ou sem pontuação, e copia. O validador faz o caminho de volta e é o que interessa para depurar: em vez de responder “inválido”, ele diz qual dígito está errado e qual a conta esperava ali, aceita letra minúscula avisando que converteu, e engole os caracteres invisíveis que vêm junto quando o número é copiado de PDF ou de planilha. Os dois rodam no seu navegador e não enviam nada para lugar nenhum.
Um teste que vale mais que os três: pegue um CNPJ alfanumérico e passe ele pelo caminho inteiro do seu sistema — cadastro, gravação, relatório, integração, exportação para planilha, emissão de documento. O formato costuma passar na validação e morrer três camadas adiante, num campo que ninguém lembrava que existia.
O que esta medição não cobre
A sondagem da raiz mede o que uma consulta pública de CNPJ enxerga, e ela espelha os dados abertos do cadastro com o atraso da última publicação — a fronteira que encontramos tem atividade iniciada em julho de 2026, então o número real hoje é um pouco maior que o nosso. “Raiz não encontrada” também não é prova absoluta de raiz não emitida: uma raiz cuja matriz tenha sido baixada de um jeito atípico responderia igual. Os marcos são pontos de calibração, e não um censo do cadastro.
A projeção de anos supõe ritmo constante, e o ritmo não é constante — está subindo há pelo menos três anos, o que empurra a data para mais perto, não para mais longe. E ela ignora de propósito o efeito do próprio formato novo: à medida que a Receita passa a distribuir raízes com letra, o consumo do espaço numérico desacelera.
As duas simulações usam sorteio uniforme sobre o alfabeto inteiro. A Receita evita internamente algumas combinações de letra, então a distribuição real dos CNPJ emitidos não é exatamente essa — o que muda as casas decimais, não a ordem de grandeza. E elas medem o que a aritmética deixa passar, não o que acontece depois: um número que escapa da conta ainda precisa existir no cadastro para virar o CNPJ de outra empresa.
Fontes
- Página oficial do projeto CNPJ Alfanumérico — Receita Federal. Cronograma e objetivo.
- Perguntas e respostas oficiais (PDF) — Receita Federal. As 52 perguntas: formato, as 26 letras, o cálculo do dígito com o exemplo 12.ABC.345/01DE-35, o sufixo 0001, PIX, DARF, simulador e o aviso de golpe. É também onde está o exemplo AA345678/0003-29, que não fecha a conta — ver a conferência.
- Receita Federal gera o primeiro CNPJ em formato alfanumérico — 31 de julho de 2026. O número 00.000.000/E08G-12.
- Instrução Normativa RFB nº 2.229, de 15 de outubro de 2024 — altera a IN RFB nº 2.119/2022 e cria o formato.
- Cálculo dos dígitos verificadores do CNPJ alfanumérico (PDF) — Serpro. A tabela ASCII completa.
- Portal da Nota Fiscal Eletrônica — Notas Técnicas Conjuntas DF-e 2025.001 e 2026.004.
- Simulador Nacional de CNPJ — Receita Federal.
- Mapa de Empresas — Ministério do Desenvolvimento, Indústria, Comércio e Serviços. Aberturas e empresas ativas.