Validador de CNPJ Alfanumérico — Lote e Migração avatar

Validador de CNPJ Alfanumérico — Lote e Migração

Pricing

from $0.10 / 1,000 validation results

Go to Apify Store
Validador de CNPJ Alfanumérico — Lote e Migração

Validador de CNPJ Alfanumérico — Lote e Migração

Valide CNPJs numéricos e alfanuméricos em lote pela regra oficial da Receita Federal. Aceita lista, texto, JSON e CSV, calcula dígitos verificadores, aponta erros e duplicados e gera relatório de migração grátis. Validação estrutural determinística, sem consulta externa ou IA.

Pricing

from $0.10 / 1,000 validation results

Rating

0.0

(0)

Developer

Johnn Mottin

Johnn Mottin

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

25 minutes ago

Last modified

Share

Valide CNPJ alfanumérico e numérico em lote pela regra oficial

O CNPJ alfanumérico já está em produção no Brasil. Em 31 de julho de 2026, a Receita Federal informou a geração da primeira inscrição nesse formato: 00.000.000/E08G-12.

Este Actor ajuda a localizar validações antigas que aceitam apenas 14 dígitos e a tratar o novo formato corretamente.

Ele valida CNPJs numéricos e alfanuméricos em lote, calcula os dígitos verificadores pela regra implementada para o novo padrão e entrega um relatório gratuito para diagnóstico de migração da sua base.

Aceita lista direta, texto livre, registros JSON e CSV na mesma execução.

Sem consulta cadastral. Sem API externa. Sem navegador. Sem IA no veredito.

Principais recursos

  • CNPJ numérico e alfanumérico
  • Validação estrutural determinística
  • Dígitos verificadores
  • Normalização com ou sem máscara
  • Lista direta de CNPJs
  • Extração de CNPJ em texto livre
  • Registros JSON com campo configurável
  • CSV com coluna configurável
  • Vírgula ou ponto-e-vírgula no CSV
  • Detecção de duplicados na execução
  • Posição da primeira ocorrência duplicada
  • Erros estruturados por registro
  • Posição de caractere inválido
  • DV informado x DV calculado
  • Relatório de migração gratuito
  • Contagem numérico x alfanumérico
  • Principais erros da base
  • Distribuição por fonte de entrada
  • Até 50.000 resultados por execução
  • Sem requisição externa
  • Pay Per Event

Actor comunitário não-oficial. Sem afiliação com a Receita Federal do Brasil ou qualquer órgão público. A implementação usa a regra estrutural do CNPJ alfanumérico como referência técnica. Validação estrutural não confirma existência, situação cadastral, titularidade ou regularidade de uma inscrição.


Por que este Actor existe

Muitos sistemas históricos ainda possuem validações parecidas com:

^\d{14}$

Esse tipo de regra aceita apenas números.

Com o CNPJ alfanumérico, as primeiras 12 posições podem incluir letras conforme o novo padrão, enquanto as posições de dígito verificador permanecem numéricas.

O problema não afeta somente formulários.

Pode aparecer em:

  • ERP;
  • CRM;
  • gateways;
  • APIs;
  • ETLs;
  • bancos de dados;
  • importadores CSV;
  • integrações;
  • validações frontend;
  • validações backend;
  • expressões regulares;
  • data warehouses;
  • sistemas fiscais;
  • cadastros de fornecedores.

Este Actor permite testar registros reais e exportações de base usando uma regra única e auditável.


O primeiro CNPJ alfanumérico

A Receita Federal informou em 31/07/2026 que o primeiro CNPJ alfanumérico gerado no país foi:

00.000.000/E08G-12

A inscrição corresponde a uma filial do Banco do Brasil S.A.

Fonte oficial:

https://www.gov.br/receitafederal/pt-br/assuntos/noticias/2026/julho/receita-federal-gera-o-primeiro-cnpj-em-formato-alfanumerico

A página oficial do projeto também informa que os CNPJs já existentes permanecem válidos e que o novo formato passa a ser usado em novas inscrições.

Projeto oficial:

https://www.gov.br/receitafederal/pt-br/acesso-a-informacao/acoes-e-programas/programas-e-atividades/cnpj-alfanumerico

Para quem é

Desenvolvedores

Teste validadores, APIs, importadores e sistemas que precisam aceitar o novo formato.

