Media > AI活用ユースケース > 物流 > 外航貨物海上保険の事故で届く英文のサーベイレポートと船荷証券・インボイスを読み取り、保険金請求に要る項目と不足書類を洗い出して、請求書類一式の下書きを作る

外航貨物海上保険の事故で届く英文のサーベイレポートと船荷証券・インボイスを読み取り、保険金請求に要る項目と不足書類を洗い出して、請求書類一式の下書きを作る

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

貨物の事故で届く英文のサーベイレポートと、船荷証券(B/L)・インボイスを読み取り、保険金の請求に要る項目を1枚の請求明細にそろえます。保険会社の必要書類の一覧と照らして不足を洗い出し、送付状と催促の下書きまで作ります。

サマリー
生成AI
ChatGPT/Claude/Gemini
AIサービス
AWS Textract/Azure AI/Google Document AI
対象業界
商社/小売/物流/製造
対象部門
物流
対象業務
内容確認・チェック/書類作成
主な課題
入力作業が多い/書類作成に時間がかかる/期限・対応漏れが起きる
AIで行う処理
読み取り(OCR)
主な効果
入力漏れ削減/対応スピード向上/工数削減
導入難易度
★★★☆☆
実装レベル
本格構成
費用感
API連携(中)
人間の確認
条件付き
現在工数
50h/月
AI導入後
15h/月
想定削減
70%
年間削減
420h
モデル条件による試算値です。実在企業の実績ではありません。

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

導入前(Before)
  1. 倉庫から事故の連絡を受け、保険会社へ事故を連絡する
  2. 運送人(船会社)宛ての事故通知(Claim Notice)を、倉庫かフォワーダーに出してもらう
  3. サーベイヤーの検査のあと、英文のサーベイレポートがメールで届く
  4. 担当者がサーベイレポートを読み、検査日・原因・損害の数量・推奨損害額を請求明細に写す
  5. B/L・インボイス・パッキングリストを開き、B/L番号・船名・数量・インボイス金額を写し、レポートの記載と見比べる
  6. 保険会社の必要書類の一覧と照らし、足りない書類を倉庫やフォワーダーに催促する
  7. そろったところで送付状を書き、保険会社へ一式を送る
導入後(After)
  1. 人担当者が、届いたサーベイレポートと船積書類を事故の案件番号のフォルダに保存する
  2. 自動保存をきっかけに処理が動き、形式・サイズ・ページ数を確かめる
  3. 自動AWS Textract がサーベイレポートの構成(節の見出し・本文・表)と、決めておいた問いへの答えを返す
  4. 自動AWS Textract がインボイスの金額と明細、B/L とパッキングリストの項目と表を返す
  5. 自動Claude API が書類の種類を判別し、請求明細の項目へ並べ直す
  6. 自動B/L番号・コンテナ番号・数量・金額を、書類どうしでプログラムが照らす
  7. 自動B/L から輸送の形(コンテナ船/在来船/航空)を取り、必要書類の一覧を切り替えて不足を出す
  8. 自動Claude API が、請求明細・送付状・不足書類の催促の下書きを作る
  9. 人担当者が食い違いと信頼度の低い項目を確かめ、下書きを直す
  10. 人担当者が催促を送り、そろったところで保険会社へ一式を送る
各工程の詳しい説明を読む
  1. 倉庫から事故の連絡を受け、保険会社へ事故を連絡する
  2. 運送人(船会社)宛ての事故通知(Claim Notice)を、倉庫かフォワーダーに出してもらう
  3. サーベイヤーの検査のあと、英文のサーベイレポートがメールで届く
  4. 担当者がサーベイレポートを読み、検査日・原因・損害の数量・推奨損害額を請求明細に写す
  5. B/L・インボイス・パッキングリストを開き、B/L番号・船名・数量・インボイス金額を写し、レポートの記載と見比べる
  6. 保険会社の必要書類の一覧と照らし、足りない書類を倉庫やフォワーダーに催促する
  7. そろったところで送付状を書き、保険会社へ一式を送る

