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.1.tar.gz (11.8 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.1-py3-none-any.whl (16.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: consulta_nfse_api-0.1.1.tar.gz
  • Upload date:
  • Size: 11.8 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.1.tar.gz
Algorithm Hash digest
SHA256 e45cf0cd768ba6a708f442dcaae46f92359b95cd885eee11cab34e7129cdb479
MD5 c369a216d48e3e3cef44f433a7de26e9
BLAKE2b-256 ab0ab199c3dd7ab48f174ad990b92f05b7dba2b84bd5f68dc7882ea50b654bcf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: consulta_nfse_api-0.1.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 12524254b2e6c775ed104bebcfc6fb2a90075528a22f1ffcfa982758b830c118
MD5 87972643f1d22715608a45a144f581c8
BLAKE2b-256 3365ad4fc204ffc2558df63376b666a0701bfd1f9748f75530e2c8aa8d431d06

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