AIパンチャーでファイルを解析する
この記事では、AIパンチャーとのコネクション作成方法について説明します。
AIパンチャー用のコネクション作成時に使用するアプリケーションは「Document Force」です
AIパンチャーとは
AIパンチャーは、オープン社が販売する、請求書・見積書・契約書などのドキュメントをAIで解析し、データ化できるサービスです。
OCR(文字認識)だけでなく、帳票内の項目を自動で抽出し、構造化データとして利用できます。
AUTORO と連携することで、以下のような業務自動化が可能です。
- PDF請求書から金額・取引先情報を抽出
- 帳票データをスプレッドシートへ自動転記
- 契約書情報を社内システムへ登録
- メール添付ファイルを自動解析
本サービスに関するお問い合わせは、チャットでご連絡いただくか、弊社営業までご連絡いただけますようお願いします。
詳細は以下をご参照ください。
DFAnalyzeDocumentアクション
DFAnalyzeDocumentアクション(Document Forceでドキュメントを解析)は、AIパンチャーへファイルを送信し、ドキュメント解析を実行するアクションです。
PDFや画像ファイルを解析し、帳票内の情報をJSON形式で取得できます。
主な利用シーン
- 請求書の金額・取引先抽出
- 見積書データの取得
- OCR結果の自動処理
- 契約書情報のデータ化
対応ファイル例
- PNG
- JPG
- TIFF
AIパンチャー:事前準備
本記事では、領収書画像をAIパンチャーで解析するワークフローを作成していきます。
まずは、AIパンチャー側で、領収書画像から必要情報を取得できるよう準備しておきます。
本記事では、AIパンチャーの設定詳細は省きます。
アクションの設定方法
本記事では、以下ワークフローの作成例を紹介します。
クラウドストレージ(Google Drive)に保存した領収書画像をAIパンチャーで解析して、解析結果をスプレッドシートへ転記する
事前に、AIパンチャーとのコネクション作成が必要です。
詳しくは、以下記事をご参照ください。
Google Driveのフォルダ内の各領収書画像ファイル毎に、AIパンチャーで解析するために、ListItemsアクションのアウトプットを使って繰り返し処理します。
- ForEachアクション(各要素について繰り返す)を設置します
- 「繰り返すリスト」に、ListItemsアクションのアウトプットを設定します
- 「要素を格納する変数名」に、任意の変数名を設定します。
今回はfileとします。 - 詳細設定を開き、「繰り返し回数を格納する変数名」に、任意の変数名を設定します。
今回はcountとします。
スプレッドシートに書き込む際に、この変数を使用して行数を設定します。
領収書画像ファイルを取得して、AIパンチャーで解析して、必要情報を取得します。
- ForEachアクション内に、GetFileアクション(ファイルを取得)を設置します
- 「ストレージプロバイダ」に、Google Driveのコネクションを設定します
- 「ファイル」に、領収書画像ファイルを指定します。
ForEachアクションで設定した変数 file にファイルパスが格納されているので、${file}で変数値を設定します。
- DFAnalyzeDocumentアクション(Document Forceでドキュメントを解析)を設置します
- 「プロバイダーID」に、AIパンチャー(Document Force)のコネクションを設定します
- 「エンドポイント」に、AIパンチャー上で作成した APIエンドポイントを設定します
- 詳細設定を開き、「解析結果を待機」を有効にします。
このオプションを有効にすると、アクションのアウトプットがAIパンチャーの解析結果になります。
無効の場合は、ドキュメントタイプに紐づくドキュメントIDのみが、アクションのアウトプットになります。 - (任意)「タグ設定」に、AIパンチャー上で作成したプロジェクトを設定します。
ピッカーアイコンクリックし、設定済みの一覧から選択することも可能です。
AIパンチャーからの戻り値はJSON形式ですが、含まれる情報が多く「解析結果をワークフロー内で利用したい」の目的には扱いにくい形式になっています。
便利アクション「AIパンチャーのアウトプットを扱いやすいJSON形式に整形する」を利用すると、 { “解析項目名”:”値” , “解析項目名”:”値” } というアウトプットに整形できるので、解析結果を利用しやすくなります。
便利アクション「AIパンチャーのアウトプットを扱いやすいJSON形式に整形する」が利用できない場合は、この記事をご参照ください。
- CallCustomActionアクション(カスタムアクションを実行)を設置し、便利アクション「AIパンチャーのアウトプットを扱いやすいJSON形式に整形する」を設定します
- 「_json」に、DFAnalyzeDocumentアクションのアウトプットを設定します
- StoreValueアクション(変数に保存)を設置します
- 「変数名」に、任意の変数名を設定します。
今回はitemとします。 - 「値」に、便利アクション「AIパンチャーのアウトプットを扱いやすいJSON形式に整形する」のアウトプットを設定します
解析結果をスプレッドシートに転記します。
各列の値は以下を設定します。
A列:画像URL ${file}B列:ショップ名 ${item.ショップ名}
B列:金額 ${item.金額}
B列:日付 ${item.日付}
B列:住所 ${item.住所}
1行分のデータをリストでまとめておくと、一回の書き込み処理で、1行分のデータをまとめて書き込めます。
- CreateListアクション(リストを作成)を設置します
- アイコンをクリックし、「リストビルダー」にて、1行分のデータを作成します
- UpdateCellsアクション(セルの値を更新)を設置します
- 「Spreadsheet」に、GetSpreadsheetアクションのアウトプットを設定します
- 「範囲」に、A1記法でシートとセルを指定します。
今回は、ForEachアクションで設定したの繰り返し回数の変数 count を利用して、シート1!A${count+2}とします。 - 「値」に、CreateListアクションのアウトプットを設定します
# 既存のスプレッドシートを取得
+get_spreadsheet_1:
action>: GetSpreadsheet
display_name>: '既存のスプレッドシートを取得'
provider: ''
spreadsheet_id: ''
private: false
meta:
display:
action:
disabled: false
# アイテム一覧を取得
+list_items_1:
action>: ListItems
display_name>: 'アイテム一覧を取得'
provider: ''
directory: ''
includeFileId: false
limit: 1000
private: false
meta:
display:
action:
disabled: false
# 各要素について繰り返す
+for_each_1:
for_each>:
file: +list_items_1
withIndex: count
private: false
display_name>: '各要素について繰り返す'
meta:
action:
disabled: false
_do:
# ファイルを取得
+get_file_1:
action>: GetFile
display_name>: 'ファイルを取得'
provider: ''
filename: ${file}
private: false
meta:
display:
action:
disabled: false
# Document Forceでドキュメントを解析
+d_f_analyze_document_1:
action>: DFAnalyzeDocument
display_name>: 'Document Forceでドキュメントを解析'
provider_id: ''
endpoint: ''
file: +get_file_1
wait_for_result: true
private: false
meta:
display:
action:
disabled: false
# AIパンチャーのアウトプットを扱いやすいJSON形式に整形する
+call_custom_action_2:
action>: CallCustomAction
display_name>: 'AIパンチャーのアウトプットを扱いやすいJSON形式に整形する'
id: ca_a43237bc76f82679a02b
params:
_json: +d_f_analyze_document_1
meta:
version: '2026-06-30T02:21:03.000Z'
interface:
params:
_json: Text
output: Anything
pickers:
action:
disabled: false
display:
id:
type: chip
label: 'AIパンチャーのアウトプットを扱いやすいJSON形式に整形する'
icon: build
imageUrl: 'https://storage.googleapis.com/robotic-crowd-production/psohd9td1xsi5c4leh3cih47llvf?GoogleAccessId=strage-object-creater%40robotic-crowd.iam.gserviceaccount.com&Expires=1782791337&Signature=xoWyMnGvBo2BK1HvIqK1S8hJSvDmmODRweulS5LQOs0NDLVy2%2FH9dHiSjzLlDfxVNjghtyARc6oEAmVBgFDzavX4W%2BhdTKbIEShMA2sSBeWMRR5hFbhp%2BHz6mndKZJLg%2B0bFqmw%2FAJ03N4gyZ6TWO6RXzAOVM51D7Wc0vYmubiI5ZxnaB7T3QQnzw%2BqLIW6cVoFvXr1xbAxwiDAPw%2BwCuAzwXbVrSfZhGiocpSlOkr2kMiMKcbE6xuV5EukFAeyvFPBqKtP8tN51dy0goNG82SoLh%2BOCl3HJ5XkSvUG9KZgBPx8IsUGo6nVQgYT4GWwIrpEQeBGIM7Ahqq4CT6%2BUpg%3D%3D&response-content-disposition=inline%3B+filename%3D%22icon.png%22%3B+filename%2A%3DUTF-8%27%27icon.png&response-content-type=image%2Fpng'
color: '#AD1457'
# 変数に保存
+store_value_1:
action>: StoreValue
display_name>: '変数に保存'
key: item
value: +call_custom_action_2
setIfNotDefined: false
private: false
meta:
action:
disabled: false
# リストを作成
+create_list_1:
action>: CreateList
display_name>: 'リストを作成'
items: ["${file}","${item.ショップ名}","${item.金額}","${item.日付}","${item.住所}"]
private: false
meta:
action:
disabled: false
# セルの値を更新
+update_cells_1:
action>: UpdateCells
display_name>: 'セルの値を更新'
spreadsheet: +get_spreadsheet_1
range: 'シート1!A${count+2}'
values: +create_list_1
private: false
meta:
action:
disabled: false