(a)長い英文を読んで写す時間が重い。 推奨損害額や損害の数量は、レポートの最後の結論の節に書かれていることもあれば、途中の表に書かれていることもあります。毎回、全ページをめくって探します。

(b)不足書類に気づくのが遅れる。 写真と Devanning Report はそろっていても、運送人からの回答書や Landing Report がないことに、送る直前で気づきます。 催促してから届くまでに日数がかかり、請求が遅れます。

(c)運送人への事故通知が出ていないことがある。 倉庫に頼んだつもりで出ていない、出したが写しを受け取っていない。保険会社は事故通知の写しを求めており、写しが手元にない案件は後から探すことになります。

(d)書類どうしの食い違いを見落とす。 サーベイレポートのB/L番号やコンテナ番号が、手元のB/Lと1文字違う。損傷した数量が、パッキングリストの総数より多い。写している最中には気づきにくい食い違いです。

  1. 【人】 担当者が、届いたサーベイレポートと船積書類を事故の案件番号のフォルダに保存する
  2. 【自動】 保存をきっかけに処理が動き、形式・サイズ・ページ数を確かめる
  3. 【自動】 AWS Textract がサーベイレポートの構成(節の見出し・本文・表)と、決めておいた問いへの答えを返す
  4. 【自動】 AWS Textract がインボイスの金額と明細、B/L とパッキングリストの項目と表を返す
  5. 【自動】 Claude API が書類の種類を判別し、請求明細の項目へ並べ直す
  6. 【自動】 B/L番号・コンテナ番号・数量・金額を、書類どうしでプログラムが照らす
  7. 【自動】 B/L から輸送の形(コンテナ船/在来船/航空)を取り、必要書類の一覧を切り替えて不足を出す
  8. 【自動】 Claude API が、請求明細・送付状・不足書類の催促の下書きを作る
  9. 【人】 担当者が食い違いと信頼度の低い項目を確かめ、下書きを直す
  10. 【人】 担当者が催促を送り、そろったところで保険会社へ一式を送る

9番目が、この設計の分かれ目です。 下書きは自動でできますが、保険会社へ送るのは人です。 食い違いのある請求を送ると、保険会社からの照会で往復が増え、かえって支払が遅れます。

6番目と7番目をプログラムに置いているのも意図してのことです。 書類どうしの一致と、輸送の形による一覧の切り替えは、規則で決まります。AIに任せると、同じ案件でも日によって結果が変わります。

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

構成図
サーベイレポート・B/L・インボイス・パッキングリスト(英文のPDF)
   ▼【トリガー】案件フォルダ(Amazon S3)への保存
AWS Lambda ── 形式・サイズ・ページ数の確認
   ▼
AWS Textract
   ├─ StartDocumentAnalysis(LAYOUT・TABLES・QUERIES)… レポート、B/L、パッキングリスト
   └─ StartExpenseAnalysis … インボイス
   ▼ 完了の通知(Amazon SNS)
Claude API ── 書類の判別と、請求明細の項目への並べ直し(構造化出力)
   ▼
AWS Lambda ── 書類どうしの照合/輸送の形による必要書類の一覧の切り替え
   ▼
Claude API ── 請求明細・送付状・催促の下書き
   ▼
【担当者が確認】──▶ 催促の送信 ──▶ 保険会社へ一式を送付
役割想定する製品代替候補
OCRAWS Textract(StartDocumentAnalysis の LAYOUT・TABLES・QUERIES と StartExpenseAnalysis)Azure AI Document Intelligence、Google Document AI
生成AIClaude API(書類の判別、項目の並べ直し、下書きの作成)OpenAI API、Gemini API
連携AWS Lambda(保存を起点に処理を動かし、照合と一覧の切り替えを行う)Amazon EventBridge
保管Amazon S3(書類のPDFと読み取り結果)社内のファイルサーバー
通知Amazon SNS(読み取りの完了の通知)Amazon SQS

案件台帳と販売管理システムは、新しく足すものではありません。 案件台帳には「書類の不足」の列を足し、この構成はその列だけを書き込みます。販売管理システムには書き込みません。

