Media > AI活用ユースケース > 総務 > 手書きの口座振替依頼書を読み取って登録データにそろえ、口座番号の桁・届出印の欄・記入漏れの不備を返送の前に洗い出す

手書きの口座振替依頼書を読み取って登録データにそろえ、口座番号の桁・届出印の欄・記入漏れの不備を返送の前に洗い出す

実装ステータス:構成例 技術的に実現可能な構成として設計したもの。自社未検証

委託先から届く手書きの口座振替依頼書を読み取り、収納の登録データの形にそろえます。口座番号の桁、預金種目の選択、届出印の欄の空き、記入漏れを規則で点検し、不備のある依頼書を金融機関へ回す前に洗い出します。

サマリー
生成AI
Azure OpenAI Service/Claude/Gemini
AIサービス
Azure AI/Google Document AI
連携・自動化
Power Automate
対象業界
その他/保険/教育/金融
対象部門
総務
対象業務
データ入力・転記/内容確認・チェック
主な課題
人手が足りない/入力作業が多い/確認ミスが多い
AIで行う処理
読み取り(OCR)
主な効果
入力漏れ削減/対応スピード向上/工数削減
導入難易度
★★☆☆☆
実装レベル
本格構成
費用感
API連携(中)
人間の確認
必須
現在工数
180h/月
AI導入後
60h/月
想定削減
67%
年間削減
1,440h
モデル条件による試算値です。実在企業の実績ではありません。

01導入前 / 導入後の業務フロー

導入前(Before)
  1. 委託先から依頼書の束が届き、件数を数えて受付台帳に記録する
  2. 1枚ずつ見ながら、顧客番号、金融機関名と支店名、預金種目、口座番号、口座名義(カナ)、氏名、住所、電話番号を基幹システムに入力する
  3. 口座番号と金融機関・支店のコードは、別の担当者がもう一度入力し、一致するかを確かめる
  4. 入力しながら、押印欄、預金種目の選択、記入日、訂正の跡を目で見る
  5. 不備があれば付箋を貼り、不備の一覧に書き出す
  6. 不備の一覧から、委託先ごとに返送状を作り、依頼書を同封して戻す
  7. 不備の無いものの1枚目を、金融機関ごとに束ねて送る
導入後(After)
  1. 人届いた束の件数を数え、依頼書の1枚目をスキャナで読み込む
  2. 自動Azure Blob Storage の受付用のコンテナーにファイルが入ったことをきっかけに、ワークフローが動く
  3. 自動依頼書の様式を学習したOCRのモデルが、欄ごとの値、預金種目の選択マーク、押印欄の状態、信頼度を返す
  4. 自動規則で、口座番号の桁、預金種目の選択、ゆうちょ銀行の欄の使い方、記入漏れを点検する
  5. 自動金融機関名・支店名とコードを自社のマスタと照合する
  6. 自動依頼書ごとに `ready` / `needs_return` / `needs_human` を規則で決める
  7. 人担当者が確認画面で、全件の口座番号と金融機関・支店の欄を、画像の切り抜きと読み取った値で見比べて確定する
  8. 人`needs_return` と `needs_human` のものを開き、不備の判定を確かめる
  9. 自動`needs_return` のものについて、生成AIが委託先あての返送状の下書きを作る
  10. 人返送状を直して依頼書と同封し、委託先へ戻す
  11. 自動確定した `ready` のものを、基幹システムの取り込みの形に書き出す
  12. 人1枚目を金融機関ごとに束ねて送る
各工程の詳しい説明を読む
  1. 委託先から依頼書の束が届き、件数を数えて受付台帳に記録する
  2. 1枚ずつ見ながら、顧客番号、金融機関名と支店名、預金種目、口座番号、口座名義(カナ)、氏名、住所、電話番号を基幹システムに入力する
  3. 口座番号と金融機関・支店のコードは、別の担当者がもう一度入力し、一致するかを確かめる
  4. 入力しながら、押印欄、預金種目の選択、記入日、訂正の跡を目で見る
  5. 不備があれば付箋を貼り、不備の一覧に書き出す
  6. 不備の一覧から、委託先ごとに返送状を作り、依頼書を同封して戻す
  7. 不備の無いものの1枚目を、金融機関ごとに束ねて送る

(a)二重の入力が重い。 口座番号と金融機関・支店のコードは、1桁違えば引落し先が変わります。だから2人で別々に打ち、一致を確かめています。 間違えないための仕組みですが、1,800枚の全部に2人分の手がかかります。

