Validador de Número CNH BR (registro)
Valide o número de registro da CNH brasileira (11 dígitos) pelo dígito verificador oficial. Útil para cadastros, RH e validação de documentos.
Numero da CNH vs RENACH: dois identificadores distintos no mesmo cartao
Ao olhar para uma CNH - Carteira Nacional de Habilitacao e tentar extrair "o numero", logo se percebe que o plastico impresso tem mais de um campo numerico. Os dois que importam para validacao sao o numero da CNH (tambem chamado de "numero de registro" ou "numero do espelho") e o RENACH (Registro Nacional de Carteiras de Habilitacao). Eles nao sao a mesma coisa, e confundi-los e a fonte mais comum de bug em fluxos de onboarding de apps de delivery, mobilidade e KYC.
O numero da CNH e uma sequencia de 11 digitos emitida pelo Detran estadual quando um determinado espelho fisico e impresso. Historicamente mudava a cada renovacao, a cada upgrade de categoria e, obviamente, quando o titular trocava de UF. O RENACH, ao contrario, e um registro nacional vitalicio que segue o condutor por todas as renovacoes, mudancas de categoria e transferencias de estado. O campo 5 da CNH moderna mostra o RENACH; o campo 4 costuma mostrar o numero da CNH.
Esta ferramenta valida especificamente o numero da CNH — os 11 digitos com dois verificadores ao final. Se voce precisa validar o algoritmo conforme as regras dos sistemas de impressao do Detran, e a ferramenta certa. Se precisa rastrear o mesmo motorista atraves de varias CNHs ao longo do tempo, o campo que voce realmente quer e o RENACH.
O algoritmo modulo 11 com a regra do decremento global
Os 11 digitos da CNH se compoem de 9 digitos base + 2 verificadores (DV1 e DV2). Diferente do CPF, o algoritmo da CNH usa pesos decrescentes comecando em 9 e aplica um decremento global quando o primeiro verificador estoura. Implementacao de referencia:
// Digitos verificadores do numero da CNH
pesos1 = [9, 8, 7, 6, 5, 4, 3, 2, 1]
pesos2 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
dec = 0
soma1 = sum(digito[i] * pesos1[i] for i in 0..8)
dv1 = soma1 % 11
if dv1 == 10:
dv1 = 0
dec = 2
soma2 = sum(digito[i] * pesos2[i] for i in 0..8)
dv2 = (soma2 % 11) - dec
if dv2 < 0: dv2 += 11
if dv2 == 10: dv2 = 0
O dec = 2 e a parte que mais bibliotecas de terceiros erram. Quando o DV1 estoura para 10, ele e forcado para 0 e o DV2 precisa ser calculado com o offset. Esquecer o decremento gera validadores que rejeitam cerca de 1 em cada 11 CNHs reais.
Exemplo sobre 048.814.725-61
- Digitos base:
0 4 8 8 1 4 7 2 5. - Soma1 = 0*9 + 4*8 + 8*7 + 8*6 + 1*5 + 4*4 + 7*3 + 2*2 + 5*1 = 187. 187 mod 11 = 0 -> DV1 = 0 (sem decremento).
- O DV1 impresso e 6: o exemplo padrao
04881472561depende de como zeros a esquerda sao preservados. Sempre complete a base com zeros ate 9 digitos antes do calculo.
Lei 14.071/2020, CPF como chave unica e a convergencia com a CIN
A Lei Federal 14.071/2020 reformou o Codigo de Transito Brasileiro (CTB) e, entre muitas outras mudancas, estreitou o vinculo entre CNH e CPF. Na pratica, o CPF virou o identificador unico funcional do condutor, mesmo que o numero da CNH e o RENACH continuem existindo por compatibilidade. Sistemas do SENATRAN indexam por CPF, e apps integrados a stack gov.br (Carteira Digital de Transito, e-Social, cruzamento com Bolsa Familia) esperam o CPF como chave primaria.
A tendencia se acelera com a CIN (Carteira de Identidade Nacional), novo documento definido pelo Decreto 10.977/2022, que adota o CPF como numero unico de identificacao em todos os documentos federais. A CIN deve, ao longo dos anos, unificar RG, CPF, numero da CNH e outros identificadores em uma so chave numerica, mas ate a adesao total o numero da CNH segue como artefato distinto, validavel, impresso no cartao.
eCNH, CDT e o gemeo digital do plastico
A CNH Digital, ou eCNH, vive dentro do app Carteira Digital de Transito (CDT), distribuido pelo SENATRAN no ecossistema gov.br. A eCNH carrega o mesmo numero da CNH e o mesmo RENACH do plastico — o algoritmo de validacao nao muda. A versao digital acrescenta um QR Code que resolve para um JSON assinado pelo SERPRO contendo CPF, numero da CNH, RENACH, categoria, validade e assinatura criptografica.
Um validador puramente de formato como este olha apenas para os 11 digitos. Nao consegue dizer se o cartao e digital ou fisico, se o titular esta suspenso, se a CNH foi cassada nem se a foto e a biometria batem. Essas checagens exigem sessao em portal do Detran ou integracao paga com bureau do SENATRAN.
Casos de uso: apps de delivery, KYC e dados de teste
Cenarios reais onde um validador offline de numero de CNH faz diferenca:
- Onboarding de delivery e mobilidade: telas de iFood, Uber, 99, Rappi e Loggi rejeitam numeros obviamente malformados antes de bater no proxy do SENATRAN, que e rate-limited e pago por requisicao.
- Gestao de frota: SaaS de telemetria como Cobli, Frota Plus e Maxtrack mantem master de motorista com numero da CNH + RENACH e reaproveitam o validador na importacao.
- Seguros: apolices auto exigem CNH valida no momento da cotacao; o validador no front evita ida e volta ao back-office da seguradora.
- Dados de mock e seed: ambientes de QA precisam de CNHs que passem nos verificadores mas sejam claramente fake. Combine este validador com um gerador aleatorio.
- Fintechs e abertura de conta: contas PJ de motoristas (MEI) frequentemente armazenam o numero da CNH como ID secundario.
PPD vs PD, cassacao e o que o validador nao enxerga
O Brasil emite a PPD (Permissao Para Dirigir) na primeira aprovacao — habilitacao provisoria valida por 1 ano. Depois de 12 meses sem infracoes graves, o titular e promovido a PD (CNH definitiva). Os dois documentos carregam numeros gerados pelo mesmo algoritmo, e esta ferramenta os valida igualmente.
Cassacao (revogacao total), suspensao (temporaria) e bloqueio administrativo ficam registrados na camada do RENACH, nunca no numero da CNH em si. Um motorista cassado continua tendo um numero que passa no algoritmo — apenas consulta online ao Detran ou SENATRAN revela o status. Essa e a ressalva mais importante para qualquer equipe de KYC que dependa de validacao offline.
FAQ
RENACH vs numero da CNH — qual e o que aparece no cartao?
Ambos. O plastico mostra o numero da CNH (campo 4, "numero de registro") e o RENACH (campo 5). O RENACH e o registro vitalicio; o numero da CNH e vinculado ao espelho especifico.
O numero da CNH muda quando eu mudo de UF?
Historicamente sim — o Detran de destino reemitia o numero. Com o sistema nacional unificado, a tendencia e preservar o numero quando possivel, mas o campo garantido como estavel para a vida toda e o RENACH.
Posso consultar a CNH online?
Sim, pelo portal do Detran estadual (detran.<UF>.gov.br) ou pelo app CDT no gov.br. Alguns Detrans exigem login com CPF e pergunta de seguranca; o SENATRAN nao expoe API publica gratuita.
A ferramenta consulta BrasilAPI ou algum servico externo?
Nao. Os verificadores sao calculados localmente no navegador. A BrasilAPI nao tem proxy Detran confiavel — seu endpoint de CNH e instavel porque os Detrans estaduais bloqueiam scraping.
Por que alguns numeros de CNH comecam com 0?
Zeros a esquerda fazem parte do numero. O algoritmo completa a base com zeros ate 9 digitos antes de aplicar os pesos, entao 04881472561 e processado igual a um numero que comece com digito diferente de zero.
Ferramentas Relacionadas
Validador de registro Anvisa
Valida formato do código de registro de medicamento na Anvisa (13 dígitos com check digit pela tabela oficial).
Validador de Número de Pedido
Valida formatos comuns de número de pedido em e-commerce: PED-XXXX, ORDER-NNNN, #N alfanumérico. Detecta tipo automaticamente.
Validador de Número de Processo CNJ
Valida números de processo no padrão CNJ pelo dígito verificador módulo 97 e decodifica ano, segmento da Justiça, tribunal e unidade de origem.