Hacker News

Every invoice in Brazil's economy runs on SOAP 1.2. We mapped it all

Coleção Postman - Webservices dos Documentos Fiscais Eletrônicos Brasileiros

Coleção completa e documentada dos webservices dos documentos fiscais eletrônicos brasileiros: NF-e (55), NFC-e (65), CT-e (57) e MDF-e (58).

Arquivo: postman/SEFAZ-Webservices-Catalogo.postman_collection.json (29 itens em 5 pastas: uma por modelo + referência de eventos).

Integrar com a SEFAZ exige garimpar manuais (MOC NF-e/NFC-e 4.00, CT-e 4.00, MDF-e 3.00b, NT 2015.002) e portais de autorizadores para descobrir URL, envelope SOAP e peculiaridades de cada serviço. Esta coleção entrega isso pronto: cada request com envelope SOAP 1.2 montado e variáveis {{}}.


Serviços Validados

Os dois serviços de distribuição DFe (CT-e e MDF-e) foram validados contra a SEFAZ em produção em 12/09/2026 (cStat 137) e estão marcados com [OK testado].


Instalação e Configuração

  • Importar: Import > postman/SEFAZ-Webservices-Catalogo.postman_collection.json
  • Certificado (Settings > Certificates > Add Certificate): adicione seu e-CNPJ A1 (.pfx + senha) por host. Para as distribuições: www1.cte.fazenda.gov.br, mdfe.svrs.rs.gov.br, mdfe-homologacao.svrs.rs.gov.br.
  • Settings > General: desligue "SSL certificate verification" (as ACs da ICP-Brasil não estão no trust store do Postman).
  • Em cada request, copie a URL (homolog ou prod, da descrição) para a variável {{url}}, ajuste cnpj, cUF, tpAmb etc., e dispare.

Assinatura XML

  • [cadeado] no nome: o XML de dados exige assinatura XMLDSig (autorização, eventos, inutilização). O Postman não assina XML; para esses serviços use um assinador ou código próprio.
  • Consultas, status e distribuição não assinam.

Notas Técnicas Gerais

  • Todos SOAP 1.2: o action viaja no Content-Type, não em header SOAPAction.

Detalhes por Modelo

CT-e Distribuição (Ambiente Nacional)

  • distDFeInt com cUFAutor
  • Wrapper: cteDistDFeInteresse > cteDadosMsg
  • Sem cabecMsg

MDF-e Distribuição (SVRS)

  • distDFeInt sem cUFAutor (ocUF vai em mdfeCabecMsg do header)
  • mdfeDadosMsg direto no Body
  • Só tem distNSU e consNSU (não tem consChNSU)

NF-e Distribuição (AN)

  • Igual ao CT-e (com cUFAutor), versão 1.01

Versões e Autorização

  • CT-e 4.00: autorização é só síncrona (SincV4/OSV4/GTVeV4); lote assíncrono e inutilização não existem no rol nacional.
  • MDF-e 3.00: autorização síncrona com área de dados em GZip+base64.

NFC-e

  • Exige CSC + QR Code (infNFeSupl); sem SVC (contingência offline tpEmis=9).
  • UFs AM/GO/MS/MT/PR/RS/SP têm ambiente próprio.

URLs e Cobertura

  • URLs default do SVRS (atende a maioria das UFs) + Ambiente Nacional para as distribuições.
  • Não cobre as 27 UFs uma a uma; para autorizador próprio (ex. NFC-e SP), troque a URL na variável.

Eventos

Eventos estão como pasta de referência (códigos de tpEvento); são enviados pelo RecepcaoEvento do respectivo modelo.


Fonte e Contribuição

  • gen_inventario.py gera inventario.json; build_collection.py monta o .json do Postman.
  • Para propor mudança, edite o gen_inventario.py, rode os dois e abra um PR.

Projetos Relacionados

  • ciot-integradoras-postman: CIOT via ANTT (pefServices) e integradoras de pagamento de frete
  • antt-webservices-postman: webservices da ANTT (CIOT, RNTRC, dados abertos)

Mantido pela Stoix. Licença MIT.

Read on Hacker News ↗ ← Back to News

Comments

No comments yet. Start the discussion.