Cadastro Nacional da Pessoa Jurídica

Da Thinkfn
(Redireccionado de CNPJ)

Cadastro Nacional da Pessoa Jurídica - CNPJ é um número único que identifica uma pessoa jurídica junto à Receita Federal brasileira (órgão do Ministério da Fazenda), necessário para que a pessoa jurídica tenha capacidade de fazer contratos e processar ou ser processada. O CNPJ veio substituir o CGC, Cadastro Geral de Contribuintes. Por vezes, o CNPJ também é grafado como CNPJ-MF.

O Cadastro funciona como uma identidade e nele estão informados:

  • Data de abertura,
  • Nome da empresa,
  • Título ou nome fantasia - se tiver,
  • Código e descrição da atividade econômica principal - o CNAE,
  • Código e descrição das atividades econômicas secundárias - se tiver,
  • Código e descrição da natureza jurídica,
  • Endereço e
  • Situação cadastral - Na consulta realizável na página da internet da Receita Federal.

Um número típico de CNPJ tem o formato: 03.847.655/0001-98 onde os oito primeiros números formam a "raiz" - que identifica a empresa, os quatro seguintes formam o "sufixo" que identifica uma unidade de atuação de empresa, ou seja, um endereço de atividade da pessoa jurídica, e os dois últimos formam o "dígito verificador" que é resultado de uma equação com os doze números anteriores. Deste modo, o número acima exemplificado identifica a matriz da empresa.

Validação

Algoritmo para a validação do CNPJ:

function ValidarCNPJ(cnpj: int[14])
    var v: int[2]

    //Nota: Calcula o primeiro dígito de verificação.
    v[1] := 5×cnpj[1] + 4×cnpj[2]  + 3×cnpj[3]  + 2×cnpj[4]
    v[1] += 9×cnpj[5] + 8×cnpj[6]  + 7×cnpj[7]  + 6×cnpj[8]
    v[1] += 5×cnpj[9] + 4×cnpj[10] + 3×cnpj[11] + 2×cnpj[12]
    v[1] := 11 - v[1] mod 11
    v[1] := 0 if v[1] ≥ 10

    //Nota: Calcula o segundo dígito de verificação.
    v[2] := 6×cnpj[1] + 5×cnpj[2]  + 4×cnpj[3]  + 3×cnpj[4]
    v[2] += 2×cnpj[5] + 9×cnpj[6]  + 8×cnpj[7]  + 7×cnpj[8]
    v[2] += 6×cnpj[9] + 5×cnpj[10] + 4×cnpj[11] + 3×cnpj[12]
    v[2] += 2×v[1]
    v[2] := 11 - v[2] mod 11
    v[2] := 0 if v[2] ≥ 10

    //Nota: Verdadeiro se os dígitos de verificação são os esperados.
    return v[1] = cnpj[13] and v[2] = cnpj[14]
    
    

Ver também

Links relevantes


Smallwikipedialogo.png

Esta página usa conteúdo da Wikipedia. O artigo original estava em Cadastro Nacional da Pessoa Jurídica. Tal como o Think Finance neste artigo, o texto da Wikipedia está disponível segundo a GNU Free Documentation License.