Dev4Dev!
Validador de CNPJ

É comum adicionar validadores de CNPJ nos sistemas, para impedir fraudes e garantir uma maior segurança. O validador de CNPJ do Dev4Dev é uma ferramenta dessas, e que você programador pode utilizar para comparar com o sua implementação ou até mesmo simplesmente para checar algum CNPJ.

A utilização da ferramenta é bem simples, basta informar um número de CNPJ no campo abaixo, assim que forem fornecidos os 14 digitos o sistema realizará a validação, simples assim.

Algoritmo de validação de CNPJ

O algoritmo para validação de CNPJs é similar ao algoritmo de validação de CPFs. O algoritmo consiste em a patir dos 12 primeiros digitos do CNPJ informado checar se os digitos de verificação (ultimos dois digitos) são válidos. Para exemplificar o processo de validação utilizaremos o número 24.159.885/4478-99:

  1. Dividimos o número informado em sua base e os digitos verificadores. Para o nosso exemplo a base são os números 241598854478 e o dígitos veririficadores são 99
  2. A partir da base aplicamos a mascara 543298765432. A aplicação da mascara a base nada mais é do que a multiplicação dos digitos pela base, para o nosso exemplo faremos 2*5 + 4*4 + 1*3 + 5*2 + 9*9 + 8*8 + 8*7 + 5*6 + 4*5 + 4*4 + 7*3 + 8*2 = 343
  3. O resultado deve ser dividido por 11, se o resto da divisão for menor que 2 o digito verificador será 0, senão subtraimos o resto de 11 e este será o dígito verificador. Para o nosso exemplo 343 MOD 11 = 2, como o resto é igual a 2 o primeiro digito verificador será 11 - 2 = 9.
  4. Para calular o segundo digito verificador adicionamos o primeiro dígito verificador a base e aplicamos a mascara 6543298765432. Para o nosso exemplo teremos 2*6 + 4*5 + 1*4 + 5*3 + 9*2 + 8*9 + 8*8 + 5*7 + 4*6 + 4*5 + 7*4 + 8*3 + 9*2 = 354
  5. Assim como para o primeiro digito verificador o resultado deve ser dividido por 11, sendo o resto da divisão o segundo digito verificador. Para o nosso exemplo, 354 MOD 11 = 2, como o resultado é 2, consideramos que o segundo digito verificador é 11 - 2 = 9.

Se você quiser utilizar a validação de CNPJ mas não quer implementá-la, disponibilizamos gratuitamente uma API REST para realizara a validação, para maiores informações acesse a documentação.