ブラジルの経済における全ての請求書はSOAP 1.2で稼働している。我々はそれを全てマッピングした
Every invoice in Brazil's economy runs on SOAP 1.2. We mapped it all (github.com)
要約
この記事は、ブラジルの電子請求書システム全体がSOAP 1.2上で稼働していることを明らかにし、そのためのPostmanコレクションを紹介しています。このコレクションは、NF-e、NFC-e、CT-e、MDF-eといった主要な電子 fiscal ドキュメントのWebサービスを網羅し、開発者がこれらのシステムと容易に連携できるよう、URL、SOAPエンベロープ、設定方法などを具体的に提供しています。
全文翻訳
Catálogo de Webservices da SEFAZ (coleção Postman)
ブラジルの電子請求書:NF-e (55)、NFC-e (65)、CT-e (57)、MDF-e (58) のウェブサービスに関する、完全で文書化されたPostmanコレクションです。
ファイル:postman/SEFAZ-Webservices-Catalogo.postman_collection.json (5つのフォルダに29項目:モデルごと+イベント参照)
なぜ存在するのか
SEFAZとの統合には、マニュアル(MOC NF-e/NFC-e 4.00、CT-e 4.00、MDF-e 3.00b、NT 2015.002)や認証局のポータルを精査して、URL、SOAPエンベロープ、各サービスの特殊性を発見する必要があります。このコレクションは、それらを準備済みで提供します。各リクエストにはSOAP 1.2エンベロープが組み立てられ、{{}} 変数が使用されています。
2つのDFe配布サービス(CT-eとMDF-e)は、2026年9月12日に本番環境のSEFAZに対して検証済み(cStat 137)で、[OK testado] とマークされています。
Postmanでのセットアップ
- Import >
postman/SEFAZ-Webservices-Catalogo.postman_collection.jsonをインポートします。 - Certificado (Settings > Certificates > Add Certificate): e-CNPJ A1証明書(
.pfx+ パスワード)をホストごとに追加します。配布用には、www1.cte.fazenda.gov.br,mdfe.svrs.rs.gov.br,mdfe-homologacao.svrs.rs.gov.brを使用します。 - Settings > General: "SSL certificate verification" をオフにします(ICP-Brasilの認証局はPostmanのトラストストアに含まれていません)。
- 各リクエストで、URL(説明にあるホモロゲーションまたは本番)を
{{url}}変数にコピーし、cnpj,cUF,tpAmbなどを調整して実行します。
規約
- 名前の
[cadeado](南京錠):データXMLにはXMLDSig署名(認証、イベント、無効化)が必要です。PostmanはXMLに署名しないため、これらのサービスには署名ツールまたは独自のコードを使用してください。クエリ、ステータス、配布は署名しません。 [OK testado]:SEFAZ(cStat 137)に対して検証済みです。- すべてSOAP 1.2:
actionはヘッダーSOAPActionではなく、Content-Typeで送信されます。
違いでつまずく点(実際のテストで学んだこと)
- CT-e配布(Ambiente Nacional):
distDFeIntにcUFAutorがあり、cteDistDFeInteresse > cteDadosMsgのラッパーがあり、cabecMsgがありません。 - MDF-e配布(SVRS):
distDFeIntにcUFAutorがなく(cUFはヘッダーのmdfeCabecMsgにあります)、mdfeDadosMsgがBodyに直接あります。distNSUとconsNSUのみがあり(consNSUはありません)。 - NF-e配布(AN):CT-eと同様(
cUFAutorあり)、バージョン1.01です。 - CT-e 4.00:認証は同期のみ(SincV4/OSV4/GTVeV4);非同期バッチと無効化は全国ロールには存在しません。
- MDF-e 3.00:GZip+base64エンコードされたデータ領域を持つ同期認証。
- NFC-e:CSCとQRコード(infNFeSupl)が必要です(SVC(オフライン緊急モード tpEmis=9)はありません);AM/GO/MS/MT/PR/RS/SPの各州には独自の環境があります。
スコープと制限
- SVRS(ほとんどの州に対応)と、配布用のAmbiente NacionalのデフォルトURL。27州すべてを個別にカバーしていません;独自の認証局(例:NFC-e SP)の場合は、変数でURLを変更してください。
- イベントは参照フォルダとして含まれています(
tpEventoコード);各モデルのRecepcaoEvento経由で送信されます。
生成方法
真の情報源:gen_inventario.py が inventario.json を生成し、build_collection.py がPostmanの .json を構築します。変更を提案するには、gen_inventario.py を編集し、両方を実行してPRを開いてください。
姉妹リポジトリ
- ciot-integradoras-postman:ANTT(pefServices)および運賃支払いインテグレーター経由のCIOT
- antt-webservices-postman:ANTTのウェブサービス(CIOT、RNTRC、オープンデータ)
について
Stoix がメンテナンスしています。MITライセンス。