BUILD VS BUY

国税庁APIを自作する場合と、Bango APIを使う場合の責務比較

国税庁の法人番号Web-APIとインボイスWeb-APIは、申請すれば無料で利用できます。自分で組み込むこともできます。

判断が要るのは「作れるかどうか」ではありません。統合・差分同期・データ品質・名寄せ・仕様変更への追従を、この先も自社で持ち続けるかどうかです。

このページでは、自作したときに利用側が持つ責務と、Bango APIが引き受ける範囲を並べます。料金の大小ではなく、誰が何を持ち続けるかで比べてください。

WHEN TO BUILD

国税庁APIを直接使うのが合理的なケース

次のような使い方なら、国税庁のWeb-APIをそのまま使うのが素直な選択です。間にBango APIを挟む必要はありません。

  • 法人情報とインボイス登録情報の、どちらか一方だけあれば足りる
  • 扱う件数が少なく、その都度の単発取得で足りる
  • 継続的な変更検知や、自社DBへの同期が要らない
  • アプリケーションIDの申請と発行を待てる
  • 国税庁の利用規約・利用条件の範囲で完結する
  • 加工前の一次情報をそのまま扱いたい

この範囲であれば、外部サービスを足すほうが手数は増えます。以降は、これに当てはまらない場合の話です。

WHAT YOU OWN

自作する場合に必要になること

最初の1コールを通すところまでは、公開されている手順のとおりに進みます。責務として残るのは、そのあと継続して運用に載せる段階です。以下は実際に組み込んで運用した過程で必要になった作業です。

  1. アプリケーションIDを申請する

    国税庁のWeb-APIを呼ぶには、まずアプリケーションIDの取得が要ります。必要な手続きは、どのWeb-APIをどの順で使うかで変わります。法人番号Web-API用に取得したIDでインボイスWeb-APIも使いたい場合は、機能の追加申請と承認をもう一度挟みます。発行までの目安は国税庁の案内に示されていますが、実際にかかる期間はケースによって変わります。開発の着手時期を、この待ち時間から逆算する必要があります。

    出典: curlで試した記録

  2. 2つのAPIを統合する

    法人情報は法人番号Web-API、インボイス登録情報はインボイスWeb-APIと、取得先が分かれています。1つの企業について両方を返したいなら、2回呼び出して結果を突き合わせる処理が要ります。T番号は、法人であれば「T + 法人番号13桁」ですが、個人事業者や人格のない社団等の13桁は法人番号ではありません。Tを外せば必ず法人番号になる、という前提では処理できないケースがあります。

    出典: curlで試した記録

  3. XMLとJSONの差異を吸収する

    法人番号Web-API(Ver.4)が返せるのはCSVとXMLで、JSONはありません。インボイスWeb-API(Ver.1)ではJSONを選べます。2026-08-27に実測した際のContent-Typeは、それぞれ application/xml;charset=UTF-8 と application/json;charset=UTF-8 でした。フィールドの持ち方も違います。登録番号のキーは registratedNumber、値のない項目は null ではなく空文字で返り、住所は分割されたフィールドと1つの文字列に分かれます。同じ企業でも updateDate の値は両APIで一致しません。これらを1つのデータモデルへ揃える変換層が要ります。

    出典: curlで試した記録

  4. 差分を同期し続ける

    両APIとも期間を指定した差分取得を備えているため、全企業を1件ずつ再取得する必要はありません。ただし差分は件数が多いと分割されて返ります。2026-08-26の1日分を取得したところ、法人番号側は2,257件で2分割(1レスポンスあたり最大2,000件)、インボイス側は法人に絞っても644件で2分割(同 最大500件)でした。分割の有無を確認して全ページを取り切り、取り切ってから同期位置を進める。途中で失敗したときの再開位置と、二重適用を避ける仕組みも要ります。

    出典: curlで試した記録

  5. 遅れて掲載されたデータを回収する

    差分に載った日付と、その変更が効力を持つ日付は別です。更新日が当日でも、失効日には将来の日付が入っていることがあります。差分にいったん現れず、後から掲載されるデータもあります。同期位置を進めたあとで過去日にさかのぼり、取りこぼしを拾い直す経路が要ります。

    出典: 統合後の運用記録

  6. データ品質を監査する

    同期処理が成功で終わっても、DBが実際には更新されていないことがあります。処理件数やエラー数だけを見ていると、この状態には気づけません。500万件規模になると、本番でしか現れない不整合も出ます。同期の成否とは別に、公表データと自社DBを突き合わせる定期監査が要ります。

    出典: 統合後の運用記録

  7. 企業名から名寄せする

    手元にあるのが企業名だけ、という場面は避けられません。㈱ /(株)/ 株式会社、全角と半角、スペース、長音符といった表記の揺れを正規化したうえで候補を突き合わせます。突き合わせで出るスコアは確率ではないため、どこから自動処理に流し、どこから目視に回すかの線引きを自分で決める必要があります。Bango APIでは confident / review / unmatched の3段階で返し、その判定基準を公開しています。

    出典: 統合後の運用記録

  8. 仕様変更に追従し続ける

    公表データの仕様やコード値の意味は更新されることがあります。差分の処理区分は単独では意味が定まらず、訂正区分や複数の日付と組み合わせて読む必要があります。いったん解釈を実装へ落としたあとも、公表資料の更新を追い、変わったときに変換処理を直す当番が残ります。

    出典: curlで試した記録