(b)点検は入力のついでに行われる。 押印欄や預金種目の選択は、打ち込みながら目に入ったときに見ています。月末に束が重なると、打ち込みが優先され、点検は流れます。 押印欄が空いたまま金融機関に回り、数週間後に戻ってくる依頼書が、毎月一定数あります。

(c)見る項目が人によって違う。 訂正の跡を不備とするか、口座名義のカナが氏名と違うものを止めるか。ベテランは止め、新しい担当者は通します。 同じ委託先の依頼書が、担当者によって戻ったり戻らなかったりします。

(d)ゆうちょ銀行の欄を取り違える。 ゆうちょ銀行の口座は記号と番号で書かれ、ほかの金融機関とは欄が別です。銀行の欄に記号と番号を書いたもの、記号と番号の間の1桁まで書いたものが混ざります。 気づかずに入力すると、存在しない口座番号になります。

  1. 【人】 届いた束の件数を数え、依頼書の1枚目をスキャナで読み込む
  2. 【自動】 Azure Blob Storage の受付用のコンテナーにファイルが入ったことをきっかけに、ワークフローが動く
  3. 【自動】 依頼書の様式を学習したOCRのモデルが、欄ごとの値、預金種目の選択マーク、押印欄の状態、信頼度を返す
  4. 【自動】 規則で、口座番号の桁、預金種目の選択、ゆうちょ銀行の欄の使い方、記入漏れを点検する
  5. 【自動】 金融機関名・支店名とコードを自社のマスタと照合する
  6. 【自動】 依頼書ごとに ready / needs_return / needs_human を規則で決める
  7. 【人】 担当者が確認画面で、全件の口座番号と金融機関・支店の欄を、画像の切り抜きと読み取った値で見比べて確定する
  8. 【人】 needs_return と needs_human のものを開き、不備の判定を確かめる
  9. 【自動】 needs_return のものについて、生成AIが委託先あての返送状の下書きを作る
  10. 【人】 返送状を直して依頼書と同封し、委託先へ戻す
  11. 【自動】 確定した ready のものを、基幹システムの取り込みの形に書き出す
  12. 【人】 1枚目を金融機関ごとに束ねて送る

7番目が、この設計の分かれ目です。 口座番号の確認は、全件に残します。ただし打ち直すのではなく、見比べるだけにします。 二重の入力の目的は「1桁の違いを見つけること」で、画像の切り抜きと値を並べて見れば、同じ目的を短い時間で果たせます。

6番目を規則で決めているのも、意図してのことです。 訂正の跡を不備とするかは、金融機関や委託先との取り決めで変わります。AIには欄の状態を記録させ、それを不備とするかは規則の表に置きます。

02今回想定するシステム構成

構成図
口座振替依頼書(手書き、複写式の1枚目)
   │  スキャナで読み込み
   ▼【トリガー】Azure Blob Storage の受付用コンテナーへの保存
Azure Logic Apps
   ├──▶ ファイル形式・ページ数の確認、1ファイル1枚への分割
   ▼
Azure AI Document Intelligence(カスタム テンプレート モデル)
   │   様式ごとに学習したモデルで、欄ごとの値・選択マーク・押印欄・信頼度を返す
   ▼
Azure Logic Apps ── 規則による点検
   │   ① 口座番号の桁  ② 預金種目の選択  ③ ゆうちょ銀行の欄
   │   ④ 押印欄の空き  ⑤ 記入漏れ        ⑥ 金融機関・支店のマスタ照合
   ▼
判定(ready / needs_return / needs_human)
   ▼
【人が全件の口座番号を見比べ、不備のものを確かめる】
   ├──▶ Azure OpenAI ── 委託先あての返送状の下書き
   └──▶ 基幹システムの取り込みの形に書き出し
役割想定する製品代替候補
OCRAzure AI Document Intelligence(カスタム テンプレート モデル)Google Document AI(Form Parser)
生成AIAzure OpenAI(Microsoft Foundry)(不備の一覧から返送状の下書きを作る)Claude API、Gemini API
連携Azure Logic Apps(Blob のトリガー、規則による点検、書き出し)Power Automate
保管Azure Blob Storage(受付用・処理済み・確認待ちのコンテナー)SharePoint

基幹システムと金融機関・支店のマスタは、新しく足すものではありません。 足すのは、依頼書の様式を学習させたOCRのモデル、規則の表、確認画面です。

