ふくふくHukuhuku LLC
EP.19Open Data 10分公開: 更新:

法人情報APIの選び方:gBizINFO・法人番号API・EDINETを比較し、法人マスタにつなぐ

法人情報APIを目的・取得項目・申請・更新の違いで比較。架空データで法人マスタの結合と欠損処理を試し、保存項目と導入前の確認事項を整理します。

#法人情報#gBizINFO#法人番号#データ連携
執筆 / 監修
松尾 亮合同会社ふくふく 代表社員

データ基盤・データパイプライン構築 / BI / 生成 AI 活用支援を専門とするエンジニア (28 年)。 本記事は AI 利用ポリシーに基づき、生成 AI の補助で執筆 → 人間が監修・編集して公開しています。

プロフィール詳細
シェア

取引先の名称や所在地をそろえたいのか、補助金・特許などの活動を調べたいのか、提出された財務書類を読みたいのか。法人情報を扱うは、この目的によって選び方が変わります。このページでは、国税庁の法人番号システム、経済産業省のGビズインフォ、金融庁のを比較し、自社の顧客台帳と結び付けるまでを整理します。

選び方の要点

基本3情報(法人番号・商号または名称・所在地)を軸にするなら国税庁、法人活動の補足ならGビズインフォ、開示書類を扱うならEDINETを検討します。全法人に全項目がそろうという前提にはしません。

比較から実装の判断まで進められるよう、提供元・入力と出力・保存する情報・確認が必要なケースを共通の順序でまとめています。まず 架空データのサンプル一式をダウンロードして、処理の結果を確かめることもできます。

目的に合うデータを選ぶ

法人名の文字列だけで一致判定すると、同名企業、略称、移転前の所在地などが混ざります。まず社内の顧客IDを残したまま、法人番号との対応表を作ります。入力時点で法人番号がなければ名称と所在地から候補を探し、候補が複数ある場合は担当者が確認する運用にします。名称が似ているという理由だけで、売上や取引履歴の紐付け先を自動変更しないことが大切です。

Gビズインフォは、法人基本情報に加えて政府等が保有する法人活動情報を参照する入口になります。ただし、補助金、調達、特許などは収録対象や時点が異なります。ある項目が空欄でも、その企業に活動が存在しないことを証明するものではありません。欠損値とゼロを分けて保存し、後から提供元と取得日をたどれるようにします。

EDINETは提出者の開示書類を扱う仕組みです。全取引先の住所辞書として使う用途とは異なり、書類の種類、対象期間、訂正の有無を確認して利用します。法人番号で基本情報につなげられる場合でも、書類の対象年度と社内データの年度を合わせる必要があります。APIの費用だけで選ばず、取得後にどの判断を支えるかを先に決めましょう。

2026年10月11日確認。詳細な仕様・利用条件は末尾の公式資料を参照。
用途・提供元取得するもの利用開始・更新設計上の注意
名称・所在地の確認/国税庁法人番号、商号・名称、所在地などアプリケーションIDの届出。差分取得や全件ダウンロードを使い分けるWeb-APIで全件取得はできない。必要な版・項目を仕様書で確認
法人活動の補足/Gビズインフォ基本情報、補助金・調達・特許などの収録情報利用申請とトークン。現行案内はREST API 2.0でv1/v2の仕様を公開項目ごとに収録範囲・更新時点が違う。固定の一律上限を仮定しない
財務書類の調査/EDINET提出された開示書類とメタデータ利用登録と認証。最新のAPI仕様書を確認全法人の詳細財務がそろうわけではない。訂正書類も確認

入力と出力をサンプルで確かめる

社内の顧客IDと、外部情報を想定した架空の会社IDを結合します。DEMO-A等は実在の法人番号ではなく、input.jsonも実際のAPI応答形式ではありません。追加ライブラリなしで、情報がそろう顧客・活動情報がない顧客・基本情報に一致しない顧客の3ケースを確認できます。

実行する前に

全て架空データです。Python 3があれば、APIキー・追加ライブラリ・外部通信なしで実行できます。ZIPを展開し、そのフォルダで下のコマンドを実行してください。入力はinput.jsonにあります。結果は画面に出るだけで、自動保存・送信はしません。

展開したフォルダで実行
Bash
python3 example.py# 結果をローカルファイルに保存する場合python3 example.py > result.json
同梱example.pyの全文。入力形式はサンプル専用です。
Python
import jsonfrom pathlib import Path
# 架空データ。実際のAPI応答形式・法人番号ではありません。data = json.loads(Path(__file__).with_name("input.json").read_text(encoding="utf-8"))companies = {row["demo_id"]: row for row in data["companies"]}activities = {row["demo_id"]: row for row in data["activities"]}result = []for customer in data["customers"]:    company = companies.get(customer["demo_id"])    activity = activities.get(customer["demo_id"], {})    result.append({        **customer,        "name": company["name"] if company else None,        "subsidy_records": activity.get("subsidy_records"),        "status": "matched" if company else "review_required",    })print(json.dumps(result, ensure_ascii=False, indent=2))
同梱の架空データを実行した出力
JSON
[  {    "customer_id": "C01",    "demo_id": "DEMO-A",    "name": "サンプル製作所",    "subsidy_records": 2,    "status": "matched"  },  {    "customer_id": "C02",    "demo_id": "DEMO-B",    "name": "サンプル商店",    "subsidy_records": null,    "status": "matched"  },  {    "customer_id": "C03",    "demo_id": "DEMO-MISSING",    "name": null,    "subsidy_records": null,    "status": "review_required"  }]