RESPONSIBILITY

どちらが何を持つか

同じ結果を得るために、利用側が持つ責務がどう変わるかを並べます。Bango APIを使っても消えない責務は、次の節に分けて書きます。

項目自作した場合(利用側が持つ)Bango APIを使う場合
認証情報の取得国税庁へアプリケーションIDを申請する(使うWeb-APIの組み合わせによっては追加の申請と承認が要る)ダッシュボードでAPIキーを発行する(国税庁への申請は不要)
呼び出し回数法人情報とインボイス情報を別々に呼び出し、結果を突き合わせる1回のリクエストで統合したJSONを受け取る
レスポンス形式XMLとJSONの両方を解析し、1つのデータモデルへ揃える統一したJSONで受け取る
T番号しかない場合法人番号との対応規則を自前で持ち、個人事業者のケースを切り分けるT番号のまま照会でき、法人/個人事業者等を区別して受け取る
過去日付での有効性登録日・取消日・失効日から判定ロジックを自作する日付を指定して判定結果を受け取る
表記ゆれの名寄せ正規化とスコアリングを実装し、自動処理の閾値を自分で決める信頼度つきの一括名寄せを呼び出す(判定基準は公開)
差分同期分割取得・同期位置の管理・再実行時の二重適用対策を実装し、運用する日次で同期した結果を使う(出典と、取得できる場合の国税庁レコード更新日は meta.source で確認)
データ品質の監査公表データと自社DBの突き合わせを定期実行し、ずれを直す監査はBango API側で継続する
仕様変更への追従公表資料の更新を追い、変換処理を改修する追従はBango API側で行い、変更はドキュメントで告知する
稼働の監視自作した同期基盤とAPI呼び出しの異常を、自分で検知して復旧する公開のステータスページで状態を確認する
利用料国税庁Web-APIの利用料は無料。かかるのは実装・保守の時間と、要件に応じた運用基盤の費用月額のプラン利用料。無料枠あり

どちらが持つかを決める前に、返ってくるJSONを実際に見比べられます。 実際のレスポンスを見比べる

STILL YOURS

Bango APIを使っても利用側に残ること

肩代わりできない責務もあります。導入を検討する段階で見えているほうがよいため、先に書いておきます。

  • APIキーの発行・保管・失効の管理
  • プラン上限に合わせた呼び出し設計と、失敗したときのリトライ
  • 返ってきた判定を、いつ時点で有効とみなすかという自社の業務要件へ落とし込むこと
  • 取得できる場合の meta.source の更新日と、稼働状況ページを見て、必要な鮮度を満たしているか判断すること
  • 国税庁の公表データを出典として表示すること
  • 重要な判断では、国税庁の公表サイトで最終確認する運用を残すこと
  • Bango API側が応答しないときに、自社サービスをどう振る舞わせるか決めておくこと