Empresas de software e SaaS

Verifique bases de clientes, fornecedores e parceiros antes ou durante a migração.

ERP, CRM e sistemas financeiros

Use o Actor para localizar padrões de dados incompatíveis e separar registros numéricos de alfanuméricos.

Contabilidade e BPO

Valide estruturalmente lotes recebidos de diferentes sistemas sem consultar uma base externa.

Equipes de dados

Passe exportações CSV/JSON e obtenha um relatório consolidado de migração.

Automação e integrações

Conecte os resultados a:

  • Apify API;
  • n8n;
  • Make;
  • Google Sheets;
  • bancos de dados;
  • pipelines internos;
  • validações de ETL;
  • sistemas de qualidade de dados.

Importante: validação estrutural não é consulta cadastral

Este Actor responde:

A estrutura e os dígitos verificadores deste CNPJ estão corretos?

Ele não responde:

Esta empresa existe?

Ele também não retorna:

  • razão social;
  • situação cadastral;
  • CNAE;
  • endereço;
  • sócios;
  • capital social;
  • regime tributário.

Para dados cadastrais, use um Actor específico de consulta de empresas.


Como funciona

Para cada valor recebido, o Actor:

  1. preserva o valor original;
  2. remove máscara e espaços;
  3. converte letras para maiúsculas;
  4. verifica o comprimento;
  5. verifica os caracteres aceitos nas posições;
  6. calcula os dígitos verificadores;
  7. compara os DVs calculados com os informados;
  8. rejeita sequência repetida inválida;
  9. classifica o formato como numérico ou alfanumérico quando possível;
  10. registra os erros encontrados;
  11. identifica duplicados dentro da execução;
  12. preserva a origem do registro;
  13. escreve um VALIDATION_RESULT;
  14. agrega o relatório gratuito no RUN_SUMMARY.

Não existe requisição HTTP no fluxo de validação.


Regra estrutural usada

O formato continua visualmente compatível com:

SS.SSS.SSS/SSSS-NN

Na implementação deste Actor:

posições 1–12
=
0–9 ou A–Z
posições 13–14
=
dígitos numéricos

Letras minúsculas recebidas no input são normalizadas para maiúsculas antes da validação.


Cálculo dos dígitos verificadores

A implementação usa a conversão descrita para o padrão alfanumérico:

valor do caractere
=
código ASCII − 48

Assim:

0 → 0
1 → 1
...
9 → 9
A → 17
B → 18
...
Z → 42

O primeiro DV usa os pesos:

5 4 3 2 9 8 7 6 5 4 3 2

O segundo DV usa:

6 5 4 3 2 9 8 7 6 5 4 3 2

O cálculo é módulo 11.

A implementação foi construída como cálculo puro e não depende de uma API externa.


Input

Você pode combinar as quatro fontes de entrada na mesma execução.

Exemplo completo

{
"cnpjs": [
"12.ABC.345/01DE-35",
"00.000.000/E08G-12",
"47.960.950/0001-21"
],
"text": "Fornecedor da filial: 00.000.000/E08G-12",
"records": [
{
"empresa": "Exemplo",
"cnpj": "12.ABC.345/01DE-35"
}
],
"recordsField": "cnpj",
"csv": "empresa;cnpj\nEmpresa A;47.960.950/0001-21",
"csvColumn": "cnpj",
"maxResults": 10000,
"maxRuntimeMs": 300000
}

Campos de input

CampoDefaultDescrição
cnpjslista de exemploLista direta de CNPJs.
texttexto de exemploTexto livre do qual candidatos são extraídos.
recordsexemplo JSONObjetos contendo o CNPJ em uma propriedade.
recordsFieldcnpjNome da propriedade usada em records.
csvexemploConteúdo CSV com cabeçalho.
csvColumncnpjNome ou índice zero-based da coluna.
maxResults10000Teto de resultados entregues/cobrados. Máximo 50.000.
maxRuntimeMs300000Teto de duração da execução.
debugfalseLogs adicionais.

Pelo menos uma fonte precisa conter dados utilizáveis.


Lista direta

Exemplo:

{
"cnpjs": [
"00.000.000/E08G-12",
"12.ABC.345/01DE-35",
"47960950000121"
]
}

A lista é preservada na ordem recebida.


Texto livre

Exemplo:

{
"text": "Fornecedores homologados: 33.000.167/0001-01 e filial 00.000.000/E08G-12."
}

O Actor tenta localizar:

  • formato mascarado;
  • sequência compatível de 14 posições terminando em dois dígitos.

A linha de origem fica disponível em:

sourceLine

Extração de texto é heurística

A rota de texto livre foi criada para conveniência.

Ela não substitui uma lista estruturada quando você precisa de máxima previsibilidade.

Formatos muito diferentes, como:

00.000.
000/E08G
-12

podem não ser reconhecidos como um único CNPJ.

Para cargas críticas, prefira:

cnpjs
records
csv

Registros JSON

Exemplo:

{
"records": [
{
"empresa": "Empresa A",
"documento": "00.000.000/E08G-12"
},
{
"empresa": "Empresa B",
"documento": "47.960.950/0001-21"
}
],
"recordsField": "documento"
}

Se o campo configurado não existir no objeto de amostra, o input é rejeitado antes da cobrança de início.


CSV

Exemplo:

{
"csv": "empresa;cnpj\nEmpresa A;00.000.000/E08G-12\nEmpresa B;47.960.950/0001-21",
"csvColumn": "cnpj"
}

O parser escolhe entre:

,
;

com base no cabeçalho.

Também aceita célula entre aspas duplas no parser simples implementado.


Coluna CSV por índice

Também é possível usar índice começando em zero.

Exemplo:

{
"csv": "empresa;cnpj\nEmpresa A;00.000.000/E08G-12",
"csvColumn": "1"
}

Output

O Dataset contém principalmente:

VALIDATION_RESULT
RUN_SUMMARY

VALIDATION_RESULT

Cada valor processado recebe um veredito próprio.

Exemplo — válido

{
"recordType": "VALIDATION_RESULT",
"originalValue": "00.000.000/E08G-12",
"normalizedCnpj": "00000000E08G12",
"normalizedFormatted": "00.000.000/E08G-12",
"format": "alphanumeric",
"lengthValid": true,
"charactersValid": true,
"checkDigitsValid": true,
"isValid": true,
"validationErrors": [],
"duplicate": false,
"firstSeenPosition": null,
"sourceType": "list",
"sourceIndex": 0,
"sourceLine": null,
"observedAt": "2026-08-27T00:00:00.000Z"
}

Exemplo — DV inválido

{
"recordType": "VALIDATION_RESULT",
"originalValue": "47.960.950/0001-20",
"normalizedCnpj": "47960950000120",
"normalizedFormatted": "47.960.950/0001-20",
"format": "numeric",
"lengthValid": true,
"charactersValid": true,
"checkDigitsValid": false,
"isValid": false,
"validationErrors": [
{
"code": "CHECK_DIGITS_INVALID",
"message": "Dígitos verificadores não conferem: informado \"20\", calculado pela norma \"21\"."
}
],
"duplicate": false,
"firstSeenPosition": null,
"sourceType": "list",
"sourceIndex": 0,
"sourceLine": null,
"observedAt": "2026-08-27T00:00:00.000Z"
}

Campos de VALIDATION_RESULT

CampoDescrição
recordTypeVALIDATION_RESULT.
originalValueValor exatamente como foi recebido.
normalizedCnpjValor normalizado sem máscara.
normalizedFormattedValor formatado quando possível.
formatnumeric, alphanumeric ou null.
lengthValidExatamente 14 posições após normalização.
charactersValidClasses de caracteres compatíveis.
checkDigitsValidDígitos verificadores conferem.
isValidVeredito estrutural final.
validationErrorsLista de problemas encontrados.
duplicateO mesmo valor normalizado já apareceu antes nesta execução.
firstSeenPositionPosição da primeira ocorrência.
sourceTypelist, records, csv ou text.
sourceIndexÍndice dentro da fonte.
sourceLineLinha quando disponível.
observedAtTimestamp da validação.

Códigos de erro

O validador pode retornar códigos como:

EMPTY_VALUE
LENGTH_INVALID
INVALID_CHARACTER
DV_POSITION_NOT_NUMERIC
CHECK_DIGITS_INVALID
REPEATED_SEQUENCE

EMPTY_VALUE

O valor ficou vazio após a normalização.

LENGTH_INVALID

O valor não possui exatamente 14 posições.

