請求書で最も役立つ列は
ベンダーが印刷したものではない
仕入先の請求書に数量=5、単価=$12、請求総額=$65と記載されています。行合計は$60になるはずです。ベンダーは$5過請求しています—1行では小さな金額ですが、週に40件の請求書、それぞれに複数の明細行がある場合、請求額と計算上の差額は積み重なります。多くの買掛金チームは、支払い後数日から数週間経ってからこれらのエラーを検出します。抽出自体が、請求書を処理した瞬間に知らせてくれたらどうでしょうか?
請求書フィールド抽出の一般的な紹介(指定する列や列名抽出の仕組みを含む)については、請求書フィールドの自動抽出ガイドをご覧ください。
重要なポイント
- 請求書の39%に少なくとも1つのエラーが含まれており、数学的なミスが仕入先に支払われる1ドルあたり約1.5%を静かに削り取っています—100万ドルの支出ごとに年間約15,000ドルに相当します。
- 修正方法は単一の乗算式ですが、数百の明細行にわたって数式列を作成するには誰も持っていない時間がかかるため、ほぼすべての請求書でチェックがスキップされています。
- 数量×単価を計算カラムとして一度定義すると、ImageToTable.aiは抽出が完了した瞬間に数学的な不一致をフラグ付けする一致列をすべての請求書に生成します—スプレッドシートも数式も不要で、未チェックの請求書はもう発生しません。
請求書にない列
請求書の明細行には、ベンダーが記入した列があります。説明、数量、単価、行合計です。APワークフローの基本は、これらの列を抽出してシステムに入力することです。
しかし最も重要な列は、ベンダーが印刷しない列です。それは、数字が合っているかを確認する検証列です。数量×単価が、ベンダーが印刷した行合計と実際に一致するかどうか。そして、一致しない場合(多くのチームが想定するよりも頻繁に発生します)、その差はいくらなのか。
この列は請求書には存在しません。抽出後に、スプレッドシートで手作業で作成されます。誰かがデータをエクスポートし、数式列(=B2*C2)を追加し、すべての行にドラッグして、請求総額と比較する別の列を追加し、不一致をスキャンします。30行の請求書なら、60個の数式セルになります。週30件の請求書なら、1,800セルです。そして、特定の火曜日に誰も時間がなければ、チェックは行われず、過払いがそのまま通ってしまいます。
計算カラムは、その検証列を抽出出力に自動的に組み込みます。計算を一度定義するだけで(列名またはルール形式で)、処理するすべての請求書で、生データとともに検証結果が生成されます。スプレッドシートの数式も、スキップされるチェックもありません。
請求書PDFから抽出するフィールド(ベンダー名、日付、発注書番号、明細行など)を正確に指定する方法については、請求書PDFから特定のフィールドを抽出するガイドをご覧ください。
請求書の計算エラーが発生する仕組みと、チェックされない理由
請求書の明細行エラーは、まれな例外ケースではありません。財務管理協会(IOFM)の業界ベンチマークによると、請求書の約39%に少なくとも1つのエラーが含まれています。Ardent Partnersの2024年調達支払い指標では、組織は総支出の約1.5%を過払いで失っていることが判明しました。これは、100万ドルのサプライヤー支出に対して年間15,000ドルに相当します。
エラーは通常、不正ではなく、ありふれたものです:
- ベンダーが価格表を更新し、新しい単価が適用されたが、請求書の行合計は依然として旧価格を反映している。
- 数量割引が一貫して適用されていない。一部の行には適用され、他の行には適用されず、計算が整合しない。
- 複数ページの請求書で、2ページ目の小計が、3ページ目に表示されている行とは異なる行セットから計算されている。
- 契約期間中に税率が変更され、ベンダーの請求システムが1請求サイクル遅れている。
これらはすべて、単純な数量×単価チェックで検出できます。これらがそのまま通る理由は複雑さではなく、量です。AP担当者が1日に30件の請求書を処理する場合、すべてに数式列を追加するのは持続可能ではありません。チェックは「疑わしい」請求書に限定され、結果的にほとんどすべての請求書でチェックは行われません。
APにおける手動データ入力エラー率の業界標準は、フィールドあたり約3.6%です。つまり、データを入力する人自身も、請求書の内容とは無関係に、不一致の原因となるのです。自動抽出により、この率は1%未満にまで低下します。しかし、抽出だけでは計算検証の問題は解決しません。データがより速く届くようになるだけで、検証は依然として誰かがExcelを開くのを待っています。
ほとんどのAP自動化プラットフォームでは、検証は抽出後の別ステップとして扱われます。そのワークフローは、抽出 → 計算の検証 → 差異のフラグ付け → レビュー担当者へのルーティングです。検証エンジンは抽出と出力の間に位置し、抽出されたデータにビジネスルールを適用します。計算カラムは異なるアプローチを取ります。計算と抽出が単一のパスで行われます。検証カラムは出力の一部であり、別の処理ステージではありません。
抽出の設定:5つのカラム、うち2つは計算カラム
以下は、自動検証を含む請求書の明細行抽出の完全な設定です。3つの生フィールドを抽出し、2つの追加カラムを計算します。
方法1:カラム名(ログイン不要、デモですぐに動作)
これをカラム名フィールドに貼り付けます
単価
請求総額
計算総額(数量 × 単価、小数点以下2桁)
一致(計算総額が請求総額と等しければOK、そうでなければ差額を出力)
5つのカラムです。3つは直接抽出(数量、単価、請求総額)、2つは計算カラムです。AIが文書から値を抽出し、各行の数量に単価を掛け、その結果をベンダーの請求総額と比較します。ベンダーが過大請求した場合は正の数、過少請求の場合は負の数、両者が一致する場合は「OK」が出力されます。
これは、AIが数式を実行しているのではなく、文書について推論しているため機能します。"計算総額(数量 × 単価、小数点以下2桁)"と書くと、AIモデルはカラム名を複合的な指示として読み取ります。数量というラベルのカラムを見つけ、単価というラベルのカラムを見つけ、各行の積を計算し、結果を整形します。セル範囲の定義も、数式構文の学習も、ベンダーや請求書フォーマットごとの設定も一切不要です。
方法2:ルール形式(ログイン必須、よりクリーンなヘッダー、より細かい制御)
列名はクリーンなまま、ルールはJSONで管理
数量、単価、請求総額、計算総額、一致
ルール形式:
{
"数量": "",
"単価": "通貨記号を削除し、小数点以下2桁にする",
"請求総額": "通貨記号を削除し、小数点以下2桁にする",
"計算総額": "この明細行について数量に単価を掛け、小数点以下2桁にする",
"一致": "計算総額が請求総額と等しければOKを出力し、そうでなければ差額を符号付き数値として出力する"
}
ルール形式は列ヘッダーを短く保ちます。これは、出力が固定の列マッピングを持つERPや会計システムに入る場合に重要です。計算ロジックが列名から明確に分離されているため、請求書バッチ全体での保守と再利用が容易になります。ログイン中のユーザーはルールセットをプリセットとして保存し、ベンダーごとの請求書に再入力なしで適用できます。
出力結果の見た目
請求書をアップロードして抽出を実行すると、出力テーブルには5つの列がすべて含まれます:
| 説明 | 数量 | 単価 | 請求総額 | 計算総額 | 一致 |
|---|---|---|---|---|---|
| ウィジェットA | 10 | 12.50 | 125.00 | 125.00 | OK |
| ウィジェットB | 5 | 12.00 | 65.00 | 60.00 | +5.00 |
| サービス料 | 3 | 85.00 | 255.00 | 255.00 | OK |
| 配送料 | 1 | 45.00 | 45.00 | 45.00 | OK |
| ウィジェットC | 20 | 7.50 | 142.50 | 150.00 | -7.50 |
「一致」列により、不一致がすぐに明らかになります。赤は不一致、緑はOKを示します。ウィジェットBは5.00ドル過大請求され、ウィジェットCは7.50ドル過小請求されました。5行の請求書のうち、2行が一致していません。どちらも支払い承認前にベンダーとの確認が必要です。
ここで重要なのは、Excelを開いたり、数式を書いたり、セルをドラッグしたり、目視で不一致を探したりする作業が一切発生しなかったことです。検証は最初から抽出出力の一部として組み込まれていました。
より複雑な請求書の処理
すべての請求書が単純な明細項目であるとは限りません。ここでは、よくある2つの複雑なケースへの対応方法を説明します。
小計を含む複数セクションの請求書
一部の請求書では、明細項目がハードウェア、ソフトウェア、サービスなどのセクションにグループ化され、各セクションに独自の小計があります。標準的な数式ベースのアプローチでは、各セクションの合計範囲を手動で定義する必要があり、その範囲は請求書ごとに異なります。計算カラムを使用すると、セクションが何であるかをAIに指示し、境界を特定させることができます:
セクション検証(セクション小計が印刷されたセクション小計と一致する場合はOK、それ以外の場合は差額を出力)
AIはドキュメントを読み取り、視覚的な構造(見出し、間隔、グループ化)によってセクションの境界を特定し、各セクション内の行のみを集計します。範囲の選択もセル参照も不要です。
複数セクションの請求書では、Precision+を有効にしてください。これは、抽出中にAIに追加の推論ステップを与える手動トグルです。セクションヘッダーが一貫していない場合や、セクションの区切りが明示的なラベルではなくスペースのみで示されている請求書で、モデルがセクションの境界を正しく特定するのに役立ちます。
税額行の検証
請求書に税率が含まれている場合、税金を再計算して比較する計算カラムを追加できます:
これにより、ベンダーの請求システムが割引前に税率を適用する一方で、契約では割引後に適用することが指定されているという一般的なケースを検出できます。単純な行合計チェックでは見逃される、小さくても累積する差異が生じます。
同じ計算カラムのアプローチは給与明細の処理にも有効です — 手取り額、年収換算、実効税率を自動計算した給与明細データの抽出方法を学ぶ。
バッチ処理:1つのルールセットで全ベンダーに対応
AP部門にとって計算カラムの真の価値はバッチ処理にあります。列名とルールを一度定義すれば、あとはどのベンダーからの請求書でもアップロードするだけです。形式が異なっても、列の順序が異なっても、ラベルが異なっても、同じ検証がすべての請求書に適用されます。
毎週のワークフローは次のようになります:
- その週のすべての仕入先請求書を収集します(PDF、スキャン、メール添付、紙の請求書の写真など)。
- 上記の5列ルールセットを使用して、ImageToTable.aiにバッチとしてアップロードします。
- 統合された出力をダウンロードします。各請求書のすべての明細行と、各行の計算総額および一致カラムが含まれる1つのテーブルです。
- 一致カラムをフィルタリングして、「OK」以外のものを確認します。その行がその週の差異レポートになります。
毎週100件の請求書を処理するチームの場合、これにより数式作成と目視確認に費やしていた約2〜3時間が、30秒のフィルタリング操作に置き換わります。節約された時間は、重要な差異の解決に使えます。差異の発見ではなく、解決にです。
今すぐ検証ワークフローをお試しください。 以下のデモは、上記の方法1の列名で動作します。列名を貼り付け、請求書をアップロードすると、出力に計算総額と一致カラムが表示されます。ログインは不要です。
貼り付け例: 数量、単価、請求総額、計算総額(数量×単価、小数点以下2桁)、一致(等しい場合はOK、それ以外は差異を出力)