読み取りの土台は、AWS Textract の非同期の文書分析(StartDocumentAnalysis)です。 指定できる分析は TABLES(表)、FORMS(キーと値の組)、QUERIES(問いへの答え)、SIGNATURES、LAYOUT(文書の構成)で、結果は完了の通知のあとに GetDocumentAnalysis で取ります。ジョブの識別子(JobId)の有効期間は7日です。

サーベイレポートに効くのは LAYOUT です。 文書のタイトル、節の見出し、本文、表、リストなどを要素として返し、要素は読む順(左から右、上から下)に並びます。 「Cause of Loss」「Conclusion」のような節の見出しで本文を区切れるので、長い英文から結論の節だけを取り出せます。

インボイスには、請求書・領収書の分析(AnalyzeExpense/StartExpenseAnalysis)を使います。 インボイス番号(INVOICE_RECEIPT_ID)、合計(TOTAL)、品目の明細などを標準の項目名で返し、値ごとに信頼度とページ番号が付きます。 金額には通貨の情報も返ります。

Textract は、日本語の書類を読めません。 対応は英語・フランス語・ドイツ語・イタリア語・ポルトガル語・スペイン語で、手書きは英語だけ、縦書きは非対応、問いによる取り出し(QUERIES)は英語の書類だけです。 この構成が成り立つのは、請求に使う書類が英文で届く案件に絞っているからです。日本語の倉庫の入庫報告書などは読み取りの対象から外し、「届いたかどうか」だけを見ます。

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

Step1

処理の起点を決める

案件フォルダ(Amazon S3)にファイルが保存されたことを起点にします。 フォルダは事故の案件番号ごとに作り、担当者がメールの添付をそこへ保存します。保存のたびに、その案件の書類全体を見直します。 サーベイレポートが先に届き、運送人の回答書が2週間後に届く、という順番のばらつきがあるためです。

もう1つの起点は、毎朝の定時実行です。 書類が新しく届かなくても、事故の発見日からの日数を数え直し、不足が続いている案件を一覧にします。催促を忘れる失敗は、書類が届かないあいだに起きるからです。

Step2

入力データを集める

データ中身取得元
サーベイレポート検査日・場所、事故の経緯、損害の状態と数量、原因の見立て、推奨損害額、サーベイ費用案件フォルダ
B/LB/L番号、船名・航海番号、積地・揚地、コンテナ番号、包装の数、運送人案件フォルダ
インボイスインボイス番号、品名、数量、単価、合計、通貨、貿易条件案件フォルダ
パッキングリスト包装の番号ごとの品名・数量・重量案件フォルダ
保険証券・保険料請求書証券番号、保険金額、保険条件案件フォルダ
必要書類の一覧保険会社ごと・輸送の形ごとの必要書類自社で用意する表
案件台帳事故の発見日、保険会社への連絡日、事故通知を出した日案件台帳

質を決めるのは、下から2つ目の表です。 ある保険会社は、損害見込額50万円未満の案件を想定した標準の必要書類として、保険証券(保険料請求書)、Invoice と Packing List、B/L または Air Waybill、損傷貨物の写真、入庫報告書または Devanning Report、運送人宛ての事故通知(Claim Notice)を挙げています。そのうえで、コンテナ船・在来船・航空便ごとに追加の書類を示しています。 この表を保険会社ごとに作り、輸送の形で行を切り替えます。

Step3

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

取るものどの機能で何に使うか
レポートの節の見出しと本文LAYOUT(LAYOUT_SECTION_HEADER、LAYOUT_TEXT)結論の節や原因の節の切り出し
レポートの決まった項目QUERIES(問いと別名を決めておく)検査日、B/L番号、推奨損害額などの取り出し
レポートの表TABLES損害の数量の内訳
B/L の項目QUERIES と FORMSB/L番号、船名、コンテナ番号、包装の数
インボイスの金額と明細StartExpenseAnalysis番号、合計、通貨、明細
パッキングリストの表TABLES包装ごとの数量と重量

