Verifica se um CPF é matematicamente válido pelos dígitos verificadores.
Por que validação local é importante
Antes de enviar dados ao servidor ou consultar a Receita, validar o formato e o dígito verificador local evita tráfego desnecessário e detecta erros de digitação instantaneamente.
Atenção: validação de dígito verificador só confirma que o número é matematicamente possível. Não confirma que o CPF/CNPJ existe, está ativo ou pertence a alguém.
Estrutura do CPF
CPF tem 11 dígitos no formato XXX.XXX.XXX-YY.
Os primeiros 9 dígitos são o número-base. Os 2 últimos (YY) são dígitos verificadores calculados via algoritmo módulo 11.
O 9º dígito também indica a região fiscal onde o CPF foi emitido (de 0 = RS/SC/PR a 9 = RJ/ES).
Algoritmo do CPF — 1º DV
1. Pegue os 9 dígitos base: d₁d₂d₃d₄d₅d₆d₇d₈d₉.
2. Multiplique cada um pelos pesos decrescentes de 10 a 2: d₁×10 + d₂×9 + d₃×8 + ... + d₉×2.
3. Some os produtos. Calcule resto = soma mod 11.
4. Se resto < 2, DV₁ = 0. Caso contrário, DV₁ = 11 − resto.
Algoritmo do CPF — 2º DV
1. Pegue os 9 dígitos base + DV₁ (agora 10 dígitos).
2. Multiplique cada um pelos pesos decrescentes de 11 a 2: d₁×11 + d₂×10 + ... + DV₁×2.
3. Some os produtos. Calcule resto = soma mod 11.
4. Se resto < 2, DV₂ = 0. Caso contrário, DV₂ = 11 − resto.
CPF válido se os dois DVs calculados conferem com os informados.
Estrutura e algoritmo do CNPJ
CNPJ tem 14 dígitos no formato XX.XXX.XXX/YYYY-ZZ. Os 12 primeiros identificam a empresa (8 de número base + 4 de filial). Os 2 últimos (ZZ) são DVs.
Pesos para o 1º DV do CNPJ: [5,4,3,2,9,8,7,6,5,4,3,2]. Aplique a cada um dos 12 dígitos, some, resto mod 11. Se < 2 → DV=0; senão DV = 11 − resto.
Pesos para o 2º DV: [6,5,4,3,2,9,8,7,6,5,4,3,2]. Aplique aos 12 dígitos + DV₁ (13 dígitos). Mesma regra de resto.
CPFs e CNPJs "inválidos" famosos
Alguns números passam no algoritmo mas são reservados ou proibidos:
- 000.000.000-00, 111.111.111-11, ..., 999.999.999-99 — sequências iguais
- 123.456.789-09 — exemplo usado em tutoriais; é matematicamente válido mas não existe na Receita
- CPFs cancelados após falecimento — válidos pelo algoritmo, mas inativos
- Bons validadores rejeitam sequências iguais de uma vez, antes do cálculo
Validação completa
Validação robusta tem 3 etapas: (1) formato (quantidade de dígitos correta), (2) sequência inválida (todos iguais), (3) cálculo dos dígitos verificadores.
Para validar existência real na Receita Federal, é preciso consultar APIs oficiais (reservadas a instituições) ou serviços agregadores — mas cuidado com LGPD e uso indevido de dados.
Fundador da UtilizAí, formado em Blockchain, Criptomoedas e Finanças na Era Digital, com formações complementares em Teologia, Filosofia e em curso de Fonoaudiologia. Saiba mais.
Perguntas frequentes
CPF começa com 0 é válido?
Sim. O algoritmo funciona igual. Só o nono dígito indica região — 0 significa RS/SC/PR.
Validar CPF local substitui consulta à Receita?
Não. Confirma só formato e consistência matemática. Não prova que a pessoa existe ou que o CPF está regular.
CNPJ filial vs matriz — como saber?
Os 4 dígitos após a barra (XX.XXX.XXX/YYYY-ZZ): 0001 é matriz, 0002 em diante são filiais.
Posso gerar CPFs para teste?
Para ambientes de desenvolvimento, sim — usando o algoritmo para produzir números válidos. Mas jamais usá-los para contornar validações em sistemas reais de terceiros.