古紙回収の業者が事業所・集合住宅から届く回収の依頼を n8n で受け、依頼の種類と品目・量を区分して、回収ルートへの組み入れの案を作る
事業所や集合住宅の管理会社から届く古紙の回収の依頼を n8n で受け、AIが依頼の種類に分類して品目と量を抜き出します。回収コースの曜日と積載の空きに照らし、どの便に組み入れるかの案を配車の担当に出します。
- 生成AI
- ChatGPT/Claude
- 連携・自動化
- Make/n8n/Zapier
- 対象業界
- その他/不動産/物流
- 対象部門
- 物流
- 対象業務
- データ入力・転記/分類・仕分け
- 主な課題
- 入力作業が多い/属人化している/期限・対応漏れが起きる
- AIで行う処理
- 分類
- 主な効果
- 対応スピード向上/属人化解消/工数削減
- 導入難易度
- ★★☆☆☆
- 実装レベル
- 本格構成
- 費用感
- ノーコード連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 依頼がメール・フォーム・電話で届く。電話は担当がメモに書く
- 担当が依頼を読み、臨時の回収か、定期の変更か、回収漏れの連絡かを見分ける
- 回収先の台帳で、住所と回収のエリア、定期の曜日を確かめる。初めての先なら住所からエリアを決める
- 品目と量を読み、「箱30」「袋10」を重さの見当に直す
- 回収コースの表で、希望日に近いそのエリアの便を探し、積載に余裕があるかを見て書き込む
- 依頼した先に、回収の日をメールか電話で知らせる
- 【人/自動】 回収先がフォームから依頼を送るか、メールで依頼が届く。電話の依頼は担当がフォームに入れる
- 自動n8n が受け、AIが依頼の種類に分類する
- 自動AIが品目と量を書かれたとおりに抜き出す。管理会社の複数の物件は物件ごとに分ける
- 自動回収先の台帳で回収先とエリアを引き、量を自社の換算の表で重さの目安に直す
- 自動エリアの回収の曜日と、便ごとの積載の残りから、組み入れる便の案を作る
- 自動機密書類・回収漏れ・回収先が引けないものは、案を作らず担当の一覧へ
- 人配車の担当が Slack で案を確かめ、承認する
- 自動承認された依頼を回収コースの便の表に書き、依頼した先への返事の下書きを作る
- 人担当が下書きを確かめて送る
- 自動毎日夕方、翌日の便ごとの積載の見込みと、承認待ちの依頼の一覧を担当に送る
各工程の詳しい説明を読む
- 依頼がメール・フォーム・電話で届く。電話は担当がメモに書く
- 担当が依頼を読み、臨時の回収か、定期の変更か、回収漏れの連絡かを見分ける
- 回収先の台帳で、住所と回収のエリア、定期の曜日を確かめる。初めての先なら住所からエリアを決める
- 品目と量を読み、「箱30」「袋10」を重さの見当に直す
- 回収コースの表で、希望日に近いそのエリアの便を探し、積載に余裕があるかを見て書き込む
- 依頼した先に、回収の日をメールか電話で知らせる
(a)依頼の書き方がまちまち。 「段ボール少し多め」「書類の箱が30くらい」「いつもの倍」。品目も量も、回収先の言葉で書かれています。 担当は、その先の普段の量を思い出しながら見当をつけます。
(b)種類を見誤ると、やることがずれる。 「書類を引き取ってほしい」が機密書類の溶解の依頼だったのに、普通の古紙として便に入れると、立会いや処理の証明が要る回収を、ほかの古紙と一緒に積んでしまいます。 回収漏れの連絡を臨時の回収と読めば、謝りの連絡が抜けます。
(c)臨時の依頼が便から漏れる。 夕方にまとめて書き込むので、昼に届いた依頼が、翌日の便に書き込まれないまま次の日に回ることがあります。 回収先からの「まだ来ない」の電話で気づきます。
(d)積載の見当が担当の頭の中にある。 どの便がどれくらい空いているかは、その日に便を組んだ担当しか分かりません。 担当が休むと、組み入れに倍の時間がかかります。
- 【人/自動】 回収先がフォームから依頼を送るか、メールで依頼が届く。電話の依頼は担当がフォームに入れる
- 【自動】 n8n が受け、AIが依頼の種類に分類する
- 【自動】 AIが品目と量を書かれたとおりに抜き出す。管理会社の複数の物件は物件ごとに分ける
- 【自動】 回収先の台帳で回収先とエリアを引き、量を自社の換算の表で重さの目安に直す
- 【自動】 エリアの回収の曜日と、便ごとの積載の残りから、組み入れる便の案を作る
- 【自動】 機密書類・回収漏れ・回収先が引けないものは、案を作らず担当の一覧へ
- 【人】 配車の担当が Slack で案を確かめ、承認する
- 【自動】 承認された依頼を回収コースの便の表に書き、依頼した先への返事の下書きを作る
- 【人】 担当が下書きを確かめて送る
- 【自動】 毎日夕方、翌日の便ごとの積載の見込みと、承認待ちの依頼の一覧を担当に送る
7番目と9番目が、この設計の分かれ目です。 便に入れるかどうかと、回収先への返事は、担当が決めます。担当が見るのは、種類・品目・量・案の便が1行に並んだ表で、文面を読み直す作業は例外のものだけです。
6番目で機密書類を案に乗せないのも、意図してのことです。 機密書類の回収は、溶解の処理の段取り、立会いの有無、処理の証明の出し方を、回収先と決めてから便に入れます。
02今回想定するシステム構成
【トリガー1】回収先がフォームを送る(Form Trigger) 【トリガー2】依頼のメールが届く(Gmail Trigger、ラベルで絞る) ▼ n8n ├─ Text Classifier + Anthropic Chat Model ── 依頼の種類に分類 ├─ Information Extractor + Anthropic Chat Model ── 物件・品目・量の抜き出し ├─ Data Table ── 回収先の台帳の写し、エリアと曜日、換算の表 ├─ Code ── 重さの目安と組み入れる便の案 ├─ Slack(Send and Wait for Response:承認) ├─ Data Table ── 便ごとの組み入れの記録 └─ Gmail(Create a draft)── 回収先への返事の下書き 【トリガー3】毎日16時(Schedule Trigger) ▼ n8n ── 翌日の便ごとの積載の見込み・承認待ちの一覧 ──▶ Slack
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| ワークフロー | n8n | Make、Zapier |
| 生成AI | Claude(n8n の Anthropic Chat Model ノード) | OpenAI API |
| 保管 | n8n の Data Table(回収先の台帳の写し、エリアと曜日、換算の表、便ごとの組み入れ) | PostgreSQL |
| 承認 | Slack(n8n の Slack ノード) | Microsoft Teams |
| メール | Gmail(n8n の Gmail ノード・Gmail Trigger) | Outlook |
新しく足すのは n8n だけです。 回収先の台帳と回収コースの表は今あるスプレッドシートを毎晩写し、会社のメールと Slack はそのまま使います。配車そのもの(どの車で、どの順に回るか)はこの構成に入れません。 決めるのは「どの曜日の、どのコースの便に入れるか」までです。
n8n を選ぶのは、フォームとメールの2つの入口を1本の流れにまとめられるからです。 入口が違っても、分類・抜き出し・組み入れの案は同じノードを通り、同じ Data Table に記録が残ります。 電話の依頼も担当がフォームに入れれば、同じ流れに乗ります。
分類には Text Classifier ノードを使います。 公式ページでは、分類の名前と説明を並べて置け、説明でその分類の意味をモデルに伝えるとされています。複数の分類を同時に付けるかどうかを選べ、どれにも当てはまらないときの扱いは、既定では捨てる(Discard Item)で、別の「Other」の出口に出す設定もあるとされています。この構成では必ず Other の出口に変えます。 既定のままだと、見慣れない依頼が黙って消えます。
03どうやって実装するのか
処理の起点を決める
起点は3つです。
| 起点 | ノード | 動く時 |
|---|---|---|
| フォームの依頼 | Form Trigger | 回収先がフォームを送るたび |
| メールの依頼 | Gmail Trigger | 依頼のラベルの付いたメールを見つけるたび |
| 翌日の便の見込み | Schedule Trigger | 毎日16時 |
フォームは、ホームページのお問い合わせとは別に作ります。 公式ページでは、Form Trigger に文字・長い文字・数値・日付・選択肢・ファイルなどの項目を置け、認証は Basic 認証・n8n の利用者の認証・なしから選べるとされています。初めての回収先も使うので認証はなしにし、回収先コード・名前・住所・連絡先・希望日・品目の選択肢・依頼の文章の欄を置きます。品目は選択肢にしますが、量は文章で書いてもらいます。 量の書き方を回収先にそろえさせるのは無理があるからです。
メールは、Gmail Trigger で受けます。 公式ページでは、ラベルや Gmail の検索の条件・差出人で絞れ、既定は未読のメールだけを拾い、1回に拾う件数は既定10件・最大50件で、超えた分は次の回に回るとされています。管理会社と事業所の担当のアドレスに Gmail のフィルタで「回収依頼」のラベルを付け、そのラベルで絞ります。 営業のメールや請求の連絡を拾わないためです。
夕方の見込みは Schedule Trigger で動かします。 公式ページでは、ワークフローの時間帯が設定されていなければインスタンスの時間帯を使い、自前の n8n の既定は America/New York とされています。ワークフローの設定で時間帯を Asia/Tokyo にします。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| フォームの依頼 | 回収先コード、名前、住所、連絡先、希望日、品目の選択、依頼の文章 | Form Trigger |
| メールの依頼 | 差出人、件名、本文、受信日時 | Gmail Trigger |
| 回収先の台帳 | 回収先コード、名前、ビル名・物件名、住所、エリア、定期の曜日、普段の品目と量、管理会社 | Data Table(毎晩写す) |
| エリアと曜日 | エリア、回収のコース、曜日、車両、積載の目安 | Data Table |
| 換算の表 | 品目と単位(箱・袋・束・かご車)ごとの重さの目安 | Data Table |
| 便ごとの組み入れ | 日付、コース、組み入れた依頼、重さの目安の合計 | Data Table |
質を決めるのは、回収先の台帳の「ビル名・物件名」の列です。 事業所は住所よりビルの名前で書いてきます。管理会社は物件の名前で書いてきます。台帳にその呼び方が無いと、抜き出しが正しくても回収先が引けません。 台帳を写すときに、引くための「よみ」と「別の呼び方」の列を足します。
換算の表は、自社の計量の記録から目安を置きます。 目安なので、便の積載の見込みにだけ使い、回収先への返事には書きません。
データの取得方法を決める
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 依頼の文章 | Form Trigger・Gmail Trigger の出力 | 分類と抜き出し |
| 回収先 | Data Table の Get(回収先コード、なければ電話番号・ビル名のよみで) | エリアと定期の曜日 |
| 便の空き | Data Table の Get(日付とコースで) | 積載の残り |
| 換算 | Data Table の Get(品目と単位で) | 重さの目安 |
回収先の引き方は、回収先コード、電話番号、ビル名・物件名のよみの順です。 公式ページでは、Data Table のノードで行の追加・取得・更新・Upsert、条件に合う行があるか・無いかで分ける操作ができるとされています。名前の部分一致では引きません。 「〇〇ビル」と「〇〇第二ビル」を取り違えると、違う日の違う便に入ります。
1通のメールに複数の物件があるときは、抜き出しの段で物件ごとの配列にし、1件ずつに分けてから引きます。
AIへ渡す前に整形する
- 引用と署名を除く … 引用された前回の依頼を残すと、その品目と量をもう一度依頼として読みます
- 電話の依頼を同じ形にそろえる … 担当が電話を受けたら、フォームに入れます。メモを写真で送らない
- 添付を分ける … 依頼に写真(積まれた段ボールなど)が付いていれば、写真があることだけを印にし、AIには渡しません
- 希望日の言葉を残す … 「来週の火曜」「月末までに」は、そのまま文字で残します
- 重複を見つける … 同じ回収先から同じ日に同じ内容のフォームとメールが届いたら、印を付けます
3番目で写真を読ませないのは、量の見当を写真から作らせないためです。 写真の段ボールの山から「約40束」と数えさせると、それらしい数が、根拠のないまま便の積載に入ります。 写真は、担当が量を確かめるときの材料として残します。
4番目の「来週の火曜」は、受けた日を基準に Code ノードで日付にし、計算した日付であることを担当の一覧に出します。
AIに処理させる
させるのは、分類と抜き出しの2つです。 どちらも文面に書かれていることを区分に当てるだけで、便の選択や回収の可否は決めさせません。
分類:依頼の種類(Text Classifier)
| 分類 | 説明に書くこと | その後 |
|---|---|---|
| 臨時の回収 | 定期の回収とは別に、指定の日に来てほしい | 組み入れの案 |
| 定期の追加 | 定期の回収の日に、いつもより多く出る | 定期の便に積載を足す案 |
| 日程の変更・休み | 定期の回収の日を変えたい、今回は不要 | 便から外す・移す案 |
| 機密書類 | 書類の処分、溶解、シュレッダーの代わり、証明書 | 案を作らず担当へ |
| 回収漏れ | 来なかった、残っている | 案を作らず担当へ |
| 新規の申し込み | 初めて定期の回収を頼みたい | 営業の担当へ |
| Other | どれにも当てはまらない | 担当へ |
「機密書類」の説明に、言い回しを多く並べます。 依頼する側は「機密書類」と書くとは限りません。「書類の処分」「古い帳簿」「個人情報の入った紙」「溶解」「証明書がほしい」 と書いてきます。説明が短いと、これらを「臨時の回収」に入れます。
複数の分類を同時に付ける設定は有効にします。 「臨時に段ボールを引き取ってほしい、あわせて古い書類も処分したい」は、臨時の回収と機密書類の両方です。どちらか一方でも「機密書類」が付けば、依頼全体を担当に回します。
抜き出し:物件・品目・量(Information Extractor)
| 項目 | 中身 | 書かれていないとき |
|---|---|---|
| 物件・ビル名 | 書かれた名前のまま | 空 |
| 品目 | 段ボール/新聞/雑誌・雑がみ/OA 紙/その他(書かれた言葉) | 空 |
| 量と単位 | 「30箱」「10袋」「いつもの倍」など書かれたまま | 空 |
| 希望日 | 書かれた言葉のまま | 空 |
| 受け入れていない物の疑い | 自社の受け入れ基準で扱わない物が書かれていれば、その言葉 | 空 |
| させないこと | 理由 |
|---|---|
| 量を数や重さに直す | 換算は自社の表で行う。「少し多め」を数にしない |
| 便を選ぶ | エリアと曜日、積載の残りで規則が決める |
| 回収できるかを答える | 受け入れ基準と料金は担当が決める |
| 機密書類の処理の方法を書く | 回収先と担当が決める |
| 回収漏れの理由を推し量る | 運転手の記録を担当が確かめる |
1行目がいちばん起きやすい失敗です。 「いつもの倍」を、AIは親切に「段ボール 約20束」と直します。その数が積載の見込みに入り、便があふれます。 書かれた言葉は言葉のまま残し、倍にするなら台帳の普段の量に Code ノードで掛けます。
指示内容を固定する
Text Classifier のシステムプロンプトに、次のように書きます(分類の名前と説明はノードの分類の欄に置き、{categories} で差し込みます)。
あなたは古紙の回収業者の配車の担当として、回収先から届いた依頼の文面を、
依頼の種類に分類します。
【分類】
{categories}
【分類のしかた】
- 文面に書かれていることだけで分類してください。
回収先の事情や、書かれていない目的を推し量らないでください。
- 書類の処分、溶解、シュレッダーの代わり、帳簿、個人情報、証明書、
立会い、のいずれかに触れていれば、ほかの分類とあわせて
「機密書類」も付けてください。迷ったら付けてください。
- 「来なかった」「残っている」「回収されていない」に触れていれば、
依頼の言葉があっても「回収漏れ」を付けてください。
- 1通の文面に複数の依頼があれば、当てはまる分類をすべて付けてください。
- どの分類にもはっきり当てはまらなければ、無理に当てはめないでください。
Information Extractor のシステムプロンプトには、次のように書きます。
あなたは古紙の回収業者の配車の担当として、回収先からの依頼の文面から、
物件ごとの品目と量を抜き出します。
【入力】
- 依頼の文面(引用と署名は除いてあります)
- 差出人のメールアドレスまたはフォームの回収先コード
【抜き出すこと】
物件ごとに次を出してください。
- property: 書かれた物件名・ビル名をそのまま。
- items: 品目ごとに item と quantity_text。
item は corrugated / newspaper / magazine_mixed / office_paper / other。
other のときは item_text に書かれた言葉をそのまま。
quantity_text は「30箱」「いつもの倍」のように書かれたとおりに。
- requested_date_text: 希望日について書かれた言葉をそのまま。
- not_accepted_text: 古紙以外や、受け入れ基準に無い物の言葉があればそのまま。
- quote: その物件について書かれた文を、文面からそのまま写す。
【厳守事項】
- 量を数や重さに直さないでください。「少し多め」「いつもの倍」は
書かれたとおりに quantity_text に入れてください。
- 書かれていない品目を足さないでください。普段の品目を補わないでください。
- 日付を計算しないでください。「来週の火曜」はそのまま残してください。
- 文面に出てこない物件を作らないでください。
- 回収できるか、料金、処理の方法については書かないでください。
「量を数や重さに直さない」が要の一文です。 数に直されると元の言葉が消え、誰の見当なのかが分からなくなります。
出力形式を固定する
Information Extractor の出力の形は、JSON Schema で決めます。 公式ページでは、JSON の例から生成するとすべての項目が必須として扱われるとされています。空を許したい項目があるので、Schema で書きます。 分類の結果は Text Classifier の出口ごとに分かれて届くので、n8n の中で次の形にまとめます。
{
"request_id": "R2610-0412",
"channel": "form | email | phone",
"categories": ["ad_hoc", "confidential"],
"properties": [
{
"property": "",
"customer_code": "",
"items": [
{ "item": "corrugated", "item_text": "", "quantity_text": "30箱" }
],
"requested_date_text": "",
"requested_date": "",
"not_accepted_text": "",
"quote": ""
}
],
"route_proposal": { "date": "", "course": "", "weight_estimate_kg": 0, "remaining_kg": 0 },
"route_status": "proposed | sent_to_staff | no_capacity"
}
1つ目の理由は、分類で行き先を分けられることです。
categories に含まれるもの | 行き先 |
|---|---|
confidential または missed_pickup | 案を作らず担当の一覧へ。Slack に知らせる |
new_contract | 営業の担当へ |
ad_hoc・extra | 組み入れの案を作り、Slack で承認 |
reschedule | 便から外す・移す案を作り、Slack で承認 |
| Other の出口から来たもの | 担当の一覧へ |
2つ目は、quantity_text(AIが写した言葉)と weight_estimate_kg(Code ノードの目安)を分けて持てることです。
3つ目は、route_status で空きの無い依頼を拾えることです。 no_capacity のときは、前後の日の便の空きを並べて担当に出します。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 回収先 | Form Trigger | 回収の依頼を受ける |
| 会社のメール | Gmail Trigger | ラベルの付いた依頼のメールを受ける |
| Anthropic のモデル | Anthropic Chat Model ノード | 分類と抜き出し |
| 回収先の台帳・コースの表 | 毎晩 Data Table に写す | 回収先・エリア・曜日・積載の目安 |
| 組み入れの案 | Code ノード | 重さの目安と便の選択 |
| Slack | Slack ノードの Send and Wait for Response | 組み入れの案の承認 |
| 回収先への返事 | Gmail ノードの Create a draft | 回収の日を知らせる下書き |
組み入れの案は Code ノードで作ります。 公式ページでは、Code ノードは JavaScript と Python で書け、ノードの中からファイルの読み書きや HTTP の要求はできないとされています。必要な行は前の Data Table のノードで取ってから渡します。中身は、エリアの曜日のうち希望日以降で最も近い便を選び、その便の積載の目安から組み入れ済みの重さを引いて、残りが依頼の重さの目安を上回るかを見るだけです。
承認は Slack の Send and Wait for Response で受けます。 公式ページでは、Slack の中で承認・却下でき、承認できる人を限れ、誰が応じたかが出力に残るとされています。そのためには、n8n が公開の HTTPS で届くこと、Slack のアプリの Interactivity の Request URL、資格情報への Signing Secret の設定が要るとされています。配車の担当3名だけを承認できる人にします。
回収先への返事は、Gmail の下書きにします。 公式ページでは、下書きの作成に宛先・件名・本文のほか、スレッドの ID を指定する設定があるとされています。依頼のメールのスレッドに下書きを付ければ、担当は返信の形で確かめて送れます。 フォームから来た依頼は、フォームに書かれた連絡先あての下書きにします。
人が確認する
配車の担当が確かめるのは、4か所です。
- 組み入れの案 … 便・重さの目安・積載の残り・回収先の
quoteを見て承認します。「いつもの倍」のような言葉は、台帳の普段の量と並べて見ます - 機密書類と回収漏れ … 案の無い一覧から、回収先に連絡します。機密書類は、処理の方法と立会いを決めてから便に入れます
- 空きの無い依頼 … 前後の便の空きを見て、回収先と日を相談します
- 返事の下書き … 回収の日と時間帯を確かめて送ります。自動では送りません
2番目の回収漏れは、運転手の記録を先に見ます。 出し忘れか、便が回らなかったかで、返事がまったく違います。
目標は、1,200件をならして1件1分です。
例外に対処する
| 起きること | 対応 |
|---|---|
| 回収先が台帳で引けない | 担当の一覧へ。初めての先なら新規の申し込みとして営業へ |
| 分類がどれにも当てはまらない | Other の出口から担当の一覧へ。捨てない |
| 機密書類の疑い | 他の分類があっても依頼全体を担当へ |
| 受け入れていない物が書かれている | not_accepted_text を出して担当へ。回収先に確かめる |
| 量が書かれていない | 台帳の普段の量で目安を置き、「量の記載なし」の印を付ける |
| 希望日の便に空きが無い | no_capacity。前後の便の空きを並べて担当へ |
| 同じ依頼がフォームとメールで二度届く | 重複の印を付け、1件として扱う |
| 出力が決めた形に合わない | 1回だけやり直し、だめなら担当へ |
| メールが1回に50通を超える | 残りは次の回に回る。急ぐ日は間隔を短くする |
2行目の「捨てない」を必ず設定してください。 捨てられた依頼は記録が残らず、回収先からの「まだ来ない」で初めて分かります。
記録を残す
- 依頼の原文(フォームの内容、メールの Message-ID と本文)と、受けた日時・経路
- 分類の結果と、抜き出した物件・品目・
quantity_text・quote - 引いた回収先と、計算した日付・重さの目安
- 組み入れの案、承認した人と時刻、担当が変えた便
- 回収先への返事の下書きと、送った日時
- 便ごとの、組み入れた重さの目安の合計と、実際の計量の重さ
最後の行で、換算の表が合っているかが分かります。 目安の精度は、AIではなくこの記録で上げます。
04実装レベルの3段階
最小構成では、組み入れの手間は減りません。 確かめるための段階です。 半自動化で、1件5分が3分程度になります。 文面を読んで種類を見分ける作業は無くなりますが、台帳を引いて便を探す作業が残ります。本格構成で1分になり、この段階が本記事の想定です。 差が出るのは、便の空きを担当の頭の中ではなく、記録から出せるようになるからです。 段階を飛ばさないでください。 半自動化の一覧を1か月見ると、台帳で引けない呼び方と、Other に落ちる依頼の型が分かります。そこを直してから組み入れの案を足すほうが、承認の手戻りが減ります。
05工数削減シミュレーション
導入後 1,200件 × 1分 ÷ 60 = 20 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 地域の事業所・商店・集合住宅を回る古紙の回収業者や古紙問屋で、定期の回収コースに加えて臨時の回収や追加の依頼がメール・電話・フォームでばらばらに届き、配車の担当がそれを読んでコースの表に書き込んでいる場合。依頼の書き方が「段ボール少し多め」「書類を箱で20」のようにまちまちで、量の見当と品目の確認に時間がかかっている場合。
- 回収先が数十か所に限られ、毎週同じ量を同じコースで回るだけで、臨時の依頼がほとんど無い場合。依頼をすでに自社の配車システムの画面から回収先に直接入れてもらえている場合。機密書類の処理だけを専門に受け、1件ごとに見積と立会いの段取りを組む場合。なお、回収の可否・料金・買取の価格、機密書類の処理の方法の判断はこの構成では代替できません。
07最小構成で試す方法
- 先月の依頼のメールとフォームから80件を選ぶ(機密書類・回収漏れ・管理会社の複数物件のものを必ず入れる)
- 手元の生成AIの画面に貼り、「依頼の種類を、臨時の回収・定期の追加・日程の変更・機密書類・回収漏れ・新規の申し込みのどれかに分類し、物件ごとの品目と量を書かれたとおりに抜き出してください。量を数に直さないでください」と指示する
- 当時の担当の扱い(どの便に入れたか、機密書類として扱ったか)と突き合わせる
- 抜き出した物件名で回収先の台帳を引けるかを見る
80件は必ずやってください。 n8n を組む前に、機密書類と回収漏れを取りこぼさないかと、物件名で台帳が引けるかを確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 当時の扱いと同じ分類になり、台帳も引ける | n8n で組む段に進む |
| 分類は合うのに台帳が引けない | 台帳の呼び方の問題。よみと別の呼び方の列を足す |
| 書類の処分が「臨時の回収」になる | 機密書類の説明の言い回しを増やす。構成は有効 |
2行目は、ほぼ必ず出ます。 管理会社の書く物件名と台帳の物件名が違うのは、AIとは関係のない台帳の問題です。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 見慣れない依頼が消える | Text Classifier の当てはまらないときの扱いを Other の出口にする |
| 書類の処分が普通の古紙の便に入る | 機密書類の説明に言い回しを並べ、迷ったら付けさせる |
| 「いつもの倍」が数になる | 量を書かれたとおりに残させ、換算は Code ノードで |
| 普段の品目が足される | 書かれていない品目を補わせない |
| 物件名で台帳が引けない | よみと別の呼び方の列を足す。部分一致で引かない |
| 引用された前回の依頼をもう一度読む | 引用と署名を除いてから渡す |
| 例から作った出力の形で空が許されない | JSON Schema で書く |
| 夕方の見込みが夜中に届く | ワークフローの時間帯を Asia/Tokyo にする |
| Slack のボタンを押しても続きが動かない | 公開の HTTPS、Interactivity の Request URL、Signing Secret を確かめる |
| 返事が自動で回収先に届く | 下書きまでにする。送るのは担当 |
上の3行が、この構成でいちばん起きやすい失敗です。 どれもエラーにならず、依頼が消えるか、機密書類が普通に積まれるか、便があふれるかで表に出ます。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 回収先の名前・住所・担当の名前と連絡先、依頼の文面、回収の曜日と量です。機密書類の中身そのものは扱いません。 扱うのは「機密書類の回収の依頼がある」という事実までです。
- 回収先の台帳をAIに渡さない … 照合は n8n の Data Table で行い、AIには依頼の文面だけを渡します
- 機密書類の依頼を自動で便に入れない … 処理の方法・立会い・証明の出し方を回収先と決めてから、担当が入れます
- 回収先への返事を自動で送らない … 下書きまでにし、担当が日と時間帯を確かめて送ります
- フォームの入力をそのまま信じない … 認証の無いフォームなので、台帳に無い回収先からの依頼は必ず担当が確かめます
- 回収漏れの責任をAIに決めさせない … 運転手の記録と回収先の話を担当が聞いて決めます
- 写真は担当の確認用にとどめる … 積まれた古紙の写真に、建物の中や人が写っていることがあります。AIに渡さず、必要な期間だけ残します
誤りが起きた場合のリスクは、依頼を取りこぼすことと、機密書類を普通の古紙として扱うことの2つです。 前者は Other の出口と夕方の承認待ちの一覧で、後者は迷ったら機密書類を付けさせることと、案を作らず担当に回すことで防ぎます。
10まず何から始めるか
1週目:台帳と換算の表を整える
回収先の台帳にビル名・物件名のよみと別の呼び方の列を足し、品目と単位ごとの重さの目安を自社の計量の記録から置きます。回収コースの表に、便ごとの積載の目安を書き足します。
2週目:依頼80件で試す
手元の生成AIの画面で分類と抜き出しをさせ、当時の扱いと突き合わせます。機密書類と回収漏れを取りこぼさないかを最優先で見ます。
3週目:フォームとメールの受けを作る
n8n の Form Trigger で回収の依頼のフォームを作り、Gmail のフィルタで依頼のラベルを付けます。分類と抜き出しの結果を一覧に書くところまで作り、組み入れは今までどおり担当が行います。
4週目:台帳との照合と組み入れの案をつなぐ
Data Table と Code ノードで回収先の照合と便の案を足し、Slack の承認は使わず、案を一覧で見比べます。
2か月目: Slack の承認と返事の下書き、夕方の見込みを足します。3か月目以降: 便ごとの重さの目安と計量の差を見て換算の表を直し、1件5分が何分になったかを実測します。「まだ来ない」の電話が減り、担当が休んだ日も組み入れが同じように回るようになった時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| 置ける項目(文字・長い文字・数値・日付・選択肢・ファイルなど)、認証に Basic 認証・n8n の利用者の認証・なしがあること、テストの URL と本番の URL の違い | n8n Docs: n8n Form Trigger | 2026-10-27 |
| ラベル・検索の条件・差出人で絞れ、既定は未読だけを拾い、1回に既定10件・最大50件で残りは次の回に回ること | n8n Docs: Gmail Trigger | 2026-10-27 |
分類の名前と説明を置け、複数の分類を付ける設定があり、当てはまらないときの既定が捨てる(Discard Item)で Other の出口に出す設定があること、システムプロンプトに {categories} で差し込めること | n8n Docs: Text Classifier | 2026-10-27 |
| 出力の形を項目の説明・JSON の例・JSON Schema で決められ、例から作るとすべての項目が必須になること、システムプロンプトを差し替えられること | n8n Docs: Information Extractor | 2026-10-27 |
| Anthropic Chat Model ノードのモデルの選択と、出力の長さ・温度などの設定 | n8n Docs: Anthropic Chat Model | 2026-10-27 |
| Data Table ノードの行の操作(追加・取得・更新・Upsert・条件に合う行があるか/無いか) | n8n Docs: Data table | 2026-10-27 |
| Code ノードが JavaScript と Python で書け、ノードの中からファイルの読み書きや HTTP の要求ができないこと | n8n Docs: Code | 2026-10-27 |
| Slack の中で承認・却下でき、承認できる人を限れ、誰が応じたかが残ること。公開の HTTPS、Interactivity の Request URL、Signing Secret が要ること | n8n Docs: Approvals in Slack | 2026-10-27 |
| 下書きの作成で宛先・件名・本文・スレッドの ID を指定できること | n8n Docs: Gmail draft operations | 2026-10-27 |
| 時間帯の既定(ワークフローの設定が無ければインスタンスの時間帯、自前は America/New York) | n8n Docs: Schedule Trigger | 2026-10-27 |
回収の可否、料金や買取の価格、機密書類の処理の方法は、自社の受け入れ基準と回収先との取り決めで決めてください。 本記事は n8n の公開ページで確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-1966)についてのご相談はこちらから。
