Pular para o conteúdo principal

Consultar CNPJ com Javascript e Node.JS

· Leitura de 4 minutos
Carlos Tirabassi

Consultar um CNPJ utilizando a API do CNPJ.ws com Javascript e Node.JS é muito fácil!

Manter o cadastro de clientes/fornecedores ou até mesmo fazer uma consulta aos dados de empresas para facilitar algum cadastro interno do seu sistema é algo muito comum e a API do CNPJ.ws disponibiliza uma maneira fácil e rápida para desenvolver essa integração.

Com a integração podemos usar a API para consultar o endereço, inscrição estadual, situação cadastral, CNAE e muitas outras informações que podem ser importantes no momento do cadastro do cliente ou fornecedor através do CNPJ.

Os dados retornados pela API são obtidos de diversos órgãos públicos (Receita Federal, Sintegra, SERPRO, Suframa, etc), aglutinados e organizados para facilitar o uso por outros sistemas através de uma API Rest.

Instalação#

Nós desenvolvemos um pacote para facilitar essa integração, veja no Github.

Lembrando que você pode usar nossa API gratuita para consultar CNPJ ou pode adquirir um dos nossos planos comerciais.

Para começar, vamos instalar o pacote:

Utilizando YARN:

yarn add consultar-cnpj

Utilizando NPM:

npm i consultar-cnpj --save

Utilização#

O CNPJ.ws possui uma API Pública e uma Comercial, para utilização da API Pública você não precisa de um token, mas só pode fazer até 3 consultas por minuto. Caso esteja utilizando a API Comercial você deve passar o token como segundo parâmetro na consulta para utilizar os seus benefícios. Você pode ver mais detalhes dos planos comerciais na nossa página principal.

const consultarCNPJ = require("consultar-cnpj");
async function getCNPJ() {  const token = "INFORME O SEU TOKEN DE ACESSO";
  try {    // O Token é opcional    const empresa = await consultarCNPJ("40154884000153", token);    console.log(empresa);  } catch (e) {    console.log(e);  }}

Retorno#

Abaixo o JSON retornado pela API:

{  "cnpj_raiz": "40154884",  "razao_social": "STARLINK BRAZIL SERVICOS DE INTERNET LTDA.",  "capital_social": "800000.00",  "responsavel_federativo": "",  "atualizado_em": "2021-07-20T08:21:13.130Z",  "porte": {    "id": "05",    "descricao": "Demais"  },  "natureza_juridica": {    "id": "2062",    "descricao": "Sociedade Empresária Limitada"  },  "qualificacao_do_responsavel": {    "id": 5,    "descricao": "Administrador "  },  "socios": [    {      "cpf_cnpj_socio": "***966178**",      "nome": "VITOR JAMES URNER",      "tipo": "Pessoa Física",      "data_entrada": "2020-12-18",      "cpf_representante_legal": "***000000**",      "nome_representante": null,      "faixa_etaria": "71 a 80 anos",      "atualizado_em": "2021-07-21T06:13:26.688Z",      "pais_id": "1058",      "qualificacao_socio": {        "id": 5,        "descricao": "Administrador "      },      "qualificacao_representante": null    },    {      "cpf_cnpj_socio": "39523686000130",      "nome": "STARLINK BRAZIL HOLDING LTDA.",      "tipo": "Pessoa Jurídica",      "data_entrada": "2020-12-18",      "cpf_representante_legal": "***966178**",      "nome_representante": "VITOR JAMES URNER",      "faixa_etaria": "Não se aplica",      "atualizado_em": "2021-07-21T06:13:26.688Z",      "pais_id": "1058",      "qualificacao_socio": {        "id": 22,        "descricao": "Sócio"      },      "qualificacao_representante": {        "id": 5,        "descricao": "Administrador "      }    }  ],  "simples": null,  "estabelecimento": {    "cnpj": "40154884000153",    "atividades_secundarias": [      {        "id": "6190699",        "secao": "J",        "divisao": "61",        "grupo": "61.9",        "classe": "61.90-6",        "subclasse": "6190-6/99",        "descricao": "Outras atividades de telecomunicações não especificadas anteriormente"      },      {        "id": "6462000",        "secao": "K",        "divisao": "64",        "grupo": "64.6",        "classe": "64.62-0",        "subclasse": "6462-0/00",        "descricao": "Holdings de instituições não financeiras"      },      {        "id": "7739099",        "secao": "N",        "divisao": "77",        "grupo": "77.3",        "classe": "77.39-0",        "subclasse": "7739-0/99",        "descricao": "Aluguel de outras máquinas e equipamentos comerciais e industriais não especificados anteriormente, sem operador"      }    ],    "cnpj_raiz": "40154884",    "cnpj_ordem": "0001",    "cnpj_digito_verificador": "53",    "tipo": "Matriz",    "nome_fantasia": null,    "situacao_cadastral": "Ativa",    "data_situacao_cadastral": "2020-12-18",    "data_inicio_atividade": "2020-12-18",    "nome_cidade_exterior": null,    "tipo_logradouro": "ALAMEDA",    "logradouro": "SANTOS",    "numero": "74",    "complemento": "ANDAR 7                   CONJ  72                  SALA  10",    "bairro": "CERQUEIRA CESAR",    "cep": "01418000",    "ddd1": "11",    "telefone1": "30229503",    "ddd2": null,    "telefone2": null,    "ddd_fax": null,    "fax": null,    "email": "VITOR@URNER.COM.BR",    "situacao_especial": null,    "data_situacao_especial": null,    "atividade_principal": {      "id": "6130200",      "secao": "J",      "divisao": "61",      "grupo": "61.3",      "classe": "61.30-2",      "subclasse": "6130-2/00",      "descricao": "Telecomunicações por satélite"    },    "pais": {      "id": "1058",      "iso2": "BR",      "iso3": "BRA",      "nome": "Brasil",      "comex_id": "105"    },    "estado": {      "id": 26,      "nome": "São Paulo",      "sigla": "SP",      "ibge_id": 35    },    "cidade": {      "id": 3832,      "nome": "São Paulo",      "ibge_id": 3550308,      "siafi_id": "7107"    },    "motivo_situacao_cadastral": null,    "inscricoes_estaduais": [      {        "inscricao_estadual": "130287771116",        "ativo": true,        "atualizado_em": "2021-08-25T16:59:58.589Z",        "estado": {          "id": 26,          "nome": "São Paulo",          "sigla": "SP",          "ibge_id": 35        }      }    ]  }}

Conclusão#

Utilizando a API do CNPJ.ws você obtém os dados das empresas brasileiras de forma simples e fácil, dê uma olhada em nossa documentação.

Qualquer dúvida nós estamos aqui para te apoiar, mande um e-mail para contato@cnpj.ws!