問いは、別名(Alias)を付けて登録します。 例えば What is the recommended amount of loss? に RECOMMENDED_LOSS、What is the B/L number? に BL_NO を付けます。答えは別名と信頼度つきで返り、答えが見つからないときは空で返ります。 空のまま後段に渡し、「書かれていない」として扱います。

問いの数には上限があります。 非同期の処理で1ページあたり30、同期で15です。サーベイレポートでは、問いをかけるページを最初の数ページと結論のページに絞り、残りは LAYOUT で取った本文から拾います。

B/L では、表の面の摘要の欄も取ります。 積み込みの時点で包装の傷みなどが書き込まれていることがあり、事故が輸送中に起きたかどうかの材料になります。ここは問いで取らず、FORMS と本文の文字列をそのまま渡します。 何を書き込みと見るかは、担当者と保険会社が決めます。

インボイスの貿易条件(CIF・FOB など)も取ります。 どちらが保険を手配する条件かで、請求する側が自社かどうかが変わるためです。取れなかったときは、販売管理システムの取引条件を担当者が見ます。

Step4

AIへ渡す前に整形する

  1. 形式の確認 … JPEG・PNG・PDF・TIFF であることを確かめます。XFA形式のPDFは扱えないため、印刷し直したPDFを依頼します
  2. パスワードの確認 … パスワード付きのPDFは読めません。送り元に解除を頼みます
  3. サイズとページ数の確認 … 非同期の処理で、PDFとTIFFは500MB・3,000ページまでです
  4. 文字の大きさの確認 … 検出できる文字の高さは15ピクセル以上で、150dpiで8ポイントに当たります。写真を貼り込んだページの小さな注記は読めないことがあります
  5. 言語の確認 … 本文が英文でないファイルは、読み取りに回さず「届いたかどうか」だけを記録します
  6. 書類の束ねの分割 … 1つのPDFにB/Lとインボイスとパッキングリストがまとまって届くことがあります。ページごとに種類を判別してから、それぞれの機能に回します
  7. 重複の検知 … 同じファイル名・同じページ数のものが二度保存されたら、版の違いとして扱います

6番目を軽く見ないでください。 インボイスのページをLAYOUTに回すと明細の表が崩れ、B/LのページをExpenseに回すと項目が OTHER ばかりになります。種類を先に決めてから機能を選びます。

Step5

AIに処理させる

1回目にさせるのは、読み取り結果を請求明細の項目へ並べ直すことです。

項目取り出し元書かれていないときの扱い
検査日・検査場所レポートの問いの答えnot_stated
事故の種類(濡れ・破損・不足など)レポートの原因・状態の節not_stated
原因の見立てレポートの原因の節の文をそのままnot_stated。要約して言い換えない
損害の数量レポートの表または結論の節not_stated
推奨損害額と通貨レポートの結論の節not_stated。計算しない
運送人の責任に関するサーベイヤーの記述レポートの本文not_stated
B/L番号・船名・コンテナ番号B/L とレポートの両方片方だけなら、どちらにあったかを書く
インボイス番号・合計・通貨インボイスnot_stated

2回目にさせるのは、照合と不足の結果を受けて、下書きを作ることです。 請求明細(日本語)、保険会社宛ての送付状(日本語)、倉庫・フォワーダー宛ての不足書類の催促(日本語または英語)、事故通知が出ていない案件では運送人宛ての Claim Notice の下書き(英語)です。

させないこと理由
保険金の額の計算額は三者で協議して決める。推奨損害額は写すだけ
推奨損害額を合計から推定する書かれていなければ not_stated。埋めると協議の前提が崩れる
原因の判断・言い換え原因は保険の支払にも代位求償にも関わる。サーベイヤーの文をそのまま使う
書類どうしの一致の判定プログラムが文字列で照らす
催促・事故通知の送信送るのは人

3行目がいちばん起きやすい失敗です。 「雨水の浸入の可能性がある」という見立てを「雨水の浸入による」と要約すると、可能性の話が断定に変わります。 運送人へ賠償を求めるときの言い分にも響くので、原因は原文を引用で残します。

Step6

指示内容を固定する