INVALID_CHARACTER

Existe caractere incompatível nas primeiras 12 posições.

A mensagem informa a posição quando detectável.

DV_POSITION_NOT_NUMERIC

As posições 13 e/ou 14 não são dígitos.

CHECK_DIGITS_INVALID

Os DVs informados não correspondem ao cálculo.

A mensagem inclui o DV calculado.

REPEATED_SEQUENCE

Sequência com todas as 14 posições iguais que passaria por uma checagem matemática simplista, mas não é tratada como inscrição válida pelo Actor.


Duplicados

Duplicados não são removidos.

Cada linha/registro recebe o próprio veredito.

Exemplo:

posição 0: 00.000.000/E08G-12
posição 3: 00000000E08G12

A segunda ocorrência pode retornar:

{
"duplicate": true,
"firstSeenPosition": 0
}

Isso é útil para auditoria de uma base porque o Actor preserva a cardinalidade do input processado.


Relatório de migração gratuito

O RUN_SUMMARY inclui:

migrationReport

com agregações da execução.

Exemplo:

{
"migrationReport": {
"analyzed": 9,
"valid": 6,
"invalid": 3,
"numericFormat": 6,
"alphanumericFormat": 2,
"duplicates": 1,
"incompatibleCharacters": 1,
"bySource": {
"list": 5,
"records": 1,
"csv": 2,
"text": 1
},
"topProblems": {
"CHECK_DIGITS_INVALID": 1,
"DV_POSITION_NOT_NUMERIC": 1
}
}
}

O que o relatório ajuda a responder

O resumo pode mostrar:

  • quantos registros foram analisados;
  • quantos passaram;
  • quantos falharam;
  • quantos são numéricos;
  • quantos são alfanuméricos;
  • quantos duplicados apareceram;
  • quantos possuem caracteres incompatíveis;
  • quais fontes produziram registros;
  • quais erros apareceram com mais frequência.

Importante: relatório de base não certifica seu software

Uma base validada não prova automaticamente que:

seu ERP aceita letras no CNPJ
sua API aceita letras
seu banco de dados aceita letras
seu frontend aceita letras

Este Actor valida os dados fornecidos.

A compatibilidade do software precisa ser testada no próprio software.


API da Apify

Execute o Actor e obtenha o Dataset sincronamente:

curl -s "https://api.apify.com/v2/acts/<SEU_USUARIO>~cnpj-alphanumeric-validator/run-sync-get-dataset-items?token=<SEU_TOKEN>" \
-X POST \
-H "Content-Type: application/json" \
-d '{
"cnpjs":[
"00.000.000/E08G-12",
"12.ABC.345/01DE-35"
],
"maxResults":100
}'

Substitua:

<SEU_USUARIO>
<SEU_TOKEN>

pelos seus dados da Apify.


Integrações

Use com:

  • Apify API;
  • Tasks;
  • Schedules;
  • webhooks;
  • n8n;
  • Make;
  • Google Sheets;
  • bancos de dados;
  • pipelines ETL;
  • sistemas de QA;
  • ferramentas internas.

Agendamento

Validação de base normalmente é:

migração pontual

ou:

validação de cada nova carga

Para uma esteira recorrente:

  1. salve o input como uma Task;
  2. abra Schedules;
  3. escolha a frequência;
  4. processe o Dataset no sistema downstream.

Cobrança

Este Actor usa Pay Per Event.

O código utiliza:

actor-start
validation-result

actor-start

É chamado uma vez depois que o input passa pela validação.

Input inválido é rejeitado antes da abertura da cobrança.

validation-result

É cobrado para cada VALIDATION_RESULT entregue.

Um registro inválido também é um resultado útil:

válido
=
veredito
inválido
=
veredito

Por isso o produto cobra pela validação processada, não somente pelos CNPJs válidos.


O que é gratuito

O RUN_SUMMARY é gratuito.

O relatório:

migrationReport

também fica dentro desse resumo gratuito.

Input inválido é tratado antes da cobrança de início.

A aba Pricing da página do Actor é sempre a fonte autoritativa dos valores vigentes.


Controle de custo

O principal controle é:

maxResults

Faixa atual:

1–50000

O Actor processa os valores na ordem:

cnpjs
records
csv
text

Quando o limite é atingido, os registros restantes são contabilizados em:

skippedByCap

Desempenho

A validação é compute puro.

O Actor não:

  • consulta a Receita Federal;
  • abre páginas;
  • resolve DNS;
  • chama API externa;
  • executa navegador.

O custo de infraestrutura tende a ser pequeno em relação ao volume de resultados, embora tempo e custo finais dependam do ambiente da Apify e do tamanho da entrada.


Health e diagnóstico

O RUN_SUMMARY e o registro:

STATS

fornecem transparência operacional.

Podem incluir:

  • registros escritos;
  • cobrança;
  • limite de resultados;
  • runtime;
  • warnings;
  • qualidade;
  • relatório de migração;
  • métricas de custo.

Limites honestos

Não confirma existência do CNPJ

Um número pode ser estruturalmente válido e não corresponder a uma inscrição existente.

Não consulta situação cadastral

O Actor não informa se uma empresa está:

ATIVA
BAIXADA
SUSPENSA
INAPTA

Não corrige o CNPJ automaticamente

Quando o DV está errado, o resultado pode informar o DV calculado.

O Actor não substitui automaticamente o valor recebido, porque o erro real pode estar em outra posição.

Texto livre usa heurística

A extração automática não cobre todo formato arbitrário possível.

Duplicados são entregues e cobrados

A cardinalidade do lote é preservada.

O parser CSV é intencionalmente simples

Suporta as necessidades documentadas desta versão, mas não pretende substituir uma biblioteca CSV completa para formatos extremamente complexos.

recordsField precisa apontar para a propriedade correta

Um campo inexistente na amostra é tratado como input inválido.

Validação estrutural não certifica adequação de sistemas

Use os resultados como dados de teste e diagnóstico, não como certificado de conformidade do software.

A regra pode receber atualização normativa

Se a Receita Federal alterar o padrão no futuro, uma nova versão do Actor poderá ser necessária.


Perguntas frequentes

O CNPJ alfanumérico já existe?

Sim.

A Receita Federal informou a geração do primeiro CNPJ alfanumérico em 31 de julho de 2026.

Qual foi o primeiro CNPJ alfanumérico?

Segundo a Receita Federal:

00.000.000/E08G-12

Os CNPJs numéricos antigos deixaram de valer?

Não.

A Receita Federal informa que os CNPJs já existentes continuam válidos.

O Actor valida CNPJ numérico?

Sim.

O Actor valida CNPJ alfanumérico?

Sim.

Aceita máscara?

Sim.

Aceita letras minúsculas?

Sim.

Elas são normalizadas para maiúsculas.

As duas últimas posições podem ter letras?

Não no contrato implementado.

As posições de DV são numéricas.

Posso validar CSV?

Sim.

Posso colar texto de contrato ou e-mail?

Sim.

Use text.

Posso enviar objetos JSON?

Sim.

Use records + recordsField.

O Actor consulta a Receita Federal?

Não.

Preciso de API key externa?

Não.

Usa IA?

Não.

"Válido" significa que a empresa existe?

Não.

Significa somente que o valor passou pela validação estrutural implementada.

Duplicados são removidos?

Não.

Eles são identificados, mas cada registro recebe um veredito.

Registros inválidos são cobrados?

Sim.

O produto entregue é o veredito de validação.

O relatório de migração é cobrado?

Não.

Posso usar o Actor em uma integração?

Sim.

Use a API da Apify, webhooks ou outra automação.

Este Actor é oficial da Receita Federal?

Não.

É uma ferramenta comunitária independente.


Suporte

Para bugs, dúvidas ou casos de validação:

johnatan291303@gmail.com

Você também pode usar a aba Issues na página do Actor.


Parte da suíte JM Forge

Também do mesmo desenvolvedor:

  • Consulta CNPJ Brasil e Empresas por CNAE — consulta cadastral e pesquisa de empresas brasileiras.
  • Monitor de Mudanças Cadastrais de CNPJ — monitore mudanças em situação, endereço, CNAE, razão social e quadro societário.
  • PNCP Vencedores & Inteligência de Fornecedores — resultados homologados e fornecedores vencedores de compras públicas.

Os Actors permanecem ferramentas independentes.

Use este Actor para validação estrutural e diagnóstico de migração.

Use um Actor cadastral quando precisar confirmar ou enriquecer os dados de uma empresa.