調達書類データ抽出

発注請書からExcelにデータ抽出 — 発注内容とサプライヤー確認内容の差異を可視化

発注請書はハイブリッド文書です。発注の全明細(買い手データ)を再掲しつつ、サプライヤー側の確認内容(受注数量、確定出荷日、価格確認、代替品注記)が追加されています。最も価値があるのは両者の差異ですが、テンプレート型OCRでは事前設定された発注フィールドしか読めないため見逃されます。当社のVision AIは請書の両面を一度に読み取り、発注数量と受注数量を並べて出力し、自動で差異を検出します。

暗号化処理・変換後自動データ削除

PDF / スキャン / 写真
発注数量 vs 受注数量
XLSX / CSV

発注請書から抽出できるデータ

必要な列名を入力するだけ。AIは請書全体を読み取り、買い手が送信した発注フィールドとサプライヤーが追加した確認フィールドの両方を抽出します。列名を個別に入力する代わりに、列セットをプリセットとして保存すればワンクリックで再利用可能。デモページのテンプレートを開けば、サンプルデータを使った抽出をすぐに試せます。

PO番号
受領日
購入者名
仕入先名
品目コード
説明
注文数量
受入数量
単価
行合計
確定出荷日
代替品注記
確認状況
同意済み

本ツールはカスタム列抽出を採用。「発注数量」「受注数量」「確定出荷日」「代替品注記」など列名を入力すると、AIがラベルの意味を理解してページ上の該当値を特定します。テンプレート上の位置ではなくラベルのセマンティクスで抽出するため、同じ列名が数十の異なるサプライヤーの請書で機能します。計算列も定義可能。例えば「数量差異(発注数量-受注数量)」と指定すれば、抽出時にAIが自動計算。出力スプレッドシートにすでに差異列が含まれるため、Excelでの後処理は不要です。さらに推論列(例:「リスクレベル(完全一致/不足/過剰受注/代替品)」)を追加すれば、各行の発注数量・受注数量・代替品注記をAIが読み取り、適切なラベルを自動付与します。

発注請書はPOと請求書の間に存在する — テンプレートOCRは書類の半分しか読まない

サプライヤーが発注請書を返送するとき、単に受領確認をしているのではなく、変更を加えているのです。在庫が不足すれば数量は下方調整され、元のSKUが入手できない場合は同等品に置き換えられます。出荷日は生産能力に応じて前後にずれ、価格は明細レベルで再確認または修正されます。この書類は交渉の成果物であり、元のPOの単なる写しではありません。しかしテンプレートベースの抽出ツールはPOを前提に作られています。つまり、元の発注と同じ位置に同じフィールドがあることを期待します。サプライヤーが「受入数量」列や「代替品」行を追加しても、テンプレートがその読み取りに対応していなければ、それらのフィールドは見えません。注文数と確定数の差異 — 請書を読むそもそもの理由 — がスプレッドシートに反映されないのです。

01

テンプレートベースのOCRは設定された発注書フィールドのみ読み取り、サプライヤー側の確認列はすべて見えません。 「品目コード、説明、数量、単価、行合計」用に設定されたテンプレートは、標準的な発注書からこれらのフィールドを正確に抽出します。しかし、POAには「受入数量」(部分納入のため発注数量より少ない可能性あり)、「確定出荷日」(元の発注書納期より2週間遅れる可能性あり)、「確認ステータス」(行レベルで「受入」「一部受入」「拒否」)も含まれています。テンプレートは設定に一致する発注書フィールドを認識し、確認フィールドは元のテンプレートに含まれていないためスキップします。出力は完全な発注書抽出のように見えますが、発注確認書を単なる承認印から実用的なサプライチェーン文書に変えるデータが欠落しています。

02

代替品や価格修正により、元の発注書テンプレートにフィールドマッピングがないデータが発生します。 特定の部品が不足しているサプライヤーは、互換性のある別メーカーのSKUを代替品として提案し、POAに記載する場合があります。500ユニットの明細に対し、「代替品:PN-403BがPN-401Aを置き換え、200ユニット、改定価格3.42ドル」と記載されることもあります。元の発注書テンプレートには「代替品注記」列も代替SKU列もありません。これらのフィールドはテンプレートスキーマに存在しないため抽出されません。購買担当者がExcelファイルを開き、発注書価格でPN-401Aが500ユニットと表示されれば、すべて一致していると想定します。しかし、入荷時にPN-401Aが300ユニット、PN-403Bが200ユニットで、請求書が整合しないことになります。エラーはOCR精度の問題ではありません。すべての文字は正確に読み取られています。エラーは、テンプレートが指定されたものだけを抽出するという点にあります。

03