あなたは貨物保険の担当として、保険金の請求書類をそろえる立場です。
渡すのは AWS Textract が英文の書類から読み取った結果です。
読み取り結果に書かれていることだけを使ってください。推測で埋めないでください。

【1回目:請求明細の項目への並べ直し】
- 各ページの書類の種類を、survey_report / bill_of_lading / invoice /
  packing_list / insurance_certificate / photo / other から選んでください。
- 項目ごとに value と、根拠にした英文(evidence)をそのまま写してください。
- 書かれていない項目は value を空にし、status を not_stated にしてください。
- 推奨損害額(recommended loss)は、書かれた数字と通貨をそのまま写してください。
  合計・単価・数量から計算して埋めないでください。
- 原因(cause of loss)は、サーベイヤーの英文をそのまま evidence に写し、
  value には和訳を1文で書いてください。「可能性」「推定」の表現を
  断定に変えないでください。
- 信頼度は Textract が返した値をそのまま confidence に入れてください。

【2回目:下書き】
- 照合の結果({match_results})と不足書類({missing_docs})を使って、
  請求明細、送付状、催促の下書きを作ってください。
- 食い違いがある項目は、下書きの中で値を選ばず「要確認」と書いてください。
- 事故通知の写しがない場合({claim_notice_status})は、運送人宛ての
  Claim Notice の英文の下書きを作ってください。事故の内容はサーベイ
  レポートの記載の範囲で書き、賠償の額は書かないでください。
- 保険金の額、支払の可否、運送人の責任の有無を書かないでください。

「可能性を断定に変えない」を明記しないと、和訳で言い切りになります。 英文の may have been を「〜による」と訳すのは翻訳としては自然に見えるため、指示で止めない限り毎回起きます。

Step7

出力形式を固定する

1回目の出力は、次の形のJSONで受け取ります。

{
  "case_id": "",
  "documents": [
    { "file": "", "page": 1, "doc_type": "survey_report" }
  ],
  "claim_items": [
    {
      "item": "recommended_loss",
      "value": "",
      "currency": "",
      "status": "ok | not_stated | low_confidence",
      "source_doc": "survey_report",
      "page": 0,
      "confidence": 0,
      "evidence": ""
    }
  ],
  "transport_mode": "container | conventional | air | unknown"
}

1つ目の理由は、照合をプログラムに渡せることです。 claim_items の B/L番号・コンテナ番号・数量・金額を、書類ごとに並べて文字列で比べます。結果は match / mismatch / one_side_only の3つで、AIはこの判定に関わりません。

2つ目は、transport_mode で必要書類の一覧を切り替えられることです。 一覧の表から、該当する行だけを引きます。

transport_mode一覧に足す書類(ある保険会社の例)
container事故現認書または Devanning Report、損傷品の写真、運送人からの回答書
conventionalCargo Boat Note/Rechecking Report/Landing Report/Tally Sheet のいずれか、事故現認書、写真
airDelivery Order、内容点検の実施確認書、事故現認書
unknown切り替えずに担当者へ。推測で選ばない

構造化出力では、スキーマのすべてのオブジェクトに additionalProperties: false を付けます。数値の範囲や文字列の長さの制約はスキーマで書けないため、金額の形の確認はプログラムで行います。

Step8

システムへ連携する

つなぎ先方式内容
案件フォルダ(Amazon S3)保存のイベントで AWS Lambda を起動書類の保存を検知する
AWS Textract非同期のAPI呼び出し完了は Amazon SNS へ通知され、結果を取りに行く
Claude APIAPI呼び出し(2回)項目の並べ直しと、下書きの作成
案件台帳書き込み(不足の列だけ)不足書類と、事故の発見日からの日数
担当者への通知メールまたはチャット下書きの場所と、食い違いの件数

StartDocumentAnalysis には、同じ依頼を二度動かさないための識別子(ClientRequestToken)を付けます。 同じ識別子なら同じ JobId が返ります。保存のたびに見直す作りなので、同じファイルを二重に読ませない仕掛けが要ります。 結果の暗号化に KMS の鍵を指定でき、出力先のバケットも指定できます。

保険会社と運送人へは、自動では何も送りません。