土台になるのは、Azure AI Document Intelligence のカスタム テンプレート モデルです。 ラベル付けしたキーと値のペア、選択マーク、テーブル、領域、署名をドキュメントから抽出するモデルで、定義されたビジュアル テンプレートを持つ、高度に構造化されたドキュメントに向くとされています。口座振替依頼書は、まさに欄の位置が決まった書類です。

手書きの日本語に対応しています。 カスタム テンプレートの言語サポートでは、印刷のテキストと手書きのテキストの両方に日本語が含まれています。

様式が変わると精度が落ちる、とも書かれています。 テンプレートを変更すると精度が低下するため、様式ごとに少なくとも5つのサンプルで学習し、それぞれのモデルを1つのエンドポイントにまとめる(モデルの合成)方法が示されています。委託先ごとの様式が数種類であれば、この形で扱えます。

03どうやって実装するのか

Step1

処理の起点を決める

Azure Blob Storage の受付用のコンテナーにファイルが追加されたことを起点にします。 Azure Logic Apps の Blob Storage のマネージド コネクタのトリガー「BLOB が追加または変更されたとき (プロパティのみ)」を使い、続けて「BLOB コンテンツの取得」で中身を取ります。

このトリガーには、知っておくべき性質が2つあります。 1つは、ストレージ コンテナーのルート フォルダーで起動し、設定した時点ですでにあるBLOBは無視することです。委託先ごとにフォルダーを分けると、入れ子のフォルダーでは起動しません。受付用はルートにまとめ、委託先はファイル名で区別します。 もう1つは、ポーリングする仮想フォルダー内のBLOBが30,000個までに制限されることで、超えると新しいBLOBでワークフローが起動しないことがあります。処理が終わったファイルは、必ず処理済みのコンテナーへ移します。

スキャンは、束が届いた日のうちに行います。束ごとに1つのPDFにまとめてスキャンし、ワークフローの最初で1枚ずつに分けます。 ファイル名には、委託先コードと受付日、束の番号を入れます。受付台帳の件数と、分けた枚数が一致するかを最初に確かめます。

処理済みへ移すのは、確認画面への書き込みまで成功したときだけです。 受付用に残っている数が、そのまま未処理の数です。

Step2

入力データを集める

データ中身取得元
依頼書の画像1枚目のスキャン。委託先コード、受付日、束の番号受付用のコンテナー
読み取り結果欄ごとの値、預金種目の選択マーク、押印欄の状態、信頼度カスタム テンプレート モデル
様式の情報様式ごとの口座番号のマス数、ゆうちょ銀行の記号・番号のマス数、必須の欄自社で作る様式の一覧
金融機関・支店のマスタ金融機関名とコード、支店名とコード、ゆうちょ銀行かどうか基幹システムのマスタ
委託先の情報委託先コード、顧客番号の形式、返送先、訂正の跡を不備とするか委託先の一覧

質を決めるのは、3つ目と5つ目です。 口座番号のマス数は様式で決まっています。桁の点検は、そのマス数と記入された数字の数を突き合わせるだけです。 一般的な桁数の知識に頼らず、様式の側の決まりで見ます。

委託先ごとの取り決めは、規則の表に持たせます。 訂正印のある訂正を受け付けるか、口座名義が利用者本人と違うもの(保護者名義など)をどう扱うか。ここを人の判断に残すと、第3章の(c)が繰り返されます。

Step3

データの取得方法を決める

モデルの学習が最初の作業です。 様式ごとに、記入済みの依頼書を5枚以上用意し、Document Intelligence Studio で欄にラベルを付けて学習させます。学習の操作で buildMode を template に設定するとカスタム テンプレート モデルになります。

ラベルを付ける欄種類何に使うか
顧客番号、委託者コードフォーム フィールド基幹システムの顧客との対応
金融機関名、支店名、各コードのマスフォーム フィールドマスタとの照合
預金種目(普通・当座)選択マークどちらか1つに印があるか
口座番号のマスフォーム フィールド桁の点検と登録
ゆうちょ銀行の記号・番号のマスフォーム フィールド銀行の欄との使い分けの点検
口座名義(カナ)、氏名、住所、電話フォーム フィールド記入漏れの点検と登録
届出印の欄署名欄に何か押されているか
記入日フォーム フィールド日付として読めるか

届出印の欄は「署名」のフィールドとしてラベルを付けます。 カスタム テンプレート モデルは署名のフィールドに対応しています。ただし、印影を署名として安定して検出できるかは、自社の様式と朱肉の色で事前に試して確かめる必要があります。 検出が不安定なら、押印欄を「領域」として切り出し、確認画面で人が見る形に落とします。

