経理・バックオフィス業務の中で、最も手作業が残りやすく時間を圧迫しているのが「領収書・請求書のデータ入力と勘定科目の推論(仕訳)」作業です。従来のOCRツールでは、領収書のレイアウト変更に弱かったり、手書き文字や傾いた画像・影が入った画像の認識率が低いという課題がありました。
本記事では、オープンソースの自動化ツールn8nと、高度な画像処理(VLM)・自然言語処理が可能な生成AI API(OpenAI / Anthropic Claude)を連携させ、画像・PDFの受領から仕訳推論、構造化データ出力までを全自動化する最強のワークフローの構築方法を解説します。
1. 従来のOCR+確定ルールとの違い
従来のOCRツールやルールベースの仕訳と、生成AIを活用したマルチモーダル解析の違いを比較します。
| 項目 | 従来のOCR+ルール仕訳 | n8n × 生成AI(LLM/VLM) |
|---|---|---|
| 非定型フォーマット対応 | 事前にテンプレート位置指定が必要。レイアウトが変わると誤読。 | プロンプトと文脈で理解するため、どんなレイアウトでも柔軟に解析。 |
| 勘定科目の自動推論 | 取引先名キーパーソンなどの完全一致ルールが必要。 | 品目(例:「タクシー代」「カフェ代」「サーバー代」)から勘定科目を高度に推論。 |
| インボイス適格判定 | T+13桁の文字列検出のみで判定ミスが多い。 | 登録番号の有無、税率別(8%/10%)の計算整合性を同時に評価・検知。 |
| 導入・運用コスト | 高額なOCR SaaSライセンス費用が発生。 | セルフホスト可能なn8n + 従量課金API(1枚数円以下)で超低コスト。 |
2. ワークフロー全体の構成図と処理フロー
今回n8n上で構築するパイプラインは以下のステップで実行されます。
- Triggers (トリガー): Googleドライブの「未処理領収書」フォルダに新しいファイル(画像/PDF)がアップロードされたことを検知。
- Read Binary Data (データ読み込み): ファイルを取得し、Base64形式のエンコードデータとして保持。
- OpenAI / Claude Node (AI推論): マルチモーダルモデルに画像データを渡し、JSON形式で必要な項目を抽出・推論。
- JSON Parse & Validations (構造化検証): AIが返したデータフォーマットのチェックおよび計算チェック。
- Google Sheets / Accounting System (データ保存): 解析済みのデータを一覧シートまたは会計SaaSへ書き出し。
3. n8nノードの設定とAIプロンプト設計
プロンプト設計のポイント
生成AIに領収書を読み取らせる場合、単に「テキストを読み取って」と指示するのではなく、厳密なJSON Schemaを指定することが成功の鍵です。出力揺れを防ぎ、後続のノードで確実に処理できるようにします。
【System Prompt】
あなたは熟練した公認会計士・経理エキスパートです。
提供された領収書または請求書の画像・PDFから必要な情報を抽出し、指定されたJSONフォーマットのみで出力してください。Markdown表記や解説は一切不要です。
【JSONフォーマット要件】
{
"issue_date": "YYYY-MM-DD",
"vendor_name": "発行元事業者名",
"total_amount": 10000,
"tax_10_amount": 9091,
"tax_8_amount": 0,
"invoice_number": "T1234567890123", // なければ null
"account_title": "旅費交通費 | 会議費 | 消耗品費 | 通信費 のいずれかを推論",
"description": "品目や用途のサマリー",
"confidence_score": 0.95 // 読み取りの確信度(0.0 - 1.0)
}
n8nノード設定例(Code / OpenAI Node)
n8nの「OpenAI Node」または「HTTP Request Node」を使用し、`gpt-4o` などのモデルに画像Base64を渡して推論を行います。
// n8n HTTP Request ノードの Body 例(OpenAI Chat Completions API)
{
"model": "gpt-4o",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "添付の領収書を解析し、指定のJSONで抽出してください。"
},
{
"type": "image_url",
"image_url": {
"url": "data:image/jpeg;base64,{{ $json.data }}"
}
}
]
}
],
"response_format": { "type": "json_object" }
}
4. セキュリティと実務運用の注意点
企業の機密情報や個人情報が含まれる領収書・請求書を生成AIで扱う際には、セキュリティ面での配慮が不可欠です。
実務におけるセキュリティ対策チェックリスト:
- データの二次学習オフ(オプトアウト): API経由(OpenAI API / Anthropic API等)で送信されたデータは、デフォルトでモデルの学習に使用されませんが、念のため組織設定(Enterprise / Data Privacy)を確認・オプトアウト設定を行ってください。
- 画像前処理と難読化: 必要に応じて、クレジットカード番号の下4桁以外や個人の携帯電話番号など、不要なPII(個人特定情報)はマスキングしてから送信するロジックをn8n上に挟むことを検討します。
- 確信度スコアによる二段階チェック: AIの返した `confidence_score` が0.8未満の場合、自動承認せず「要手動確認フラグ」を立ててSlack等のチャンネルに通知する運用にすることで、誤入力を未然に防ぎます。
5. まとめ
n8nと生成AIを組み合わせることで、従来のOCR SaaSのような「高額な月額基本料金」や「固定テンプレートの設定作業」から完全に解放されます。非定型の領収書であっても高精度の仕訳データへと変換できるようになり、経理担当者の手入力時間を90%以上削減することが可能です。ぜひ自社インフラに組み込んでみてください。