TOTAL COST

料金ではなく、保守の総コストで比べる

国税庁Web-API自体の利用料は無料です。比べるのは月額ではなく、実装と保守にかかる時間と、要件に応じて必要になる運用基盤を含めた総コストです。

コスト項目一度きり運用している限り続く
初期実装2つのAPIの統合・形式変換・データモデルの設計実装後の改修は、以下の各項目として現れる
仕様変更への追従公表資料を読み解いて実装へ落とす更新のたびに調査と改修が発生する
利用条件とエラーへの対応リトライとキャッシュの設計想定外の応答が出るたびに調査が要る
表記ゆれの名寄せ正規化と突き合わせの実装精度の改善と閾値の見直しが続く
差分同期分割取得・同期位置の管理・二重適用対策の実装日次の監視と、失敗したときの再実行が続く
データ品質の監査公表データとDBを突き合わせる仕組みの構築定期監査と、見つかった差異の復旧が続く
実行基盤・データ保管DB・バッチ実行基盤・監視の設計と構築ストレージ・コンピュート・監視などの利用料と、その運用
障害対応検知と通知の整備自社の可用性要件に応じた検知と復旧の対応が続く

この表に金額は入れていません。工数も単価もチームによって変わり、こちらが代わりに決められるものではないためです。自社の値と、各項目に月あたりどれだけ見込むかを当てはめて計算してください。Bango APIの月額は料金ページで確認できます。

PRIMARY RECORDS

このページの根拠にした開発記録

上に挙げた事実は、国税庁のWeb-APIを実際に呼び出し、統合して運用した過程の記録に基づいています。手順とレスポンスは記事側に残しています。

FAQ

よくある質問

Build vs Buy の判断でよく聞かれる点をまとめます。

国税庁のAPIは使わないほうがよい、ということですか?
いいえ。このページの冒頭に挙げたケースに当てはまるなら、国税庁のWeb-APIを直接使うのが合理的です。自作をやめるべきだという主張ではなく、自作したときに何を持ち続けることになるかを整理したものです。
自作とBango APIでは、どちらが安く済みますか?
月額だけでは決まりません。国税庁Web-API自体の利用料は無料です。ただし自社DBへの継続同期や監査まで行うなら、実装・保守の時間に加えて、要件に応じたDB・バッチ・監視などの運用基盤も比較の対象になります。コスト項目の表に自社の値を当てはめて比べてください。Bango APIには無料枠があるため、比較のために先に実際のレスポンスを見ることもできます。
Bango APIは国税庁のサービスですか?
いいえ。Bango APIは国税庁とは独立した第三者のサービスです。国税庁が公表しているデータを編集・加工して提供しており、国税庁との間に特別な関係はありません。
いまの自作実装から、段階的に移行できますか?
できます。まずPlaygroundで、いま使っている法人番号やT番号をそのまま投げて、返るJSONを見比べてください。既存の実装を止めずに、1エンドポイントずつ置き換えられます。
データがいつ時点のものか分かりますか?
国税庁の公表データを日次で差分同期しています。レスポンスの meta.source では、データの出典と、取得できる場合は更新日を確認できます。稼働状況とメンテナンス情報は公開のステータスページで確認できます。
名寄せの精度はどれくらいですか?
カバレッジと、confidentと判定した分の精度を2軸で計測し、方法論と再現手順とあわせてベンチマークページで公開しています。1つの数字で語れるものではないため、どこまでを自動処理に流せるかという観点で確認してください。

NEXT STEP

まずレスポンスを見比べてください

移行を決める前に、いま自作で扱っている番号をそのまま投げて、返るJSONを見るところから始められます。