学習データには、うまく書かれていない依頼書も入れます。 マスからはみ出した数字、薄い複写、斜めのスキャン。きれいな5枚だけで学習すると、実際の束で信頼度が落ちます。 様式の小さな違い(印刷の版の違いなど)があれば、同じ学習データにそれぞれ5枚以上入れます。

Step4

AIへ渡す前に整形する

  1. ページの分割 … 束のPDFを1枚ずつに分けます。両面スキャンの白紙の裏は除きます
  2. 件数の照合 … 分けた枚数と受付台帳の件数が一致するかを見ます。合わなければ、束ごと止めます
  3. 形式と寸法の確認 … PDFまたは画像であること、画像が50×50から10,000×10,000ピクセルの間であることを確かめます
  4. 解像度の確認 … 抽出するテキストの最小の高さは、1024×768の画像で12ピクセルです。マスの中の数字は小さいので、スキャンは300dpiに固定します
  5. パスワードの確認 … パスワードでロックされたPDFは、提出前に解除する必要があります(スキャナの暗号化の設定を切ります)
  6. 様式の判別 … 委託先コードから様式を引き、合成したモデルで読ませます
  7. 重複の検知 … 同じ委託先・同じ顧客番号の依頼書が直近にあれば、二重の受付として印を付けます

2番目を省かないでください。 束の中で2枚が重なったままスキャンされると、1件が消えます。消えた1件は、誰も気づかないまま引落しが始まらない利用者になります。

Step5

AIに処理させる

OCRのモデルにさせるのは、欄ごとの値と状態を読み取ることだけです。 点検は、読み取った値に規則を当てて行います。

点検規則結果
① 口座番号の桁記入された数字の数が、様式のマス数と一致するか。数字以外が無いか不一致なら account_digits
② 預金種目選択マークがちょうど1つ selected か0個・2個なら deposit_type
③ ゆうちょ銀行の欄ゆうちょ銀行を選んだのに銀行の欄に書いた、または両方に書いたものが無いか該当すれば yucho_field
④ 押印欄署名のフィールドが検出されたか検出されなければ seal_missing
⑤ 記入漏れ必須の欄に値があるか空なら blank_<欄の名前>
⑥ マスタ照合金融機関名・支店名とコードの組がマスタと一致するか不一致なら bank_mismatch

判定は、次の規則で決めます。

判定条件
ready①〜⑥に該当なし、かつ全欄の信頼度が基準以上
needs_return①〜⑤のどれかに該当し、その欄の信頼度が基準以上(書かれていないことが確か)
needs_human該当した欄の信頼度が基準未満、または⑥のみの該当、または二重の受付

真ん中の行が大事です。 needs_return は委託先へ書き直しを頼むもので、利用者に手間をかけさせます。 押印欄が空に見えても、それが朱肉の薄さで検出されなかっただけなら、返送は空振りです。信頼度が基準に届かないものは、返送ではなく人の確認に回します。

⑥を needs_human にしているのは、表記ゆれが多いためです。 「〇〇信金」「〇〇信用金庫」、支店名の旧称、合併前の金融機関名。マスタと合わないことが、そのまま不備とは限りません。

AIにさせないこと理由
口座番号の桁を補う(先頭に0を足すなど)足りないのか読めないのかが消える
金融機関名からコードを推測して埋める支店の取り違えがそのまま登録される
ゆうちょ銀行の記号・番号を振込用の口座番号に変換する変換の規則は番号の桁で分かれ、誤ると存在しない口座になる
届出印が正しいかの判断金融機関でしか確かめられない
不備として返送するかの最終判断規則と人で決める

3行目は特に気をつけてください。 ゆうちょ銀行の口座は、記号の先頭が1か0かで口座の種類が分かれ、番号の桁数によって振込用の口座番号への変換方法が違うとされています。また、記号と番号の間に1桁の数字がある場合、その数字は振込には使わないとされています。依頼書に書かれた記号と番号をそのまま登録し、変換は基幹システムの決まった処理に任せます。

Step6

指示内容を固定する

生成AIは、返送状の下書きだけに使います。 点検の結果は規則で決まっているので、生成AIに渡すのは不備のコードと欄の名前までです。

あなたは収納代行の事務センターで、委託先に口座振替依頼書の書き直しを
お願いする文書を作る担当です。次の不備の一覧から、委託先あての返送状の下書きを作ってください。

【不備の一覧】{issues}
  例: [{"form_id": "A-0123", "code": "seal_missing", "field": "届出印"},
       {"form_id": "A-0124", "code": "account_digits", "field": "口座番号"}]