サプライヤーごとにPOAのフォーマットが異なるため、あるサプライヤーのレイアウト用に作られたテンプレートは次のサプライヤーでは機能しません。 サプライヤーAは受入数量列を「Ack Qty」とラベル付けし、発注数量の右側に配置します。サプライヤーBは「Confirmed」と呼び、元の明細行の下にある別の確認セクションに配置します。サプライヤーCは、元の発注書に各行の横に「ACCEPTED」とスタンプを押し、出荷日を手書きで記入することで確認を埋め込みます。テンプレートベースのツールは、機械学習を使用するものでも、サプライヤーごとのトレーニングまたはサプライヤーごとのフィールドマッピングが必要です。200のアクティブサプライヤーがいれば、200のフィールドマッピングが必要です。201番目のサプライヤーでは、誰かが手動で新しいレイアウトを設定するまでテンプレートは役に立ちません。この問題は、サプライベースに新しいサプライヤーが追加されるたびに悪化します。

01

Vision AIは、納入通知書全体を1つの文書として読み取り、POフィールドと確認フィールドを1回の処理で抽出します。 事前設定されたPOテンプレートを適用し、サプライヤーの追加情報がたまたま一致することを期待する代わりに、AIはページ上のすべてのラベルと値を読み取ります。元のPOセクションからは「PO番号」「品目コード」「説明」「注文数量」、サプライヤーの確認セクションからは「受入数量」「確定出荷日」「代替品注記」「確認ステータス」を抽出します。AIは、同じ品目コードと説明を持つ明細行が、同じ商取引の両側を表すことを理解するため、両方のフィールドセットが出力スプレッドシートの同じ行に入力されます。PO列と確認列に別々のテンプレートは不要です。1セットの列名で文書全体を抽出できます。

02

計算列により、抽出が即座の差異検出に変わります。ファイルを開く前に、注文数量と受入数量の差が計算されます。 「注文数量」「受入数量」、そして「数量差異(注文数量から受入数量を引いた値。マイナスの場合はフラグ)」の列を定義します。AIは納入通知書から注文数量と受入数量を抽出し、その差を計算します。負の値は自動的に不足をフラグします。これは、サプライヤーが全数量を納品できない明細行です。ゼロは完全一致を意味します。「価格一致(注文単価≠受入単価の場合は「警告」を出力)」を定義すると、AIはすべての明細でPO価格とサプライヤーの確定価格を比較します。「リードタイムチェック(確定出荷日 > PO要求日の場合「遅延」を出力)」を定義すると、AIは確定日が元の納期を過ぎているすべての明細をフラグします。これは単なる抽出ではありません。同じ処理パスで完了する、抽出と購買分析を組み合わせたものです。

03

カスタム列抽出は、サプライヤーごとのテンプレート問題を解消します — 抽出はフィールド位置ではなく、ラベルの意味に基づいて行われます。 列名を一度入力するだけです:「PO番号」「注文数量」「受入数量」「確定出荷日」「代替品注記」「確認ステータス」。AIがサプライヤーAのPOAを処理 — 「Ack Qty」というラベルを読み取り、「受入数量」にマッピングします。次にサプライヤーBのPOA — 「Confirmed」というラベルを読み取り、両方のラベルが同じ商業概念を表していると理解して「受入数量」にマッピングします。サプライヤーCが元のPOに手書きした確認書 — AIは各明細行の横にある手書きの出荷日を読み取り、「確定出荷日」にマッピングします。列名は変わりません。サプライヤーの書類が変わります。AIはテンプレートではなく意味を読み取るため、そのギャップを埋めます。201社目のサプライヤーを追加する場合、設定変更は一切不要 — 同じ列名で新しいフォーマットからデータを抽出します。

50件のサプライヤー請書を1回の処理で抽出・比較・フラグ付けする方法

アップロード — 全仕入先のPOAをそのまま、フォーマット別に仕分けせずに

月末の購買照合で、全仕入先からの確認書をまとめてドロップ:28社から50件のPOA。中には仕入先のERPからエクスポートされたクリーンなデジタルPDFもあれば、ポータル生成の構造化明細表付き確認書もある。元のPOをスキャンし、仕入先が手書きで確認コメントを余白に書き込んだもの — 各行に鉛筆で出荷日、数量の訂正と書き直し、ヘッダーに赤い「承認済」スタンプ — もある。さらに、仕入先が修正したPOのコピーに「変更点は赤字参照」と書いたメール確認書をPDF化したものも。仕分け不要、フォーマット分離不要 — AIが各書類をテンプレートではなくラベルの意味で独立して読み取るため、バッチはすべてを一括処理する。

列を定義 — 抽出を差異レポートに変える比較列

