Perguntas frequentes
Como buscar por CNAE, UF, etc.?
Isso encarece computacionalmente o Minha Receita (consultas mais pesadas ao banco de dados, paginação, etc.), ou seja:
- ou aumentaria os custos para manter a API no ar (e as doações não cobrem nem os custos atuais)
- ou comprometeria a disponibilidade da API.
Para evitar isso, a API não tem qualquer forma de filtro ou paginação.
No entanto, criando o seu banco de dados localmente, é possível utilizar consultas diratemente no PostgreSQL, como por exemplo:
- busca por UF com
SELECT * FROM cnpj WHERE json->>'uf' = 'PR'
- busca por CNAE (apenas o primário, fiscal) com
SELECT * FROM cnpj WHERE json->>'cnae_fiscal' = '6204000'
- busca por CNAE (incluindo secundários) com
SELECT *
FROM cnpj
WHERE json->>'cnae_fiscal' = '6204000'
AND json->'cnaes_secundarios' @> '[{"codigo":6204000}]
Você pode ainda criar índices para essas buscas ficarem mais rápidas, como por exemplo CREATE INDEX cnpj_uf_idx ON cnpj((json->'uf'))
.
Para referência:
- um índice criado apenas com o código do CNAE fiscal (
CREATE INDEX cnpj_cnae_fiscal_idx ON cnpj((json->'cnae_fiscal'))
) ocupou certa de 2Gb em disco - um índice composto com UF e código do município (
CREATE INDEX cnpj_uf_municipio_idx ON cnpj((json->'uf'), (json->>'codigo_municipio'))
) ocupou cerca de 1,5Gb em disco.
Como consigo um CSV único dos dados?
Os dados oficiais da Receita Federal já são em CSV e talvez o mais fácil seja você utilizar os CSVs originais.
Caso queira gerar um CSV a partir dos dados consolidados, com ou sem filtragem de dados, o Minha Receita pode ajudar. Criando o seu banco de dados localmente, é possível utilizar o PostgreSQL para tal, como por exemplo:
COPY (
SELECT
id AS cnpj,
json->>'razao_social' AS razao_social,
json->>'nome_fantasia' AS nome_fantasia
-- adicione os campos que desejar
-- WHERE uf = '…' caso queira filtar, por exemplo
FROM cnpj
)
TO 'nome-do-arquivo.csv' DELIMITER ',' CSV HEADER;
Com qual periodicidade a API é atualizada?
A atualização é manual e normalmente ocorre alguns dias depois de a Receita Federal liberar uma nova versão dos dados — salvo quando a Receita Federal divulga dados absurdos, como empresas abertas no ano 202 ou 4100.
Para saber a data de divulgação pela Receita Federal dos dados disponíveis no Minha Receita, consulte a própria API.
Não consigo baixar os dados, pode me passar?
O Minha Receita mantém um espelho dos dados em uma diretório compartilhado. Nele está disponível:
- Uma cópia dos dados públicos baixados da Receita Federal, organizados por diretórios com a data de extração divulgada pela Receita Federal
- Executáveis do Minha Receita
- Uma versão dos links em JSON enviando o cabeçalho
Accept: application/json
ao servidor