結果のC01は会社名と補助金件数が取得でき、C02は会社名だけが一致します。C02の補助金件数はnullのままです。ここをゼロにすると「受給がなかった」という別の意味になるためです。C03は一致先がないのでreview_requiredになります。照合できないレコードも出力に残し、確認待ちの件数を把握できるようにしています。

このサンプルは、認証・通信・実際の法人番号検証を含みません。実APIをつなぐときは、提供元の応答を自社の共通項目へ変換する処理を別に用意します。タイムアウト、ページ分割、再試行、重複キー、取得失敗を扱い、情報が取得できなかった日にも既存の正しい台帳を消さないようにします。サンプルの成功を、そのまま実APIの接続成功とは扱わないでください。

何をどこに保存するか

情報本実装での保存先の例残すべき状態
社内顧客IDと法人番号の対応顧客マスタとは別の対応表候補・確定・確認待ちを区別する
取得した項目と提供元利用条件に沿った保存領域取得日時、元データの更新日、API版を別々に保持
活動情報の欠損・取得失敗状態列と処理記録ゼロに置換せず、前回値と区別する

運用では、正規化した値だけを上書き保存するより、社内で入力した元の名称、照合に使った法人番号、確認状態を分けて持つ方が、変更理由を説明しやすくなります。人が確定した対応関係を自動処理が黙って変更しないルールも必要です。担当者が確認する画面と、確認後にどの項目を更新するかまで決めると、導入後の手戻りを減らせます。

全件を初期投入したい場合と、日々変わった情報を追いたい場合では取得方法が異なります。国税庁は全件データのダウンロードを案内しており、APIの期間指定にも制限があります。Gビズインフォのv2にも期間指定などの個別制約があります。最初から大量の並列通信をせず、対象と期間を絞り、停止時にどこから再開するかを記録します。

更新頻度は全サービス・全項目に共通ではありません。毎日取得したからといって、元の財務情報も毎日更新されているとは限らないため、画面には取得日時だけでなく元情報の対象時点も表示します。提供元の情報は取引判断の材料であり、信用や安全性の自動判定を保証するものではありません。判断根拠が足りない場合に確認へ戻せる設計が必要です。

導入前に確認する制約

  • 公開情報だけで企業の信用・実在性・取引の安全性を断定しない
  • APIトークンをブラウザや公開ノートブックに置かない
  • 収録なし・取得失敗・値がゼロを区別する
  • 利用条件と提供元の変更告知を運用開始前にも確認する

自社の業務で試すには

「法人マスタの照合・更新を試作したい」という段階から相談できます。入力する項目、期待する出力、更新頻度、使う人、確認待ちになった場合の操作を整理すると、必要な試作範囲を具体的にできます。実データや秘密鍵をフォームに貼る必要はありません。まず匿名化した項目と困っている作業を教えてください。

データ活用の試作を相談する

この記事のテーマで相談する — 内容を確認して進め方を検討します。フォームを開いたり送信したりするだけで有料発注になることはありません。

関連する実装ガイド

確認した一次資料

比較の確認日は2026年10月11日です。提供元の利用条件・項目・認証・制限は変更されることがあるため、実装開始時にも公式資料を確認してください。このページのサンプルは結合や例外処理の動きを確かめるためのもので、外部APIの接続成功、実データの精度、事業成果を示すものではありません。

よくある質問

サンプルを動かすのにAPIキーは必要ですか?
不要です。架空データとPython 3の標準ライブラリで動き、外部通信を行いません。実APIへの接続試験は含みません。
実際の顧客データを送る必要はありますか?
サンプル実行や最初の相談には必要ありません。項目名、件数の目安、実現したい処理から相談できます。
シェア

この記事の感想を教えてください

あなたの 1 クリックで、本当にこの記事は更新されます。「もっと詳しく」「続編希望」が一定数集まった記事は、 ふくふくが 実際に内容を拡充したり続編記事を公開 します。 送信したリアクションはお使いのブラウザに記録され、再カウントされません。

REVISION HISTORY

公開: 2026-05-10
  1. 2026-10-11内容拡充提供元の比較、架空データで動くサンプル、保存項目と実装の確認点を追加。取得範囲・更新条件の断定を見直しました。
シリーズの外も探す:

まずは、現状を聞かせてください。

要件が固まっていなくて大丈夫です。現状診断と方針提案までを無料でお手伝いします。

無料相談フォームへ hello [at] hukuhuku [dot] co [dot] jp