購買レビュー用スプレッドシートの列名を入力:PO番号仕入先名品目コード説明発注数量受入数量確定出荷日単価(受入)代替品注記確認ステータス。次に分析列を追加:数量差異(発注数量−受入数量;マイナスの場合はフラグ)価格チェック(発注単価≠受入単価の場合「警告」を出力)代替品有無(代替品注記が空でない場合「あり」を出力)リスクレベル(選択肢:完全一致/不足/過剰受入/代替品)。AIが仕入先データを抽出し、各行を比較して全列を埋める — Excelファイルを開けば、すべての差異がリスク順に整理されて表示される。

出力 — 1つのスプレッドシートに、すべての比較結果と例外が自動でフラグ済み

Excelファイルをダウンロードすると、各行が仕入先確認書の1明細に対応し、POの全フィールドと確認書の全フィールドが同一行に表示されます。数量差異列では、発注数より少ない数量で受諾された明細がすべて自動フラグ済み。価格チェック列では、PO単価と異なる確認単価の明細がすべて自動表示済み。代替品列では、代替品注記のある明細がすべて自動識別済み。リスクレベル列では、全明細が「完全一致」(発注通り納品予定)、「不足」(数量差異がマイナス)、「過剰受諾」(発注数より多く受諾)、「代替品」(SKU違い)に分類済み。リスクレベルでフィルタし、例外を確認の上、適切なフォローアップに振り分けてください。不足行は督促、代替品行は承認のため設計部門へ、価格変更行はカテゴリーマネージャーへ。手動比較は不要です。スプレッドシート自体が比較結果です。

発注請書抽出が最も効果的なケース — 確認すべきポイント

AIは標準的な請書フォーマットから、POフィールドとサプライヤー確認フィールドの両方を確実に読み取ります。ただし、書式自体がサプライヤーの変更内容を曖昧にする一部のエッジケースでは、スポットチェックが推奨されます。

確実に抽出

サプライヤー作成の標準POA PDF(ヘッダーにバイヤー・サプライヤー・PO番号・日付、明細テーブルあり)— AIがPOデータ部とサプライヤーの確認欄を一括で読み取り。

主要サプライヤーポータルやe調達システムからエクスポートされた確認書類— 受入数量と出荷日が記載された構造化明細テーブルを、ポータルのレイアウトに関わらずクリーンに抽出。

スキャン・FAXされたPOAで、サプライヤーが手書きで注釈を記入したもの— Vision AIが印刷文字と手書き文字の両方を認識。明細横に鉛筆書きされた出荷日、取り消し線と書き直しがされた数量、スタンプや署名もすべてラベル付きフィールドとして抽出。

複数サプライヤーにわたる一括処理— 28社のサプライヤーから50件のPOA、異なるフォーマットでも1つの列定義、1つの出力スプレッドシート。サプライヤーごとの設定不要。抽出はテンプレート位置ではなくラベルの意味に基づくため。

確認が必要なケース

部分受領のPOAで、明細ごとにステータス(受領/一部/拒否)がある場合 — AIは印刷された内容を読み取ります。サプライヤーが明細を「一部」とマークしても、納入予定数量が印刷されていない場合、「受領状況」列は「一部」と表示され、対応する「受領数量」は空欄になります。該当明細はサプライヤーからの別途連絡と照合してください。

代替品の理由が構造化フィールドではなく自由記述欄に記載されている場合 — 「代替品注記」列が定義されていればAIはテキストを抽出しますが、長い説明文は途中で切れる可能性があります。列を定義し、重要な代替理由(技術的同等性、仕様逸脱など)が完全に取得されているか確認してください。

受領確認書に添付されたサプライヤーの利用規約ページ — AIは受領確認セクションのみを抽出し、法的な定型文は抽出しません。規約テキストは定義された列にマッピングされず、正しく除外されます。ただし、明細テーブル内にインラインで記載されたサプライヤー側の条件(例:「現状渡し、返品不可」)は、「明細レベル注記」列を定義することで取得できます。

計算列の不一致チェックは算術比較です — 抽出された2つの値が異なるかどうかを確認しますが、その差が商取引上許容できるかどうかは評価しません。500ユニットの明細で数量差異が-5の場合は1%の不足であり、エスカレーション不要かもしれません。同じ-5でも10ユニットの明細では50%の不足となり、即時対応が必要です。トリアージにはリスクレベル列を使用し、最終的な調達判断は別途行ってください。

よくある質問

AIは、サプライヤーがPO発注数より少ない数量を受け入れた場合を検出できますか?

