介護施設が預かる入居者の預り金で買った日用品のレシートを読み取り、出納の記録と照合して、入居者別の月次の報告を家族向けに作る
入居者の預り金で買った日用品のレシートを読み取り、入居者ごとの出納の記録と1件ずつ照らし合わせます。食い違いのある記録だけを事務員に回し、照合の済んだ入居者から、家族へ送る月次の報告の下書きを作ります。
- 生成AI
- ChatGPT/Claude
- AIサービス
- Azure AI/Google Document AI
- 連携・自動化
- Google Apps Script/Python
- 対象業界
- 介護/医療
- 対象部門
- 経理/総務
- 対象業務
- 内容確認・チェック/書類作成
- 主な課題
- 人手が足りない/書類作成に時間がかかる/確認ミスが多い
- AIで行う処理
- 読み取り(OCR)
- 主な効果
- 入力漏れ削減/品質標準化/工数削減
- 導入難易度
- ★★☆☆☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 買い物をした職員が、レシートを事務室に出し、出納の記録の表に日付・品目・金額を書く
- 事務員が、レシートを入居者ごとの封筒に入れる。まとめ買いのレシートは、コピーして関係する入居者の封筒に入れる
- 月末に、事務員が入居者ごとに封筒を開け、レシートと出納の記録を1枚ずつ突き合わせる
- 金額が違う、記録が無い、レシートが無いものを、買い物をした職員に聞いて直す
- 入居者ごとに、入金・出金の明細・残高を報告の様式に写す
- レシートをコピーして報告に付け、施設長の確認を受けて家族へ送る
- 人買い物をした職員が、出納の記録を付け、レシートを事務室に出す(いまと同じ)
- 人事務員が、1日の終わりにその日のレシートを複合機でまとめてスキャンし、受付のフォルダに保存する
- 自動保存をきっかけに、Google Document AI の経費の読み取り(Expense Parser)がレシートを読む
- 自動日付・店名・品目・金額・合計を取り出し、読み取りの信頼度と一緒に残す
- 自動Claude API が、品目の名前を「おむつ・衛生用品」「日用品」「衣類」「嗜好品」などの区分にそろえる
- 自動プログラムが、出納の記録の行とレシートを、日付と金額で組にする
- 自動組にできないもの、金額が違うもの、まとめ買いで合計が合わないものに印を付ける
- 人事務員が、印の付いたものだけを、レシートの画像と並べて確かめ、職員に聞いて直す
- 自動照合が済んだ入居者から、入金・出金の明細・残高の報告の下書きと、家族への添え状の下書きを作る
- 人事務員と施設長が下書きを確かめ、家族へ送る
各工程の詳しい説明を読む
- 買い物をした職員が、レシートを事務室に出し、出納の記録の表に日付・品目・金額を書く
- 事務員が、レシートを入居者ごとの封筒に入れる。まとめ買いのレシートは、コピーして関係する入居者の封筒に入れる
- 月末に、事務員が入居者ごとに封筒を開け、レシートと出納の記録を1枚ずつ突き合わせる
- 金額が違う、記録が無い、レシートが無いものを、買い物をした職員に聞いて直す
- 入居者ごとに、入金・出金の明細・残高を報告の様式に写す
- レシートをコピーして報告に付け、施設長の確認を受けて家族へ送る
(a)突き合わせに時間がかかる。 3番目は、80名分の封筒を開け、1名あたり10枚前後のレシートを記録と見比べる作業です。レシートの小さな文字と、表計算の行を目で往復します。
(b)付け漏れと写し違いが残る。 夜勤明けにまとめて記録を書いた職員が、1件を書き忘れる。「1,280円」を「1,820円」と書く。月末に見つけても、買い物をした職員がもう覚えていないことがあります。
(c)まとめ買いの分け方が分からなくなる。 3名分をまとめて買ったレシートの合計と、3名の記録の合計が合わないとき、誰の分がいくらだったかは、レシートの品目からは決まりません。 買い物をした職員に聞くしかありません。
(d)報告づくりが月初の数日に集中する。 照合が終わらないと報告が作れず、報告は10日までに送らなければなりません。事務員2名は、月初の数日を照合と報告づくりにほぼ使い切ります。 その間、入退居の手続きや請求の仕事が後回しになります。
- 【人】 買い物をした職員が、出納の記録を付け、レシートを事務室に出す(いまと同じ)
- 【人】 事務員が、1日の終わりにその日のレシートを複合機でまとめてスキャンし、受付のフォルダに保存する
- 【自動】 保存をきっかけに、Google Document AI の経費の読み取り(Expense Parser)がレシートを読む
- 【自動】 日付・店名・品目・金額・合計を取り出し、読み取りの信頼度と一緒に残す
- 【自動】 Claude API が、品目の名前を「おむつ・衛生用品」「日用品」「衣類」「嗜好品」などの区分にそろえる
- 【自動】 プログラムが、出納の記録の行とレシートを、日付と金額で組にする
- 【自動】 組にできないもの、金額が違うもの、まとめ買いで合計が合わないものに印を付ける
- 【人】 事務員が、印の付いたものだけを、レシートの画像と並べて確かめ、職員に聞いて直す
- 【自動】 照合が済んだ入居者から、入金・出金の明細・残高の報告の下書きと、家族への添え状の下書きを作る
- 【人】 事務員と施設長が下書きを確かめ、家族へ送る
8番目が、この設計の分かれ目です。事務員が見るのは、印の付いたものだけです。 組にできたレシートは一覧で件数を見るだけにし、組にできなかったものだけを、画像を開いて確かめます。 全部のレシートを見直す設計にすると、時間はほとんど減りません。
2番目を「毎日」にしているのも意図してのことです。 月末にまとめてスキャンすると、食い違いが見つかるのが月末になり、買い物をした職員がもう覚えていません。 毎日読み取っておけば、翌日には職員に聞けます。
02今回想定するシステム構成
レシート(紙) │ 1日の終わりに複合機でまとめてスキャン ▼【トリガー】Google ドライブの受付のフォルダへの保存 Google Apps Script ▼ Google Document AI(Expense Parser) │ 日付・店名・品目・金額・合計、信頼度 ▼ Claude API ── 品目の名前を区分にそろえる ▼ Google Apps Script ── 出納の記録(入居者ごとの表)と日付・金額で組にする │ ① 組にできた ② 記録が無い ③ レシートが無い │ ④ 金額が違う ⑤ まとめ買いの合計が合わない ▼ 【人が印の付いたものだけ確認】── 職員に聞いて記録を直す ▼ Claude API ── 入居者ごとの報告の下書きと添え状の下書き ▼ 【施設長の確認】→ 家族へ郵送またはメール
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| OCR | Google Document AI(Expense Parser) | Azure AI Document Intelligence(レシートモデル) |
| 生成AI | Claude API(品目の区分のそろえ、報告と添え状の下書き) | OpenAI API |
| 連携 | Google Apps Script(フォルダの見張り、読み取りの呼び出し、出納の記録との照合) | Python |
| 保管 | Google ドライブ(受付・処理済み・確認待ちのフォルダ)とスプレッドシート | Microsoft SharePoint |
出納の記録と介護ソフトは、新しく足すものではありません。 出納の記録は、いまの入居者ごとの表をスプレッドシートにしたものを使い、この構成からは照合の印を別の列に書くだけで、金額や品目を書き換えません。 介護ソフトからは入居者の名前と家族の送り先を読むだけです。
土台になるのは、Google Document AI の Expense Parser です。 経費の書類から、日付、店名(supplier_name)、合計(total_amount)、通貨などの値を取り出す、事前に学習済みの読み取りの仕組みで、一般提供(GA)の段階にあります。 明細の行は line_item として、品名(line_item/description)と金額(line_item/amount)が返ります。
日本語に対応しているのは、版によります。 公式の一覧では、pretrained-expense-v1.4.2-2024-09-12(Stable、GA)の追加の対応言語に日本語(ja)が載っています。処理の際は、この版を指定して呼び出します。 既定の版のまま呼ぶと、日本語のレシートの品名が十分に取れないことがあります。
1回に処理できるのは10ページまでです。 同期の呼び出しも、まとめて処理する呼び出しも、最大のページ数は10です。1日分のレシートを1つのPDFにまとめてスキャンすると、10枚を超えます。 スキャンの設定で1枚ずつのファイルに分けるか、Apps Script で分けてから送ります。
処理する地域は、呼び出しのときに指定します。 Document AI で指定できる地域は、複数地域の us・eu と、シンガポールなどの単一地域で、日本の地域はありません。 レシートには入居者の名前が載りませんが、施設の店名と日付が並ぶ画像を国外で処理することになるので、第13章で扱います。
03どうやって実装するのか
処理の起点を決める
受付のフォルダにスキャンしたファイルが保存されたことを起点にします。 Apps Script の時間主導のトリガーで、15分ごとにフォルダを見て、新しいファイルがあれば読み取りに回します。事務員が1日の終わりにスキャンするので、その日のうちに照合の結果が出ます。
処理が終わったファイルは、処理済みのフォルダに移します。 移すのは読み取りと照合が成功したときだけにします。受付のフォルダに残っている数が、そのまま未処理の数になります。
月末の報告づくりは、別のトリガーにします。 毎月1日の朝に、前月分の照合が済んだ入居者を数え、印の残っている入居者の一覧を事務員に知らせます。 報告の下書きは、印が全部消えた入居者から順に作ります。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| レシートの画像 | スキャンしたPDFまたは画像。スキャンした日 | 受付のフォルダ |
| 読み取り結果 | 日付・店名・合計・明細の品名と金額、信頼度 | Google Document AI |
| 出納の記録 | 入居者ごとの、日付・品目・金額・買い物をした職員・入金・残高 | 入居者ごとの表(スプレッドシート) |
| 入居者の情報 | 入居者番号、名前、家族の送り先、報告の送り方(郵送/メール) | 介護ソフトの書き出し |
| 品目の区分の表 | 「おむつ・衛生用品」「日用品」「衣類」「嗜好品」「医薬品」「その他」 | 事務室で用意する表 |
質を決めるのは、3行目の出納の記録の付け方です。 まとめ買いのとき、記録に「まとめ買い」の印と、同じ買い物の他の入居者が分かる番号が無いと、 レシートの合計と記録を組にできません。記録の表に「買い物の番号」の列を足し、まとめ買いのときは同じ番号を付けることが、最初の準備作業です。
レシートには入居者の名前がありません。 そのため、どの入居者の分かは、出納の記録の側から決めます。 レシートは日付と金額で記録に結び付け、入居者は記録に書かれた入居者とします。
データの取得方法を決める
読み取りは、Apps Script からレシートの画像を Document AI の Expense Parser に送るだけです。呼び出すときに、日本語に対応した版を指定します。
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 日付 | receipt_date(正規化された日付) | 出納の記録の日付との組 |
| 店名 | supplier_name | 報告の明細と、記録の品目との確かめ |
| 合計 | total_amount(正規化された金額) | 出納の記録の金額との組 |
| 明細の品名と金額 | line_item/description、line_item/amount | 品目の区分と、まとめ買いの確かめ |
| 信頼度 | 各値の信頼度 | 読み取りに自信があるか |
日付と金額は、正規化された値を使います。 公式の一覧では、receipt_date と total_amount などが正規化の対象の項目に挙がっています。「2026/10/05」「26.10.5」「10月5日」のような書き方の違いを、こちらでそろえずに済みます。
出納の記録は、スプレッドシートを読むだけで足ります。 照合の順は、日付が先、金額が後です。 金額から先に引くと、同じ金額の別の日の買い物と組になってしまいます。
AIへ渡す前に整形する
- 形式の確認 … PDFか画像であることを確かめ、それ以外は事務員に戻します
- ファイルを分ける … 1回の処理は10ページまでなので、1日分をまとめたPDFは1枚ずつに分けます
- 1枚に複数のレシートが写っていないかの確認 … 小さなレシートを並べて1枚にスキャンしたものは、事務員に戻して撮り直してもらいます
- 向きと濃さの確認 … 感熱紙のレシートは時間がたつと薄くなります。薄いものはスキャンの濃さを上げて取り直します
- 手書きの領収書の振り分け … 個人商店の手書きの領収書は、読み取りの後に
handwrittenの印を付け、事務員が記録と組にします - 重複の検知 … 同じ店・同じ日付・同じ合計のレシートが既にあれば、重複の疑いとして印を付けます
4番目を軽く見ないでください。 感熱紙のレシートは、月末まで封筒に入れておくと文字が薄くなります。毎日スキャンする運用にしているのは、この理由もあります。
5番目は、読めるかどうかではなく、照合に使えるかどうかの振り分けです。 Expense Parser の対応言語の一覧では、日本語は手書きにも対応とされています。ただ、手書きの領収書は品名が「品代」とだけ書かれ、明細の行が無いことがほとんどです。 合計と日付は読めても、何を買ったかが分からないので、報告の明細にそのまま載せられません。件数が少ないので、買い物をした職員に品目を聞いて、事務員が記録と組にするほうが確実です。
6番目の重複は、スキャンのやり直しで起きます。 薄くて取り直したレシートが、前のファイルと一緒に受付のフォルダに残ると、同じ買い物が2回分として照合されます。取り直したときは、前のファイルを事務員が消すのではなく、duplicate の印で照合から外します。 どのファイルを残したかが、後から分かるようにするためです。
AIに処理させる
させるのは2つだけです。品目の名前を区分にそろえることと、照合が済んだあとの報告の下書きを作ることです。 レシートと記録の組み合わせは、Apps Script の決まった規則で行います。
| させること | そろえ方 | 判断できないときの扱い |
|---|---|---|
| 品目の区分 | レシートの品名を、区分の表のどれかに当てはめる | 当てはまらなければ other |
| 報告の明細の言葉 | 「ティッシュ5P」のような略称を、家族が読める言葉にする | 略称のまま残し raw_kept |
| 報告の添え状の下書き | 照合が済んだ明細と残高だけをもとに、決まった構成で書く | 明細に無いことは書かない |
右端の列が、人の手間を減らす場所です。 略称が読めないときに、AIがそれらしい商品名を作ると、家族への報告に、実際には買っていない品の名前が載ります。 読めない略称はそのまま残します。
| させないこと | 理由 |
|---|---|
| まとめ買いの分け方の決定 | 誰の分かは買い物をした職員しか知らない |
| 出納の記録の金額の直し | 記録とレシートが違うことを、人が確かめる |
| 預り金の使い道が適切かの判断 | 入居者と家族の意向、施設の規程で決まる |
| 入居者の体調や生活の様子の記述 | 報告はお金の使い道だけ。様子は別の報告で |
| 不正の疑いの判断 | 多くは付け漏れと写し違い。事情を聞くのは人 |
4行目がいちばん起きやすい失敗です。 「おむつの購入が増えています」と明細から読み取って、「排せつの状態が変わったようです」と書き足すことがあります。 家族にとっては重い一文で、しかも根拠がありません。添え状に書くのは、明細と残高の事実だけにします。
指示内容を固定する
品目の区分のそろえと、報告の下書きは、別の呼び出しにします。ここでは報告の下書きの指示を示します。
あなたは介護施設の事務員として、入居者の家族へ送る預り金の月次の報告の下書きを作る立場です。
下に渡す照合済みの明細と残高だけを使って書いてください。推測で書き足さないでください。
【作るもの】
1. statement …… 出金の明細の表。日付・店名・品目(家族が読める言葉)・区分・金額
2. summary …… 前月末の残高、当月の入金、当月の出金の合計、当月末の残高
3. cover_letter …… 添え状。次の構成で、400字以内
- あいさつ(1文)
- 当月の入金と出金の合計、月末の残高
- 区分ごとの出金の合計(多い順に3つまで)
- 問い合わせ先(施設の事務室)
【厳守事項】
- 金額は、渡した明細と残高の値をそのまま使ってください。計算し直さないでください。
- 品目の略称が読めないときは、略称のまま書いてください。商品名を作らないでください。
- 入居者の体調、生活の様子、介護の内容には触れないでください。
購入の傾向から体調や状態を推し量る文を書かないでください。
- 「〜が増えています」「〜をおすすめします」のような評価や提案を書かないでください。
- 残高が少ないことへの入金のお願いは、【入金のお願いの有無】が yes のときだけ、
決まった一文「次回のご入金をご検討いただけますと幸いです。」を加えてください。
- 入居者と家族の名前は、渡した値をそのまま使ってください。
【入居者】{resident_name} 【送り先】{family_name}
【照合済みの明細】{matched_lines}
【残高】{balance}
【入金のお願いの有無】{deposit_request}
「推し量る文を書かない」を2通りの言い方で書いているのは、1つでは止まらないからです。 体調に触れないと書いても、「おむつの区分が先月より多くなりました」のような、事実のようで含みのある文を書きます。評価や提案を禁じる一文を足して、ようやく事実だけになります。
入金のお願いを決まった一文にしているのも同じ理由です。 AIに書かせると、残高の少なさを強く書きすぎたり、家族の負担に触れたりします。お願いをするかどうかは事務員が決め、文面は固定します。
出力形式を固定する
レシートの読み取りと照合の結果は、レシート1枚ごとに次の形で残します。
{
"receipt_id": "",
"scanned_on": "",
"receipt_date": "",
"supplier_name": "",
"total_amount": 0,
"confidence": 0,
"lines": [
{ "description_raw": "", "description": "", "category": "", "amount": 0 }
],
"match": {
"status": "matched | no_record | amount_diff | bulk_mismatch | duplicate | handwritten",
"purchase_no": "",
"resident_ids": [],
"ledger_rows": []
}
}
照合のプログラムは、出納の記録の側にも印を付けます。 レシートと組にならなかった記録の行には no_receipt を付けます。
| 印 | 付く条件 |
|---|---|
matched | 同じ日付・同じ金額の記録の行と組になった |
no_record | レシートに組になる記録が無い(付け漏れの疑い) |
no_receipt | 記録に組になるレシートが無い(なくし・まとめ買いの誤り) |
amount_diff | 日付と店は合うが、金額が違う(写し違いの疑い) |
bulk_mismatch | 同じ買い物の番号の記録の合計と、レシートの合計が違う |
duplicate | 同じレシートが二度スキャンされた疑い |
handwritten | 手書きの領収書で、読み取りの対象外 |
1つ目の理由は、レシートと記録の両方の側から抜けを見られることです。 レシートの側からは付け漏れが、記録の側からはレシートのなくしが見えます。片方の側だけを見ると、どちらかの抜けが見えません。
2つ目は、構造化出力で形が崩れないことです。 品目の区分のそろえは、Claude API の構造化出力で、category を区分の表の値に限ったスキーマを渡して返させます。区分の表に無い値が返ってこないので、区分ごとの合計がずれません。
3つ目は、description_raw と description を分けて持つことです。 報告にはそろえた言葉を載せ、元の略称も残すので、家族から問い合わせが来たときにレシートの文字と突き合わせられます。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 受付のフォルダ(Google ドライブ) | Apps Script の時間主導のトリガー | 新しいファイルを見つける |
| Google Document AI | API呼び出し | 日付・店名・品目・金額・合計、信頼度 |
| Claude API | API呼び出し | 品目の区分のそろえ、報告と添え状の下書き |
| 出納の記録(スプレッドシート) | Apps Script の読み書き | 記録を読み、照合の印を別の列に書く |
| 介護ソフト | 書き出したファイルの読み取り | 入居者の名前と家族の送り先 |
出納の記録の金額と品目の列には書き込みません。 照合の印は別の列に書き、記録を直すのは、職員に確かめたうえで事務員が行います。 記録を自動で直すと、写し違いと読み違いの区別が残りません。
家族への送付も、この構成からは行いません。 下書きを報告の様式に流し込むところまでで、送るのは施設長の確認のあと、事務員が行います。 メールで送る家族の宛先は、介護ソフトの値を毎月読み直し、前月の宛先を使い回しません。
人が確認する
人が見るのは、印が matched 以外のものだけです。 matched のレシートは、入居者ごとの件数を一覧で見るだけにします。
no_recordとno_receiptを先に見る … 付け漏れとレシートのなくしです。買い物をした職員に、翌日のうちに聞きますamount_diffを見る … レシートの画像を開き、記録の金額と見比べます。写し違いなら記録を直し、直した理由を残しますbulk_mismatchを見る … 同じ買い物の番号の記録を並べ、誰の分がいくらだったかを職員に確かめて記録を直します- 報告の下書きを確かめる … 明細と残高が記録と合っているか、添え状に事実以外のことが書かれていないかを見ます
- 施設長が確かめる … 残高の大きな動きと、家族からの問い合わせが過去にあった入居者を重点に見ます
1番目を月末まで待たないでください。 毎日読み取っているので、食い違いは翌日には分かります。 職員の記憶が新しいうちに聞けば、多くはその場で片づきます。
4番目の添え状は、必ず目で読みます。 事実以外の一文が混ざっていないかは、プログラムでは確かめきれません。
例外に対処する
| 起きること | 対応 |
|---|---|
| 1枚に複数のレシートが写っている | 事務員に戻し、1枚ずつスキャンし直す |
| 感熱紙が薄くて読めない | 信頼度が低ければ人へ。スキャンの濃さを上げて取り直す |
| 手書きの領収書 | handwritten として、事務員が手で記録と組にする |
| 1日分が10ページを超えるPDF | 1回の処理は10ページまで。Apps Script で分けてから送る |
| 返品・取り消しのレシート | 合計がマイナスのものは、元のレシートと組にして人へ |
| 入居者本人が現金で買ったもの | 預り金からの出金でなければ照合の対象外。記録に区分を付ける |
| 同じレシートが二度スキャンされた | duplicate として、後のものを処理済みにしない |
| 読み取りの API が応答しない | 受付のフォルダに残す。処理済みへ移すのは成功時だけ |
上から3行目までが大半を占めます。 どれもAIの問題ではなく、スキャンの仕方とレシートの保管の問題です。 毎日スキャンする運用と、1枚ずつ読み取らせる設定のほうが、読み取りの工夫より効きます。
記録を残す
- 元のレシートの画像と、スキャンした日
- Document AI が返した JSON の全文(値、明細、信頼度)
- 照合の結果(
match)と、そのときの出納の記録の内容 - 事務員が記録を直した記録 … どの行を、何から何に、誰に確かめて直したか
- 報告の下書きと、施設長が確かめて送った版
- 家族からの問い合わせと、そのとき示したレシート
4つ目は、預り金の管理そのものの記録です。 記録の直しが多い職員や時期が分かれば、付け方の手順を見直す材料になります。
最後の行は、報告の書き方を直す材料になります。 同じ種類の問い合わせが続くなら、明細の言葉のそろえ方か、区分の分け方に分かりにくさがあります。
04実装レベルの3段階
最小構成では、80名分はさばけません。 1枚ずつコンソールで読ませるので、確かめるための段階です。 半自動化で、レシートを読む時間は無くなります。 ただし、記録との見比べと報告の様式への写しは手作業で残ります。本格構成で照合と報告の下書きも自動になり、この段階が本記事の想定です。 差が大きいのは、報告の様式に明細を写す作業が、入居者ごとの手作業だからです。 段階を飛ばさないでください。 半自動化の表を1か月見ると、読めない店のレシートと、まとめ買いの記録の付け方の乱れが先に分かります。そこを直してから本格構成に進むほうが、印の付く件数が減ります。
05工数削減シミュレーション
導入後 80件 × 9分 ÷ 60 = 12 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 入居者や家族から日用品の購入のための預り金を受け、職員が代わりに買い物をしている有料老人ホーム・特別養護老人ホーム・グループホームなど。入居者ごとの出納の記録を表計算で付けていて、月末にレシートと突き合わせて家族への報告を作っている場合。入居者が数十名を超え、月末の突き合わせが事務員の残業になっている場合。レシートをスキャンしてクラウドのフォルダに置ける場合。
- 預り金を扱わず、日用品の費用を利用料と一緒に請求している施設。入居者が十数名で、レシートが月に数十枚にとどまる場合。出納の記録を紙の帳面だけで付けていて、データとして取り出せない場合。なお、預り金の管理の方法が規程と契約に合っているかの判断、不正の有無の判断、家族への説明の内容の決定は、この構成では代替できません。
07最小構成で試す方法
- 先月分のレシートから、入居者5名分(まとめ買いがある人、レシートの多い人を入れる)を選ぶ
- その5名の出納の記録と、当時の照合で見つかった食い違いを用意する
- レシートを1枚ずつスキャンし、Document AI のコンソールで Expense Parser に読ませる(日本語に対応した版を選ぶ)
- 読み取った日付・店名・合計を表に並べ、出納の記録の表と日付・金額で並べ替えて見比べる
- 当時見つけた食い違いが、表の上で見えるかを確かめる
5名分は必ずやってください。 仕組みを組む前に、「施設の近くの店のレシートが読めるのか」を確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 当時見つけた食い違いが、表の上でも見える | フォルダの見張りと照合のプログラムに進む |
| 品名の略称が多く、明細が読みにくい | 区分のそろえに生成AIを足す。構成は有効 |
| 薄いレシートが多く、合計が読めない | スキャンの時期と濃さが先。 毎日スキャンにする |
3行目が出ることは珍しくありません。 失敗ではなく、月末の突き合わせに時間がかかっていた理由が1つ分かったということです。 1週間だけ毎日スキャンする運用に変え、同じ5名で読み取りがどこまで変わるかを見てください。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 日本語のレシートの品名が取れない | 日本語に対応した版(v1.4.2)を指定して呼ぶ |
まとめ買いのレシートが全部 no_record になる | 出納の記録に買い物の番号を付け、番号ごとの合計で組にする |
| AI がまとめ買いを入居者に分けてしまう | 分け方は記録のとおり。 AI に分けさせない |
| 感熱紙が薄くて読めない | 月末にまとめず、毎日スキャンする |
| 1日分のPDFが処理できない | 1回の処理は10ページまで。1枚ずつに分ける |
| 略称から存在しない商品名を作る | 読めない略称はそのまま残す |
| 添え状に体調や様子の推測が混ざる | 評価・提案・推し量る文を禁じ、必ず目で読む |
| 照合の印を見て記録を自動で直したくなる | 記録の列には書き込まない。直すのは事務員 |
| 手書きの領収書に品目が書かれていない | handwritten の印で振り分け、職員に品目を聞いて組にする |
| レシートの画像が国外で処理されることを決めていない | 日本の地域は無い。導入前に個人情報の取扱いの規程と照らす |
| 返品のレシートで残高が合わない | 合計がマイナスのものは元のレシートと組にして人へ |
上の3行が、この構成の失敗のほとんどです。 どれも、読み取りの前後の準備の問題です。版の指定と、まとめ買いの記録の付け方で、運用に乗るかが決まります。
下から4行目も、同じくらい早く効いてきます。 添え状に一文でも推測が混ざると、家族が施設に問い合わせる理由が、お金ではなく介護の内容に変わります。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 入居者の名前、家族の名前と送り先、預り金の入出金と残高、買った品目(おむつ、医薬品、衣類など)です。買った品目からは、入居者の体の状態が推し量れることがあります。
- 読み取りに送るのはレシートの画像だけにする … レシートには入居者の名前がありません。入居者との結び付けは、スプレッドシートの側で行います
- 処理する地域を確かめる … Document AI は、データの保存と処理の場所として地域を指定する必要があり、指定できるのは複数地域の
us・euと、シンガポール(asia-southeast1)・ムンバイ・シドニーなどの単一地域です。日本の地域はありません。 レシートの画像が国外で処理されることを、施設の個人情報の取扱いの規程と照らして決めておきます - 報告の下書きに渡す範囲を限る … Claude API に渡すのは、照合済みの明細と残高、入居者と家族の名前だけです。介護記録や体調の情報は渡しません
- 報告を自動で送らない … 出すのは下書きまでです。施設長の確認を経て、事務員が送ります
- 預り金の管理の判断を代替させない … 使い道が適切か、管理の方法が規程と契約に合っているかは、施設長と法人の担当が判断します。 この構成が出すのは、レシートと記録が合っているかという事実だけです
- 不正の認定をさせない … 照合の印は食い違いの事実だけです。多くは付け漏れと写し違いで、事情を聞くのは事務員です
誤りが起きた場合のリスクは、家族に誤った明細を送ることと、根拠の無い一文で家族を不安にさせることの2つです。 前者は照合の済んだ明細だけを報告に使うことで抑え、後者は添え状に事実以外を書かせない指示と、人の目の確認で防ぎます。
10まず何から始めるか
1週目:出納の記録の表に列を足す
入居者ごとの出納の記録の表に、「買い物の番号」と「買い物をした職員」の列を足します。 まとめ買いのときは、同じ番号を関係する入居者の行に付ける決まりを、介護職員に伝えます。
2週目:5名分で試す
先月のレシートから入居者5名分を選び、コンソールで Expense Parser に読ませます。日本語に対応した版を選び、当時見つけた食い違いが表の上で見えるかを確かめます。
3週目:毎日スキャンする運用に変える
事務員が1日の終わりにレシートをスキャンし、受付のフォルダに保存する運用を始めます。レシートは1枚ずつのファイルになるよう、複合機の設定を決めます。 品目の区分の表もこの週に決めます。
4週目:フォルダから照合までをつなぐ
Apps Script でフォルダを見張り、読み取りと出納の記録との照合を動かして、印を別の列に書くところまで作ります。この時点では報告の下書きを作らず、印の付き方だけを見ます。
2か月目: 品目の区分のそろえと、報告と添え状の下書きを足します。印の付いた件数を毎週数えます。3か月目以降: 1名あたり30分が何分になったかを実測し、家族からの問い合わせの件数と内容を見て、明細の言葉のそろえ方を直し終えた時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
Expense Parser が経費の書類から日付・店名・合計・通貨などを取り出す事前学習済みの仕組みで、一般提供(GA)であること。pretrained-expense-v1.4.2-2024-09-12(Stable、GA)の追加の対応言語に日本語(ja)があること。同期・非同期とも最大10ページであること。取り出す項目に receipt_date・supplier_name・total_amount・line_item/description・line_item/amount などがあり、receipt_date・total_amount などが正規化されること。対応地域が asia-southeast1・australia-southeast1・eu・northamerica-northeast1・us であること | Google Cloud: Processor list | 2026-10-13 |
データの保存と処理に地域の指定が必要なこと。複数地域が us・eu、単一地域が asia-south1・asia-southeast1・australia-southeast1・europe-west2・europe-west3・europe-west4・northamerica-northeast1 で、日本の地域が無いこと | Google Cloud: Regional and multi-regional support | 2026-10-13 |
構造化出力が output_config.format に JSON Schema を渡して、スキーマに合った JSON を返すこと。additionalProperties は false にする必要があること | Claude Platform Docs: Structured outputs | 2026-10-13 |
預り金の管理の方法は、施設の規程と入居契約、所管の自治体の指導に従って、施設長と法人の担当が決めてください。 本記事は上記の公開資料で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-1369)についてのご相談はこちらから。