Step9

人が確認する

担当者が見るのは、mismatch と one_side_only、low_confidence と not_stated の項目です。

  1. mismatch を先に見る … B/L番号やコンテナ番号の1文字違いは、読み取りの誤りか書類の誤りかを、PDFの該当ページで確かめます
  2. 推奨損害額を原本で確かめる … 請求の中心になる数字です。信頼度が高くても、必ずページを開きます
  3. 原因の和訳を原文と見比べる … 「可能性」の表現が残っているかを見ます
  4. 不足書類の一覧を確かめる … 輸送の形が正しく取れているか、保険会社の一覧の版が新しいかを見ます
  5. 下書きを直して送る … 催促、事故通知、送付状のいずれも、送るのは人です

2番目を省かないでください。 推奨損害額を1桁読み違えた請求は、保険会社の照会で戻ってくるか、気づかれずに少ない額で協議が進みます。

目標は、25件をならして1件36分です。 確認の印が付く項目が1件あたり数項目という想定で、それより多い月は、特定のサーベイヤーのレポートの構成が問いと合っていないか、書類の束ねの分割が崩れています。 サーベイヤーごとに not_stated の数を数えておくと、どちらかが分かります。

Step10

例外に対処する

起きること対応
パスワード付き・XFA形式のPDF読めない。送り元に解除または印刷し直しを依頼
本文が英文でない読み取りに回さず、届いたことだけを記録
手書きの注記(英語以外)手書きは英語だけ。原本を見る項目として担当者へ
推奨損害額が見つからないnot_stated。サーベイヤーへの確認を担当者の作業にする
輸送の形が取れないunknown。一覧を切り替えずに担当者へ
同時に動かすジョブが多すぎる上限を超えると LimitExceededException。時間をおいて再実行
JobId の期限(7日)が切れた依頼からやり直す
1つのPDFに複数の書類ページごとに判別し、判別できないページは担当者へ
事故の発見日から日数がたっても不足が残る毎朝の一覧で上位に出し、担当者へ通知

上から3行目までが、書類の受け取り方の問題です。 倉庫やフォワーダーに、PDFの形式と英文の報告書の提出をお願いしておくほうが、読み取りの精度を上げるより効きます。

Step11

記録を残す

  • 受け取った書類のPDFと、受け取った日時
  • Textract が返した読み取り結果の全文と JobId
  • 1回目のJSON(項目、根拠の英文、信頼度)
  • 照合の結果と、そのとき使った必要書類の一覧の版
  • 2回目の下書きと、担当者が直したあとの送付版
  • 催促を送った日と、書類が届いた日
  • 案件ごとの、事故の発見日から保険会社へ一式を送るまでの日数

4つ目で一覧の版を残すのは、保険会社の必要書類が変わるためです。 どの版の一覧で「不足なし」としたかが残っていないと、後から追加の書類を求められたときに理由をたどれません。

最後の行は、この構成の効き目を測る数字です。 工数よりも、請求が出るまでの日数がどれだけ縮んだかのほうが、支払の早さに直結します。

04実装レベルの3段階

最小構成:PDFを手でAIの画面に貼り、請求に要る項目を書き出させる / 1件ごとの項目の書き出し
半自動化:上記+Textract を呼び、読み取り結果を請求明細の項目に並べて一覧にする / 読み取りと項目の一覧化
本格構成:上記+保存を起点に動かし、書類どうしの照合、輸送の形による不足の洗い出し、下書きまで出す / 請求書類の準備の全体と、催促の下書き

半自動化で、1件120分が1時間程度になります。 読み取りと並べ直しは自動になりますが、不足の洗い出しと下書きが手作業で残ります。本格構成で36分になり、この段階が本記事の想定です。 段階を飛ばさないでください。 半自動化の一覧を1か月見ると、not_stated が多いサーベイヤーと、問いの書き方が合っていない項目が分かります。問いを直してから照合と下書きを足すほうが、食い違いの空振りが減ります。

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

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

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

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

AI活用について相談する

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

