Pular para conteúdo

cnpj

Modulo CNPJ: consulta e validação de empresas na Receita Federal.

CNPJResponse

Bases: BaseResponse

Resposta completa de consulta de CNPJ.

QSASocio

Bases: BaseModel

Socio do Quadro Societario e Administrativo (QSA).

consultar_cnpj async

consultar_cnpj(cnpj)

Consulta os dados cadastrais de uma empresa pelo CNPJ.

Aceita o CNPJ numérico ou alfanumérico (IN RFB 2.229/2024), com ou sem formatação (pontos, barra, traço). Retorna razão social, endereço, atividades econômicas, sócios e situação cadastral.

Parameters:

Name Type Description Default
cnpj str

Número do CNPJ (ex: '11.222.333/0001-81', '11222333000181' ou '12ABC34501DE35')

required

Returns:

Type Description
CNPJResponse

CNPJResponse com os dados completos da empresa.

Raises:

Type Description
ValidationError

Se o CNPJ for inválido.

NotFoundError

Se o CNPJ não for encontrado na Receita Federal.

APIError

Em caso de falha nas APIs consultadas.

listar_cnpjs_por_nome async

listar_cnpjs_por_nome(nome, uf=None)

Busca empresas pelo nome ou razão social.

Retorna uma lista simplificada com CNPJ e razão social. Nota: esta funcionalidade depende de APIs de terceiros com disponibilidade variável.

Parameters:

Name Type Description Default
nome str

Nome ou parte da razão social da empresa.

required
uf str | None

Sigla do estado para filtrar (ex: 'SP', 'MG'). Opcional.

None

Returns:

Type Description
list[dict[str, str]]

Lista de dicionários com 'cnpj' e 'razao_social'.

client

Cliente para consulta de CNPJ via BrasilAPI e ReceitaWS.

Quando o provedor premium opcional cpfcnpj.com.br esta configurado (token via CPFCNPJ_TOKEN), ele e tentado primeiro, com dados oficiais em tempo real, e as fontes gratuitas (BrasilAPI e ReceitaWS) seguem como fallback. Sem token, o comportamento e identico ao anterior: apenas as fontes gratuitas sao usadas.

CNPJClient

Cliente para busca de dados de CNPJ em fontes publicas.

consultar async

consultar(cnpj)

Consulta os dados de um CNPJ.

Quando o provedor premium cpfcnpj.com.br esta configurado, ele e tentado primeiro. Em seguida, tenta BrasilAPI e, por fim, ReceitaWS.

Suporte a CNPJ alfanumerico (IN RFB 2.229/2024, vigencia jul/2026) por provedor: - cpfcnpj.com.br: aceita o formato alfanumerico no caminho da URL (confirmado pelo provedor). - BrasilAPI: aceita, pois apenas faz proxy para o projeto minha-receita, que valida o CNPJ com a lib go-cnpj (com tratamento alfanumerico). Ref.: BrasilAPI issues #789 e #827 (fechadas) e services/cnpj.js (repassa o parametro sem remover letras). - ReceitaWS: a documentacao publica nao confirma suporte ao formato alfanumerico; por isso NAO usamos essa fonte como fallback quando o CNPJ contem letras, evitando respostas incorretas.

schemas

Schemas Pydantic para dados de CNPJ.

QSASocio

Bases: BaseModel

Socio do Quadro Societario e Administrativo (QSA).

AtividadeCNAE

Bases: BaseModel

Atividade economica conforme CNAE.

CNPJResponse

Bases: BaseResponse

Resposta completa de consulta de CNPJ.

tools

Ferramentas MCP para consulta de CNPJ.

consultar_cnpj async

consultar_cnpj(cnpj)

Consulta os dados cadastrais de uma empresa pelo CNPJ.

Aceita o CNPJ numérico ou alfanumérico (IN RFB 2.229/2024), com ou sem formatação (pontos, barra, traço). Retorna razão social, endereço, atividades econômicas, sócios e situação cadastral.

Parameters:

Name Type Description Default
cnpj str

Número do CNPJ (ex: '11.222.333/0001-81', '11222333000181' ou '12ABC34501DE35')

required

Returns:

Type Description
CNPJResponse

CNPJResponse com os dados completos da empresa.

Raises:

Type Description
ValidationError

Se o CNPJ for inválido.

NotFoundError

Se o CNPJ não for encontrado na Receita Federal.

APIError

Em caso de falha nas APIs consultadas.

listar_cnpjs_por_nome async

listar_cnpjs_por_nome(nome, uf=None)

Busca empresas pelo nome ou razão social.

Retorna uma lista simplificada com CNPJ e razão social. Nota: esta funcionalidade depende de APIs de terceiros com disponibilidade variável.

Parameters:

Name Type Description Default
nome str

Nome ou parte da razão social da empresa.

required
uf str | None

Sigla do estado para filtrar (ex: 'SP', 'MG'). Opcional.

None

Returns:

Type Description
list[dict[str, str]]

Lista de dicionários com 'cnpj' e 'razao_social'.