brutils-python icon indicating copy to clipboard operation
brutils-python copied to clipboard

Consulta CNPJ

Open gtkacz opened this issue 9 months ago • 5 comments

Seu pedido de recurso está relacionado a um problema? Por favor, descreva. Consultar dados de um CNPJ específico usando dados públicos.

Descreva a solução que você gostaria Uma função que recebe um CNPJ válido, faz uma chamada de API, e retorna dados sobre o determinado CNPJ.

Descreva alternativas que você considerou O projeto CNPJ.ws oferece uma API gratuita para consulta pública de CNPJ: https://docs.cnpj.ws/referencia-de-api/api-publica/consultando-cnpj/

Contexto adicional Eu estou implementando isso.

gtkacz avatar Mar 14 '25 16:03 gtkacz

:warning: [PT-BR] Esta issue está inativa há 60 dias. Os assignees serão removidos em 7 dias caso não haja atualizações.

:warning: [EN] This issue has been inactive for 60 days. The assignees will be removed in 7 days if there are no updates.

github-actions[bot] avatar Jul 13 '25 01:07 github-actions[bot]

:warning: [PT-BR] Esta issue está inativa há 62 dias. Os assignees serão removidos em 7 dias caso não haja atualizações.

:warning: [EN] This issue has been inactive for 62 days. The assignees will be removed in 7 days if there are no updates.

github-actions[bot] avatar Sep 14 '25 00:09 github-actions[bot]

bom dia @gtkacz tudo bem? recentemente falei com uma pessoa que criou uma api alternativa para consultar CNPJ, gostaria de saber se tu estaria disposto a dar uma analisada nela e ponderar qual das duas traz mais infos pra essa consulta e qual seria a melhor.. até pra gente ter um comparativo de ferramentas que foram consideradas.

Open CNPJ

niltonpimentel02 avatar Oct 16 '25 13:10 niltonpimentel02

@gtkacz @niltonpimentel02 que vocês acham de consumir do BrasilAPI? https://brasilapi.com.br/docs

morais90 avatar Oct 16 '25 15:10 morais90

@niltonpimentel02 @morais90 quanto as alternativas, parece que o CNPJws traz significativamente mais dados, por exemplo:

O Open CNPJ traz só o cnae_principal ou cnaes_secundarios só com os "IDs" dos CNAEs enquanto o CNPJws pra cada CNAE traz id (equivalente ao cnae_principal), secao, divisao, grupo, classe, subclasse, descricao e por aí vai.

O BrasilAPI parece tbm ter menos dados, seguindo a mesma linha do CNAE, o BrasilAPI traz só o código e descrição do CNAE, sendo que no CNAE primário ele ainda tá separado em duas chaves distintas na raíz da resposta, em cnae_fiscal e cnae_fiscal_descricao.

De qualquer jeito, tá aqui uma medida meio crua que é a quantidade de chaves nos jsons de resposta:

############################################
CNPJws:
root: 11 keys
  root.porte: 2 keys
  root.natureza_juridica: 2 keys
  root.qualificacao_do_responsavel: 2 keys
  root.simples: 7 keys
  root.estabelecimento: 33 keys
    root.estabelecimento.atividade_principal: 7 keys
    root.estabelecimento.pais: 5 keys
    root.estabelecimento.estado: 4 keys
    root.estabelecimento.cidade: 4 keys
total: 77 keys

############################################

Open CNPJ:
root: 27 keys
total: 27 keys

############################################

BrasilAPI:
root: 49 keys
total: 49 keys

Me parece não só que o CNPJws tem mais dados, como que eles tão mais bem estruturados também

gtkacz avatar Oct 16 '25 18:10 gtkacz

@morais90 opiniões sobre isso?

niltonpimentel02 avatar Nov 04 '25 19:11 niltonpimentel02

Sorry pela demora na resposta pessoal, me parece que o CNPJws é bem mais completo mesmo! Único problema que vejo é que ficamos na mão de uma API paga e privada, até os métodos públicos me parece que possuem um rate limite bem baixo:

A API Pública possui a limitação de atender apenas 3 requisições por minuto de um mesmo IP, entenda que essa limitação é independente ao fato de a consulta ter obtido sucesso ao encontrar o CNPJ. Após ultrapassar esse limite o requisitante terá que aguardar completar os 60 segundos para poder fazer a próxima requisição.

morais90 avatar Nov 10 '25 10:11 morais90

Pessoal, estou implementando uma integração com o serviço NfeConsultaCadastro da SEFAZ.

Se houver interesse, posso implementar o código aqui assim que finalizar. A implementação exige que quem for utilizar a lib instancie seu próprio certificado digital (com permissão de emissão de NF-e) para realizar as chamadas

https://www.nfe.fazenda.gov.br/portal/webServices.aspx?tipoConteudo=OUC/YVNWZfo=

m29hillman avatar Dec 08 '25 20:12 m29hillman