向いている
  1. 外航貨物海上保険の包括予定保険を付け、輸出入・三国間の貨物で濡れ・破損・不足の事故が毎月数十件ある商社・メーカー・小売。サーベイレポートや船積書類が英文のPDFで届き、保険会社へ出す請求書類を担当者が手でそろえている場合。保険会社ごとの必要書類の一覧を持っているが、案件ごとの不足の確認が担当者の記憶に頼っている場合。
向いていない
  1. サーベイレポートや船積書類が日本語、または中国語・韓国語などで届く場合(この構成のOCRは英語など6言語しか読めず、問いによる取り出しは英語だけです)。事故が年に数件で、手でそろえれば足りる場合。保険代理店や通関業者が請求書類の取りまとめを代行している場合。なお、保険金の額の決定と、運送人への賠償の請求をどうするかの判断は、この構成では代替できません。

07最小構成で試す方法

  1. 過去3か月の事故の案件から10件を選ぶ(在来船とコンテナ船の両方を入れる)
  2. 10件それぞれのサーベイレポートとB/L・インボイスのPDFを用意する
  3. 手元のAIサービスにPDFを貼り、「検査日、損害の数量、原因、推奨損害額、B/L番号を、根拠の英文とともに書き出してください。書かれていなければ『記載なし』とし、計算で埋めないでください」と指示する
  4. 書き出された値を、当時の請求明細と見比べる
  5. 保険会社の必要書類の一覧と照らして、当時足りなかった書類が分かるかを見る
出てきた内容判断
当時の請求明細と同じ値が出たTextract とワークフローの連携に進む
推奨損害額を計算で埋めた指示の書き方で直る。構成は有効
原因を断定の和訳にした原文を引用で残す作りが要る理由。構成は有効

最小構成では Textract を使いません。 確かめるのは、請求明細の項目がサーベイレポートから取れるかと、AIが計算や断定で埋めないかです。

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

問題対策
推奨損害額を計算で埋める指示で禁じ、空なら not_stated のまま人へ
原因の和訳が断定になる原文を evidence に残し、和訳と並べて確かめる
輸送の形を推測して一覧を選ぶunknown は切り替えずに人へ
日本語の書類を読ませようとするTextract は日本語を読めない。届いたかどうかだけを見る
インボイスをLAYOUTに回す書類の種類を判別してから、Expense の機能に回す
問いが多すぎて上限を超える非同期で1ページ30まで。ページを絞る
同じファイルを二度読ませるClientRequestToken を付ける
必要書類の一覧が古い保険会社の案内を定期的に見直し、版を記録する
事故通知の写しが倉庫から戻らない毎朝の一覧で、写しのない案件を上に出す
B/L番号の1文字違いを読み取りの誤りと決めつける書類の誤りのこともある。PDFで確かめる

上の3行が、この構成の失敗のほとんどです。 どれも、AIが空欄を埋めようとするという同じところから出ています。空欄を空欄のまま人へ渡す作りにできるかで、運用に乗るかが決まります。

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

この構成で扱うデータ: 取引先の名称と住所、取引の金額と数量、保険金額と保険条件、事故の内容です。個人の情報はほとんど含みませんが、取引の条件は営業上の秘密です。

  1. 外部へ渡す範囲を、請求に要る書類に限る … 案件フォルダに販売の契約書や価格表が紛れ込むことがあります。書類の種類の判別で other になったものは、生成AIへ渡さない設計にします
  2. 送信を自動にしない … 保険会社への請求、倉庫への催促、運送人への事故通知のいずれも、送るのは人です。 特に事故通知は運送人に対する主張の書面です
  3. この構成は保険金の額を決めません … 額は三者で協議して決めます。出すのは、協議に入るための書類の下書きまでです
  4. 代位求償に関わる書類を残す … 保険会社は、支払時に権利移転証(Subrogation Receipt)の署名を求めることがあり、運送人への賠償の請求に使うとしています。事故通知の写しと運送人の回答書は、元のファイルのまま残します
  5. 読み取り結果の保管先を決める … Textract の結果は既定でサービス側に保存され、出力先のバケットと暗号化の鍵を指定できます。自社のバケットに出し、保管の期間を決めます