【委託先の名称】{client_name}
【返送の期日】{due_date}

【厳守事項】
- 不備の一覧に無い不備を書き足さないでください。
- 依頼書の番号(form_id)ごとに、どの欄をどう直してほしいかを1行で書いてください。
- 口座番号、金融機関名、氏名などの値を本文に書かないでください。
  依頼書は同封するので、番号と欄の名前だけで足ります。
- 「印鑑が違う」「口座が存在しない」など、事務センターで確かめていないことを書かないでください。
  届出印は「押印が確認できませんでした」と書いてください。
- 利用者の落ち度を責める書き方をしないでください。
- 書き直しの依頼書は新しい用紙に書いてもらう必要がある場合、その旨を書いてください。
  訂正の扱いは {correction_rule} に従ってください。
- 出力は次のJSONで返してください。

「値を本文に書かない」を入れるのは、返送状が委託先の担当者を経由するためです。 口座番号は返送状に要りません。依頼書の番号と欄の名前があれば、同封した依頼書で場所が分かります。

「確かめていないことを書かない」も同じくらい大事です。 押印欄が空に見えたことと、印鑑が違うことは別の話です。後者は金融機関の判断で、事務センターが書けば誤りになります。

Step7

出力形式を固定する

OCRのモデルの結果から、規則の層で次の形のJSONを作ります。

{
  "form_id": "",
  "client_code": "",
  "form_type": "",
  "fields": [
    { "name": "account_number", "value": "", "confidence": 0,
      "status": "ok | blank | unreadable", "crop_ref": "" }
  ],
  "deposit_type": { "selected": ["普通"], "confidence": 0 },
  "seal": { "detected": true, "confidence": 0 },
  "checks": [ { "code": "account_digits", "field": "account_number", "detail": "" } ],
  "verdict": "ready | needs_return | needs_human",
  "duplicate_of": null
}

crop_ref が、7番目の見比べのための項目です。 欄の位置の情報から画像を切り抜き、その場所を持たせておきます。確認画面では、切り抜きと値を横に並べて、1枚ずつ見比べます。

1つ目の理由は、checks と verdict を別の層に置けることです。 委託先の取り決めが変わっても、直すのは規則だけです。2つ目は、返送状の下書きに渡すのが checks だけで済むことです。 生成AIに口座番号や氏名を渡さずに済みます。

返送状の下書きは、Azure OpenAI の構造化出力で受け取ります。 構造化出力は、指定した JSON スキーマに従った応答を返させる仕組みで、すべてのフィールドを必須にし、オブジェクトには additionalProperties: false を設定する決まりです。依頼書の番号ごとの行と、本文の段落を固定の項目にしておくと、返送状の書式に流し込めます。

Step8

システムへ連携する

つなぎ先方式内容
Azure Blob StorageLogic Apps のトリガーとアクション受付用・処理済み・確認待ちのコンテナー
Azure AI Document IntelligenceAPI呼び出し合成したカスタム テンプレート モデルで読み取る
金融機関・支店のマスタ基幹システムからの定期の書き出しを読む照合
確認画面社内の業務画面(切り抜きと値を並べて表示)見比べと確定
Azure OpenAIAPI呼び出し返送状の下書き
基幹システム既存の取り込み口(ファイル)確定した ready のものだけ

基幹システムへは、確定したものだけを渡します。 口座番号の見比べが済んでいないものは、ready でも書き出しません。読み取りの直後に登録すると、1桁の読み違いがそのまま引落し先になります。

金融機関・支店のマスタは読むだけです。 合わなかった金融機関名をマスタに書き足しません。合併や支店の統廃合はマスタ側の更新で扱います。

Step9

人が確認する

人が見るのは2種類です。 全件の口座番号と金融機関・支店の欄、そして needs_return と needs_human の依頼書です。

  1. 口座番号の見比べ … 切り抜きと読み取った値を並べ、1桁ずつ合っているかを見ます。合っていれば確定、違っていれば値を直して確定します
  2. 金融機関・支店の見比べ … 名称とコードの切り抜きを見て確定します
  3. needs_human を確かめる … 信頼度が低い欄を画像で見て、不備か読めなかっただけかを決めます
  4. needs_return を確かめる … 該当の欄を画像で見て、本当に空欄か、本当に桁が違うかを確かめます
  5. 判定を覆したら記録する … どの欄を、どちらに変えたかを残します