はい — これがまさに中核的なユースケースです。「発注数量」と「受入数量」を2つの別々の列として抽出します。AIはPOセクションから元の発注数量を読み取り、受領確認セクションからサプライヤーの確定数量を読み取り、両方を同じ行に配置します。計算列「数量差(発注数量-受入数量)」を追加すると、AIが抽出時にその差を計算します。負の値は、サプライヤーが発注数より少ない数量を確定したことを意味し、その行が不足リストとなります。ゼロは完全一致です。推論列「リスクレベル(選択肢:完全一致/不足/超過受入/代替品)」も追加でき、AIは数量差、代替品注記、受領確認ステータスを読み取り、各行に適切なラベルを割り当てます。これにより、Excelでの後処理なしで、フラットな抽出結果を優先順位付きの例外レポートに変換できます。

サプライヤーが異なるSKUの商品に代替したPOAでも機能しますか?

はい。「品目コード」「品目名」「代替品注記」を列として定義します。AIはPOセクションから元の発注品目コードと品目名を抽出し、サプライヤーの代替品注記を読み取ります。これは「代替品」とラベル付けされた構造化フィールドである場合も、「PN-401AをPN-403Bに置き換え」のような明細品目名列内の注記である場合も、余白の手書き注釈である場合も対応します。代替品に置き換えSKUが含まれている場合、それも捕捉されます。「代替品目コード」列を定義すれば、AIがそれを別途抽出します。推論列「代替品フラグ(選択肢:はい/いいえ)」を追加すると、代替品注記フィールドを読み取り、空でなければ「はい」、空なら「いいえ」を出力します。これにより、注文処理前に技術レビューや品質レビューが必要なすべての明細を即座にフィルタリングできます。サプライヤーが元の品目を単に取り消し線で消し、その上に新しい品目を書き込んだだけのPOAの場合でも、AIは両方の値を読み取り、正しい列に配置します。

サプライヤーが別紙を発行せず、元のPOに確認を記入する場合のPOA処理は?

多くの中小サプライヤーは正式な確認書を発行せず、元のPOに「承諾」のスタンプを押し、各行に希望納期を手書きし、供給不能な数量を消し込み、FAXやメールで返送します。Vision AIは、正式なPOAと同様にこの文書を読み取ります。元のPOの項目(品目コード、説明、注文数量、単価)を特定し、サプライヤーの手書き注釈を読み取ります。ヘッダー近くの「承諾」スタンプは「確認ステータス」列にマッピングされます。明細行の横の手書き日付は「確定出荷日」にマッピングされます。消し込まれた数量の上に新しい数字が書かれている場合、AIは印刷された元の数量を「注文数量」、手書きの上書きを「受入数量」として読み取ります。テンプレートベースのツールとの重要な違いは、AIがサプライヤーの注釈を特定の列や形式で表示する必要がないことです。ページ上の表示内容をすべて読み取り、その内容に基づいて列名にマッピングします。つまり、品目の近くの日付は出荷日、印刷された数字の上に書かれた数量は受入数量として認識されます。

数十社のサプライヤーから、まったく異なるフォーマットのPOAを一括処理できますか?

はい。すべてのサプライヤー確認書(正式なPDF、ポータル出力、スキャンした注釈付きPO、メール印刷物)を1つのバッチでアップロードしてください。列名は一度定義するだけです。AIは、サプライヤーAの構造化されたPOAテーブルを処理し、「Ack Qty」というラベルの「受入数量」列を読み取ります。サプライヤーBの確認書では、同じデータが「Confirmed Qty」という列にあります。サプライヤーCの元のPOへの手書きマークアップでは、受入数量が印刷された注文数量の上に走り書きされています。これらすべてが出力スプレッドシートの「受入数量」にマッピングされるのは、AIがフィールドの位置や列ヘッダーのテキストではなく、ラベルの意味でマッチングするためです。これがテンプレートベースの抽出(サプライヤーフォーマットごとに1つのマッピング)とセマンティック抽出(1つの列名、任意のフォーマット)の違いです。出力は、すべてのPOAデータが同じ列構造にまとめられた1つの統合Excelファイルです。「サプライヤー名」で並べ替えてサプライヤーごとに確認したり、「数量差異」でフィルタリングして全サプライヤーの不足分を一度に確認したりできます。

調達データ(サプライヤー価格、数量、代替品情報)は安全ですか?

すべてのファイル転送はTLS 1.3暗号化を使用します。書類は隔離されたセッションで処理され、変換から24時間以内にサーバーから自動削除されます。サプライヤー名、品目コード、単価、数量、代替品メモなどの調達データは、AIモデルのトレーニングに使用されることはなく、処理期間を超えて保持されることもありません。抽出されたExcelファイルは直接お客様の端末にダウンロードされ、抽出結果は保存されません。機密性の高いサプライヤー価格やサプライチェーンデータを扱う調達チームにとって、このアーキテクチャにより、競争力のある価格情報、サプライヤー実績データ、注文詳細は処理完了時にサーバーから削除されます。永続的に残るコピーはお客様のシステム上のみです。

📮 contact email: [email protected]