誤りが起きた場合のリスクは、誤った数字や断定で請求し、協議や代位求償で不利になることです。推奨損害額と原因を原文で確かめる工程は、そのためにあります。

10まず何から始めるか

1週目:必要書類の一覧を表にする

取引のある保険会社ごとに、必要書類の案内を集め、輸送の形ごとに行を分けた表にします。版と確認した日を残します。

2週目:10件で試す

第8章のとおり、過去の10件で請求に要る項目を書き出させます。推奨損害額を計算で埋めないか、原因を断定に変えないかを最優先で見ます。

3週目:問いを決める

サーベイレポートから取る項目ごとに、Textract の問いと別名を決めます。サーベイヤーごとに結論の節の見出しを集めておくと、LAYOUT で切り出す範囲が決まります。

4週目:保存から読み取りまでをつなぐ

S3 への保存を起点に Textract を呼び、請求明細の項目を一覧に書き出すところまで作ります。この時点では下書きを作らず、項目の一覧だけを見ます。

2か月目: 書類どうしの照合と、輸送の形による不足の洗い出しを足します。3か月目以降: 下書きと毎朝の一覧を足し、1件120分が何分になったか、事故の発見日から請求までの日数がどれだけ縮んだかを実測します。不足書類の催促が送る直前ではなく、書類が届くたびに出るようになった時点で、この構成は完成です。


11関連ユースケース

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

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

技術仕様確認日:2026-10-05/最終更新:2026-10-06
確認した内容情報源確認日
損害見込額50万円未満の案件を想定した標準の必要書類(保険証券、Invoice・Packing List、B/L または Air Waybill、損傷貨物の写真、入庫報告書または Devanning Report、運送人宛ての Claim Notice)。コンテナ船・在来船・航空便ごとの追加書類。権利移転証の署名が代位求償に必要とされること東京海上日動: 外航貨物海上保険 必要書類について2026-10-05
運送人へ事故通知を出し、写しを保険会社へ送ること。保険会社がサーベイヤーを手配すること。支払額をお客様・サーベイヤー・保険会社で協議して決めること東京海上日動: 事故発生から保険金お支払までの手続2026-10-05
対応言語が英・仏・独・伊・葡・西の6つで、問いによる取り出しは英語だけ、手書きは英語だけ、縦書き非対応であること。JPEG・PNG・PDF・TIFF に対応し XFA形式は非対応、パスワード付きPDFは不可。非同期でPDF・TIFFは500MB・3,000ページまで。問いは非同期で1ページ30・同期で15まで。文字の高さは15ピクセル以上(150dpiで8ポイント)AWS: Set Quotas in Amazon Textract2026-10-05
TABLES/FORMS/QUERIES/SIGNATURES/LAYOUT を指定できること。完了を SNS に通知し GetDocumentAnalysis で結果を取ること。JobId の有効期間が7日であること。ClientRequestToken で同じ JobId が返ること。KMS の鍵と出力先を指定できること。同時実行の上限超過で LimitExceededException になることAWS: StartDocumentAnalysis2026-10-05
LAYOUT がタイトル・節の見出し・本文・表・リストなどを要素として返し、読む順に並ぶことAWS: Layout Response Objects2026-10-05
問いへの答えが別名と信頼度つきで返り、答えがないときは空になることAWS: Queries2026-10-05
請求書の分析が INVOICE_RECEIPT_ID・TOTAL などの標準項目と明細を返し、値ごとに信頼度とページ番号が付き、通貨も返ること。非同期は StartExpenseAnalysis と GetExpenseAnalysisAWS: Analyzing Invoices and Receipts2026-10-05
構造化出力がスキーマどおりのJSONを保証し、すべてのオブジェクトに additionalProperties: false が必要で、数値の範囲と文字列の長さの制約が使えないことClaude Docs: Structured outputs2026-10-05

必要書類は保険会社と契約の内容によって異なります。 本記事の一覧は1社の公開情報を例にしたもので、実際の請求では契約先の保険会社の案内に従ってください。

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

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

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

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