1番目は、二重の入力の代わりです。 二重の入力は「2人が別々に打って一致すれば正しい」という考え方でした。見比べは「画像と値を同じ画面で照らす」考え方で、1人で済みます。 見比べで直した件数は、毎週数えておきます。読み取りの癖が見えてきます。

目標は、1,800枚をならして1枚2分です。 見比べに1分、needs_return と needs_human の確認をならして1分という想定です。不備の多い委託先の束では2分を超えます。

Step10

例外に対処する

起きること対応
分けた枚数と受付台帳の件数が合わない束ごと止め、重なったスキャンと抜けを探す
様式が学習したどれとも違う委託先が新しい様式を使い始めた可能性。読み取らずに人へ回し、5枚集まったら学習に足す
画像の寸法・解像度が範囲外50×50から10,000×10,000ピクセルの範囲外、または文字が小さすぎるものはスキャンし直す
パスワードでロックされたPDF提出前に解除が必要。スキャナの設定を直して取り直す
複写の2枚目以降をスキャンした文字が薄く信頼度が全体に低い。1枚目で取り直す
同じ利用者の依頼書が二度届くduplicate_of に印を付け、新しいほうを人が選ぶ
押印欄の検出が不安定署名のフィールドをやめ、領域として切り出して人が見る
訂正の跡がある委託先の取り決めに従い、規則で needs_return か ready に分ける
OCRが応答しない受付用に残す。処理済みへ移すのは成功時だけ

上から2行目が、運用で最も起きやすい例外です。 委託先は様式を断りなく変えることがあります。テンプレートは様式の変更で精度が落ちるので、 委託先コードと様式の組を一覧で持ち、知らない様式は読み取りに進ませません。

Step11

記録を残す

  • 依頼書の画像と、委託先コード、受付日、束の番号
  • OCRが返したJSONの全文(欄ごとの値、選択マーク、署名、信頼度)と、使ったモデルの番号
  • 規則による点検の結果(checks、verdict)と、そのときの規則の表と委託先の取り決め
  • 見比べで人が直した記録 … どの欄を、何から何に直したか、誰が確定したか
  • 返送状の下書きと、送った版、送った日
  • 基幹システムへ書き出した日時と件数、金融機関へ送った束の記録
  • 金融機関から返却された依頼書と、その理由

最後の行が、この仕組みを育てる材料です。 金融機関から返却された依頼書のうち、事務センターの点検で止められたはずのものを数えます。押印欄の空きで返ってきたものが減らないなら、署名の検出の基準を見直します。

04実装レベルの3段階

最小構成:1つの様式でモデルを学習させ、手で読ませて表計算で規則を当てる / 読み取りと点検の確かめ
半自動化:上記+受付用のコンテナーを起点に読み取りと規則の点検を自動で回し、確認画面に出す / 読み取り、点検、見比べの画面
本格構成:上記+全様式のモデルの合成、返送状の下書き、基幹システムの取り込みの形への書き出し / 受付から登録の手前と、返送の準備まで

最小構成は、確かめるための段階です。 半自動化で、1枚6分が3分程度になります。 打ち込みと二重の入力は見比べに変わりますが、返送状の作成と、基幹システムへの入力が残ります。本格構成で2分になり、この段階が本記事の想定です。 差が大きいのは、返送状と登録の書き出しが、委託先ごとの手作業だからです。 段階を飛ばさないでください。 半自動化を1か月回すと、どの委託先の様式で信頼度が低いか、どの規則で needs_human が多いかが見えます。そこを直してから返送状の下書きを足すほうが、返送の空振りが減ります。

05工数削減シミュレーション

前提値(モデル条件)
対象人数
8 名
月間件数
1,800 件
1件あたり現在時間
6 分
1件あたり導入後時間
2 分
現在  1,800件 × 6分 ÷ 60 = 180 時間/月
導入後 1,800件 × 2分 ÷ 60 = 60 時間/月
月間削減時間
120h
削減率
67%
年間削減時間
1,440h
年間金額換算(時間単価2,800円)
403万円
モデル条件による試算であり、実際の効果は業務内容・運用方法によって異なります。

自社条件で導入効果を整理したい方へ

このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。

AI活用について相談する

06向いている企業・向いていない企業

向いている
  1. 学習塾、スポーツクラブ、保険代理店、管理組合などの委託先から、紙の口座振替依頼書を毎月まとめて受け取り、事務センターで登録データに打ち込んでから金融機関へ回している収納代行会社や、同じ事務を自社で持つ金融機関。依頼書の様式が委託先ごとに数種類に限られ、記入欄の位置が決まっている場合。金融機関から依頼書が戻ってくるまでの間に初回の引落しが遅れることが問題になっている場合。
