Skip to main content

Cliente para download de XMLs da NFSe via API ADN Nacional com certificado A1

Project description

consulta-nfse-api

Cliente Python para download de XMLs da NFSe via API ADN Nacional com certificado digital A1.

Instalação

pip install consulta-nfse-api

Uso básico

from consulta_nfse_api import NfseClient, sincronizar

client = NfseClient()
resultado = sincronizar(client, nsu=0, destino="xmls")

for doc in resultado.documentos:
    print(doc.nsu, doc.chave_acesso, doc.arquivo_xml)

print(f"Último NSU: {resultado.ultimo_nsu}")

CLI

# Informações do certificado
consulta-nfse-api info

# Sincronizar XMLs a partir do NSU 0
consulta-nfse-api sincronizar --nsu 0 --destino xmls

# Ignorar rate limit (forçar nova consulta)
consulta-nfse-api sincronizar --nsu 12345 --force

# Depuração (salva request/response em debug/)
consulta-nfse-api sincronizar --nsu 0 --debug

# Múltiplos certificados (--cert/--senha opcionais)
consulta-nfse-api sincronizar --nsu 0 --cert outro.pfx --senha "minha-senha"

Configuração

Crie um arquivo .env na raiz do projeto:

NFSE_CERTIFICADO_PFX=certificados/meu_certificado.pfx
NFSE_SENHA_CERTIFICADO=minha-senha
NFSE_AMBIENTE=producao

Ou exporte variáveis de ambiente:

export NFSE_CERTIFICADO_PFX=/path/to/cert.pfx
export NFSE_SENHA_CERTIFICADO=minha-senha

Como funciona

  1. Carrega o certificado A1 (formato PFX/P12) e extrai CNPJ/CPF.
  2. Consulta a API de distribuição ADN Nacional por NSU.
  3. Descompacta os XMLs (base64 + gzip) e salva em {destino}/{YYYY.MM}/{chave}.xml.
  4. Retorna metadados estruturados para controle de progresso.

Licença

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

consulta_nfse_api-0.1.0.tar.gz (11.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

consulta_nfse_api-0.1.0-py3-none-any.whl (16.6 kB view details)

Uploaded Python 3

File details

Details for the file consulta_nfse_api-0.1.0.tar.gz.

File metadata

  • Download URL: consulta_nfse_api-0.1.0.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for consulta_nfse_api-0.1.0.tar.gz
Algorithm Hash digest
SHA256 95984ca3173f8c82f9f49c7fa5a5f4a41b9e97c2b11f5685dea53d0f59c96683
MD5 0696fe00bbbe396756f21550804eddb0
BLAKE2b-256 134ba51b9784e6dc245879590765de691cea92c96f993bfa96e3997b3bbbd06e

See more details on using hashes here.

File details

Details for the file consulta_nfse_api-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: consulta_nfse_api-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 16.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for consulta_nfse_api-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f6b536157336ee7ea101022e896882778eaa179224a5bad0cfa788ffe72ec715
MD5 2403aa6dc447e188dae4c2d617619a48
BLAKE2b-256 df8e8dcd340e0b0757eddb04a8a6c791bbce95fbaf1560cf0066ab0710b5bfbb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page