# Integração da API CNPJ Receita Federal em Python Exemplo de integração em **Python** com a API de Consulta CNPJ da Receita Federal da **ArquivoNfe**, para obtenção automatizada de dados cadastrais de empresas brasileiras. A API permite consultar informações de empresas por meio do **CNPJ**, com opção de incluir o Quadro de Sócios e Administradores (QSA). A integração utiliza processamento assíncrono por meio do `request_id`, permitindo enviar solicitações e consultar seus respectivos resultados posteriormente. ## 🔎 Palavras-chave * API Consulta CNPJ Python * API CNPJ Receita Federal * Consulta CNPJ Python * API Receita Federal * Consulta CNPJ em tempo real * API REST CNPJ * Integração Python API REST * Consulta dados cadastrais CNPJ * Consulta QSA * Consulta quadro societário * API Fiscal Brasil * Automação consulta CNPJ ## Benefícios ✔ Consulta de CNPJ com dados cadastrais
✔ Dados provenientes da base da Receita Federal
✔ Retorno de informações cadastrais e CNAE
✔ Opção de consulta do Quadro de Sócios e Administradores (QSA)
✔ Integração simples via API REST (JSON)
✔ Processamento assíncrono utilizando `request_id`
✔ Exemplo prático de integração em Python
✔ Possibilidade de consultas individuais ou em lote ## Casos de uso ✔ Validação cadastral de clientes e fornecedores
✔ Conferência cadastral antes da emissão de notas fiscais
✔ Enriquecimento de bases de dados
✔ Processos de KYC (Know Your Customer)
✔ Automação fiscal e contábil
✔ Integração com sistemas ERP e aplicações próprias
✔ Automatização de processos de validação cadastral ## Diferenciais ✔ Consulta de dados cadastrais da Receita Federal.
✔ Possibilidade de retorno do QSA e informações do Simples Nacional, conforme os dados disponibilizados pela API.
✔ Comunicação segura por HTTPS.
✔ Infraestrutura hospedada na Oracle Cloud no Brasil.
✔ API REST com retorno em JSON.
✔ Painel web para configurações, consultas manuais e acompanhamento das integrações via API.
✔ Exemplo de integração utilizando Python e biblioteca `requests`. --- ## 🚀 Requisitos * Windows ou Linux * Python 3.x * Git (opcional, caso escolha clonar o projeto) * Biblioteca `requests` --- ## ⚙️ Como utilizar ### 1️⃣ Cadastre-se gratuitamente Acesse o portal: https://portal.arquivo-nfe.com Crie sua conta para obter acesso à API. --- ### 2️⃣ Copie seu Token Após o login no portal: 1. Acesse o menu **Meu Token**. 2. Copie seu token de acesso. > ⚠️ **Nunca publique seu token de acesso no GitHub.** No arquivo `consulta_cnpj_receita.py`, informe seu token apenas localmente: ```python TOKEN = 'SEU_TOKEN_AQUI' ``` Antes de publicar o código no GitHub, certifique-se de que o token não esteja preenchido. --- ### 3️⃣ Instalação do Python O exemplo utiliza **Python 3**. #### Windows Baixe o Python pelo site oficial: https://www.python.org/downloads/windows/ Durante a instalação, marque a opção: **Add python.exe to PATH** Depois de concluir a instalação, abra o **Prompt de Comando (CMD)** e execute: ```bash python --version ``` O comando deverá apresentar a versão instalada, por exemplo: ```text Python 3.13.x ``` #### Linux Verifique se o Python 3 está instalado: ```bash python3 --version ``` Caso não esteja instalado, utilize o gerenciador de pacotes da sua distribuição. Por exemplo, no Ubuntu/Debian: ```bash sudo apt update sudo apt install python3 python3-pip python3-venv ``` Depois confirme: ```bash python3 --version ``` --- ### 4️⃣ Baixe o projeto Você pode baixar o projeto diretamente pelo GitHub ou cloná-lo utilizando o Git. #### Opção 1 — Baixar ZIP No GitHub, clique em: **Code → Download ZIP** Depois, extraia o arquivo em uma pasta do seu computador. #### Opção 2 — Clonar com Git Se o Git estiver instalado, execute: ```bash git clone https://github.com/mnogueira-tecnologia/api-consulta-cnpj-receita-federal-python.git ``` Depois acesse a pasta do projeto: ```bash cd api-consulta-cnpj-receita-federal-python ``` --- ### 5️⃣ Crie um ambiente virtual Python É recomendado utilizar um ambiente virtual para manter as dependências do projeto isoladas. #### Windows Dentro da pasta do projeto, execute: ```bash python -m venv .venv ``` Ative o ambiente virtual: ```bash .venv\Scripts\activate ``` Após a ativação, o terminal deverá apresentar algo semelhante a: ```text (.venv) C:\Users\seu_usuario\api-consulta-cnpj-receita-federal-python> ``` #### Linux Crie o ambiente virtual: ```bash python3 -m venv .venv ``` Ative o ambiente: ```bash source .venv/bin/activate ``` --- ### 6️⃣ Instale as dependências Com o ambiente virtual ativado, instale a biblioteca `requests` e as demais dependências do projeto: #### Windows ```bash pip install -r requirements.txt ``` #### Linux ```bash pip3 install -r requirements.txt ``` Você também pode verificar se a biblioteca `requests` foi instalada corretamente: ```bash pip show requests ``` --- ### 7️⃣ Configure seu Token Abra o arquivo [`consulta_cnpj_receita.py`](consulta_cnpj_receita.py) e informe seu token de acesso: ```python TOKEN = 'SEU_TOKEN_AQUI' ``` > ⚠️ O token acima é apenas um exemplo. Nunca utilize ou publique tokens reais no GitHub. Antes de executar o projeto, certifique-se de que o token esteja configurado corretamente. --- ### 8️⃣ Configure os CNPJs para consulta No arquivo `consulta_cnpj_receita.py`, localize o array `consultas`. Exemplo: ```python consultas = [ { "cnpj": "XXXXXXXXXXXXXX", "qsa": 0, "request_id": None }, { "cnpj": "XXXXXXXXXXXXXX", "qsa": 1, "request_id": None } ] ``` Parâmetros: | Parâmetro | Descrição | | ------------ | ---------------------------------------------------------------- | | `cnpj` | CNPJ da empresa que será consultada | | `qsa` | Indica se deve retornar o Quadro de Sócios e Administradores | | `request_id` | Protocolo da solicitação, preenchido automaticamente pelo script | O parâmetro `qsa` aceita: * `0` – Não solicitar o QSA. * `1` – Solicitar o QSA. O script pode ser adaptado para recuperar os CNPJs diretamente de um banco de dados, permitindo a integração com sistemas próprios. --- ### 9️⃣ Execute o exemplo Com o ambiente virtual ativado e o token configurado, execute o script. #### Windows ```bash python consulta_cnpj_receita.py ``` #### Linux ```bash python3 consulta_cnpj_receita.py ``` O script realizará as consultas configuradas no exemplo e exibirá os resultados retornados pela API no terminal. O código demonstra: * envio de consultas por CNPJ; * opção de consulta do QSA; * armazenamento do `request_id` (protocolo da consulta); * consulta posterior dos resultados; * novas tentativas quando a consulta ainda está em processamento; * tratamento das respostas da API; * exibição dos resultados em formato JSON. O código-fonte completo está disponível em: [`consulta_cnpj_receita.py`](consulta_cnpj_receita.py) --- ## 🔄 Como funciona o processamento assíncrono A integração é realizada em duas etapas: **Etapa 1 – Envio da consulta** O script envia o CNPJ e o parâmetro opcional `qsa` para a API. A API retorna um `request_id`, que identifica a solicitação. **Etapa 2 – Obtenção do resultado** O script utiliza o `request_id` para consultar o resultado da solicitação. Caso o processamento ainda esteja em andamento, são realizadas novas tentativas, respeitando o intervalo e o limite configurados no exemplo. Quando o resultado estiver disponível, os dados são apresentados no terminal em formato JSON. Essa estrutura permite adaptar o exemplo para processamento em lote, aplicações empresariais e integração com bancos de dados. --- ## 📄 Exemplo de retorno da API Após a conclusão do processamento, a API disponibiliza os dados cadastrais da empresa em formato JSON, incluindo informações como: * CNPJ * Razão social * Nome fantasia, quando disponível * Situação cadastral * Endereço * CNAE principal e secundários * Natureza jurídica * Informações do Simples Nacional, quando disponibilizadas * Quadro de Sócios e Administradores (QSA), quando solicitado e disponível A estrutura e os campos efetivamente retornados dependem dos dados disponibilizados pela Receita Federal e das opções da consulta. --- ## 🔗 Documentação da API Consulte a documentação completa da API CNPJ Receita Federal: https://www.arquivo-nfe.com/api-de-consulta-cnpj-receita-federal **Endpoint:** ```text POST https://api.arquivo-nfe.com/prod/cnpj_receita ``` Autenticação via Bearer Token. --- ## ⭐ Apoie o projeto Se este projeto foi útil para você: ⭐ **Deixe uma estrela no repositório.** Isso ajuda outras pessoas a encontrarem este exemplo de integração. --- Made with ❤️ by **ArquivoNfe** https://www.arquivo-nfe.com