向いていない
  1. 口座振替の受付をインターネットや店頭の端末での手続きに切り替えており、紙の依頼書がほとんど無い場合。月の受付が数十件で、目視と手入力で足りる場合。なお、届出印が金融機関に届けた印鑑と一致するかは金融機関でしか確かめられず、この構成では判定できません。

07最小構成で試す方法

  1. 先月受け付けた依頼書から50枚を選ぶ(金融機関から返却されたものを10枚入れる)
  2. その50枚の登録データと、金融機関から返却された理由を書き出しておく
  3. 1つの様式の依頼書を5枚選び、Document Intelligence Studio でラベルを付けてカスタム テンプレート モデルを学習させる
  4. 残りの同じ様式の依頼書を読ませ、欄ごとの値と信頼度、押印欄の検出の結果を一覧にする
  5. 第7章の6つの規則を表計算で当て、2で書き出した登録データと返却の理由に突き合わせる

50枚は必ずやってください。 規則とワークフローを組む前に、自社の様式で、口座番号のマスと押印欄がどこまで読めるかを確かめます。

出てきた内容判断
口座番号が登録データとほぼ一致し、返却された10枚の多くを規則で止められたワークフローの連携に進む
口座番号は読めるが、押印欄の検出が安定しない押印欄は領域として切り出し、人が見る形にする。構成は有効
マスからはみ出した数字が多く、口座番号の信頼度が低い様式のマスの大きさと学習データが先。 汚れた見本を学習に足す

2行目は珍しくありません。 押印欄を人が見る形にしても、二重入力が見比べに変わるだけで時間の大半は減ります。

08実装時につまずきやすいポイント

問題対策
口座番号の読み違いがそのまま登録される全件を見比べで確定する。 読み取った値をそのまま書き出さない
桁が足りない口座番号の先頭に0を足してしまう補うことを禁じ、マス数と数字の数の不一致として止める
押印欄が朱肉の薄さで空と判定される信頼度の基準を下回るものは needs_human。返送しない
ゆうちょ銀行の記号・番号を銀行の欄に書いたものが通るゆうちょ銀行を選んだ依頼書は、欄の使い分けを規則で見る
記号と番号の間の1桁まで口座番号に入るその1桁は振込には使わないとされる。変換は基幹システムの処理に任せる
委託先が様式を変えて精度が落ちる知らない様式は読み取らずに人へ。5枚集めて学習に足す
学習の見本がきれいな依頼書だけはみ出した数字、薄い複写、斜めのスキャンを入れる
委託先ごとにフォルダーを分けてトリガーが起動しないマネージドのトリガーはルートで起動する。ルートにまとめ、ファイル名で分ける
受付用のコンテナーにファイルがたまり続けるポーリングは30,000個まで。処理済みへ必ず移す
金融機関名の表記ゆれで照合が合わない⑥は needs_human。マスタに旧称を持たせる
返送状に「印鑑が違う」と書いてしまう事務センターで確かめていないことは書かせない

上の2行が、この構成の失敗のほとんどです。 どちらも、口座番号という1桁の違いが致命的な欄を、機械に任せきることから起きます。読み取りで速くするのは打ち込みまでで、確定は人が行います。

トリガーの2行は運用を始めてから効きます。 知らないままだと、依頼書が届いているのに誰も気づかない状態になります。

09セキュリティ・AIガバナンス上の注意点

この構成で扱うデータ: 利用者の氏名、住所、電話番号、金融機関・支店、口座番号、口座名義、届出印の印影です。口座振替の依頼書は、口座から引き落とす権限を与える書類そのものです。

  1. 生成AIに渡すのは不備のコードと欄の名前だけにする … 返送状の下書きに、口座番号や氏名は要りません。読み取りの結果を生成AIに渡さない設計にできます
  2. 印影の画像を必要以上に複製しない … 押印欄の切り抜きは確認画面に出しますが、保存は元の画像に限り、切り抜きは表示のたびに作ります
  3. 届出印の照合をこの構成で行わない … 届出印が届けた印鑑と同じかは、金融機関の判断です。事務センターが「押印が確認できない」以上のことを言わないよう、返送状の書き方まで決めておきます
  4. 読み取った値を確定前に登録しない … 基幹システムへ渡すのは、人が見比べて確定したものだけです
  5. 委託先との契約で、外部サービスの利用を確かめる … 依頼書の画像をクラウドのOCRに渡すことが、委託先との契約や個人情報の取り決めに沿うかを、導入の前に確かめます。 リソースのリージョンと、紙の控えの保管期間も決めておきます

誤りが起きた場合のリスクは、別の口座から引き落とすことと、正しい依頼書を返送して利用者に手間をかけさせることの2つです。 前者は読み取った値をそのまま登録すると起き、後者は信頼度の低い判定で返送すると起きます。どちらも、人の確認をどこに置くかで防ぎます。

10まず何から始めるか

1週目:様式とマスの一覧を作る

受け付けている依頼書の様式を集め、様式ごとに口座番号のマス数、ゆうちょ銀行の記号・番号のマス数、必須の欄を一覧にします。委託先ごとの取り決め(訂正の扱い、名義の扱い)も書き出します。

2週目:50枚で試す

いちばん枚数の多い様式で5枚にラベルを付けてモデルを学習させ、先月の50枚を読ませます。金融機関から返却された10枚を、規則で止められたかを最優先で見ます。 押印欄の検出がどこまで安定するかも、ここで決めます。

3週目:見比べの画面を作る

口座番号と金融機関・支店の切り抜きを、読み取った値と並べて表示する画面を用意します。 二重の入力の担当者に使ってもらい、1枚あたりの時間と、直した件数を数えます。

4週目:受付から確認画面までをつなぐ

Logic Apps で受付用のコンテナーを見張り、読み取りと規則の点検を回し、確認画面に出すところまで作ります。この時点では返送状の下書きは出さず、needs_return と needs_human の件数だけを毎日数えます。

2か月目: 残りの様式のモデルを学習させて合成し、返送状の下書きを足します。3か月目以降: 基幹システムへの書き出しを足し、1枚6分が何分になったかを実測します。金融機関から返却される依頼書の件数を導入前と比べ、事務センターで止められたはずのものが減った時点で、この構成は完成です。


11関連ユースケース

12この仕組みを理解するための記事

13技術仕様の確認日・参考情報

技術仕様確認日:2026-10-06/最終更新:2026-10-06
確認した内容情報源確認日
カスタム テンプレート モデルがラベル付きのキーと値のペア、選択マーク、テーブル、領域、署名を抽出し、定義されたビジュアル テンプレートを持つ高度に構造化されたドキュメントに向くこと。テンプレートを変更すると精度が低下し、各テンプレートの少なくとも5つのサンプルで学習してモデルを1つのエンドポイントにまとめられること。入力がPDFと画像で、Free レベルはPDFとTIFFの最初の2ページのみ処理すること。画像が50×50から10,000×10,000ピクセル、テキストの最小の高さが1024×768の画像で12ピクセルであること。パスワード付きPDFは提出前に解除が必要なこと。学習の buildMode を template に設定することMicrosoft Learn: カスタム テンプレート ドキュメント モデル2026-10-06
カスタム テンプレート モデルの印刷・手書きのテキストの対応言語に日本語(ja)が含まれることMicrosoft Learn: カスタム モデルの言語サポート2026-10-06
Logic Apps の Blob Storage マネージド コネクタのトリガー「BLOB が追加または変更されたとき (プロパティのみ)」が、コンテナーのルート フォルダーで起動し、設定時点の既存のBLOBを無視すること。「BLOB コンテンツの取得」で内容を取ること。マネージド コネクタのトリガーがポーリングする仮想フォルダー内で30,000個のBLOBに制限され、超えると新しいBLOBで起動しないことがあることMicrosoft Learn: ワークフローから Azure Blob Storage に接続する2026-10-06
構造化出力が指定した JSON スキーマに従った応答を返すこと。すべてのフィールドを必須にし、additionalProperties: false を設定することMicrosoft Learn: Azure OpenAI で構造化出力を使用する方法2026-10-06
ゆうちょ銀行の口座が記号・番号で表され、記号の先頭が1(総合口座・通常貯金・通常貯蓄貯金)か0(振替口座)かで分かれ、番号の桁数によって振込用の店名・預金種目・口座番号への変換方法が異なること。記号と番号の間に1桁の数字がある場合、その数字は振込には使わないことゆうちょ銀行: 記号・番号から振込用の店名・預金種目・口座番号への変換方法2026-10-06

届出印の照合、口座の実在の確認、依頼書の受付の要件は、取引のある金融機関の定めに従ってください。 本記事は、製品の公開仕様と金融機関の公開情報で確認できた範囲だけを扱っています。

実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。

自社の業務に使えるAI活用候補を整理します

このユースケース(UC-0463)についてのご相談はこちらから。

AI活用について相談する
目次