Salesforce AI システム

本システムは、PDF 文書(契約書、発注書、締結文書など)から Salesforce 上の 取引先・取引先責任者・納入商品 の作成および更新を自動化する AI システムです。ユーザーは PDF を Google Drive にアップロードするだけで、システムが AI により情報を自動抽出し、Salesforce へ登録します。

使い方content_copycheck_circle

本システムには 2 つの使い方 があります。

手動 Chatwork でコマンドを送信すると、システムがコマンドを受け取り、 即時に処理します。
自動 Google Drive 上で書類を準備しておくだけで、システムが毎日のスケ ジュールに従って自動的に処理します。

書類の準備content_copycheck_circle

いずれの方法でも、最初のステップは 書類の準備です。

Google Drive 上でフォルダを作成する

Google Drive を開き、該当する支店フォルダ内で Drive 上に直接、新しいフォルダを 1 つ作 成 します。
フォルダ名は Salesforce 上の取引先名と完全に同じ にしてください。

 

フォルダ名の例:〇〇クリニック

必ず Salesforce 上の名称を基準にしてください。
発注書 に記載された名称は使用しない でください。
書類上の名称は、Salesforce に登録されている名称と異なる場合がありま す。
システムはフォルダ名そのものを使って取引先を検索するため、名称が異なると見つけられ ません。
各フォルダには1件の注文が格納されます。
お客様が複数の注文をお持ちの場合は、そのお客様と同じ名前のフォルダを複数作成してください。

 

支店フォルダ:

拠点 データ入力窓口
大阪 SALEFORCE AUTOMATIC / Osaka /
福岡 SALEFORCE AUTOMATIC / Fukuoka /

書類のフォルダは、該当する支店 の中に追加してください。

*支店フォルダへのリンクは Chatwork に添付されています。

 

フォルダは必ず Google Drive 上で直接作成してください。
パソコン上で作成してからアップロードしないでください。

理由:パソコンでは同じ場所に 同名のフォルダを 2 つ作成できません。

1 つの取引先が 2件の発注を行った場合、
同名のフォルダを 2 つ作成できず、 2 つ目のフォルダは自動的に〇〇クリニック (1) に変更されてしまいます。

その結果、フォルダ名が Salesforce 上の名称と一致しなくなり、システムは 取引先を見つけられず、
そのフォルダについてエラーを報告します。

Google Drive では 同名のフォルダを 2 つ作成できる ため、このエラーを避けるにはDrive 上で直接作成してください。

 

*フォルダ名を誤って付けてしまった場合は、
Google Drive 上でフォルダ名を変更する だけで、システムが自動的に名称を更新します。やり直しは不要です。

フォルダ名を誤って付けてしまった場合は、Google Drive 上でフォルダ名を変更する だけで、
システムが自動的に名称を更新します。やり直しは不要です。

1 つのフォルダは 1 件の発注 を処理します。
1 つの取引先に 複数の発注 がある場合は、その件 数分のフォルダ を作成し、すべて取引先名と 同じ名前 を付けてください。

ファイル命名規則

フォルダには以下のファイルを入れてください。

ファイル ファイル名の先頭 必須
発注書 発注書-〇〇 必須 ✅
営業報告書 営業報告書-〇〇 任意
その他のファイル(確認事項・画像など) 自由 任意(SFに添付されます)

ファイル名の どの位置 にでも 発注書 または 営業報告書 の文字が含まれていれば、AI が読み取り情報を抽出します。先頭に付ける必要はありません。
いずれも認識される例:発注書-20250620.pdf、grits発注書.pdf、〇〇クリニック【発注書】.pdf
上記以外のファイル(発注書/営業報告書 を含まないもの)は、AI を経由せず、添付資料として直接 Salesforce にアップロードされます。
発注書のファイル名が全く異なる場合(例:contract.pdf や 注文書.pdf など、発注書 の文字を含まない場合)、システムは 認識できず、発注書ファイルが見つからないというエラーを報告します。
1 つのフォルダに発注書ファイルは 1 つだけ入れてください。
フォルダ内に 発注書 の文字を含むファイルが 2 つ以上ある場合、システムはエラーを報告し、不要なファイルを削除して 1 つだけ残すよう求めます。

注文処理待ち管理表

フォルダを作成し文書を Drive にアップロードすると、フォルダ情報が自動的に 注文処理待ち管理表 に反映されます(反映には約 1 分 かかります)。

注文処理待ち管理表は、処理待ちのフォルダ一覧を管理する表です。この表を開くことで、各フォルダの状態を確認できます。表の各列は以下のとおりです。

folder_id Google Drive 上のフォルダ ID
folder_name 付けたフォルダ名(取引先名)
branch 支店(Osaka / Fukuoka)
detected_at システムがフォルダのアップロードを検知した日時。
status フォルダの処理状態
pending : フォルダが記録され、処理待ち の状態。
次回の実行時(または手動コマンド時)に処理されます。
done : フォルダの 処理が成功 し、データが Salesforce に登録された状態。
failed : フォルダの 処理が失敗 した状態。error_message 列で理由を確認し、
案内に従って対処してください。
empty : フォルダが 空 で、処理するファイルがない状態。
created_by フォルダをアップロードした人。
processed_at システムがフォルダの処理を完了した日時。
error_message エラーの理由(処理失敗時)。

*注文処理待ち管理表へのリンクはChatworkに添付されています。

手動処理(コマンド)content_copycheck_circle

書類の準備 が完了したら、Chatwork からシステムに処理を指示します。
ルームのメッセージ 欄に コマンド を送信すると、システムがコマンドを受け取り、即時に処理します。

 

コマンドはすべて共通の構造です:@bot-sf/{action}/{folder_id}

 

{action} はシステムに実行させたい処理、
{folder_id} は 注文処理待ち管理表 のfolder_id 列の値です。

 

action は 3 種類 あります:

{action} 機能
run 例:@bot-sf/run/1AbC2DeFgHiJkLmNoPqR
Salesforce 上に 既に存在する 取引先に対して 納入商品 を作成します。
システムはフォルダ名をもとに Salesforce 上で取引先を検索します:
見つかった場合:
発注書 の情報から 納入商品 を新規作成し、
その取引先の 納入商品 に文書ファイルを添付します。
見つからなかった場合:
処理を中断し、エラーを報告します。Salesforce には何も作成されません。
new 例:@bot-sf/new/1AbC2DeFgHiJkLmNoPqR
Salesforce 上に まだ存在しない 取引先に使用します:
取引先 → 取引先責任者 → 納入商品 の順に作成します。
対象の取引先が存在しないことをご確認いただいたうえでご使用ください。

update 例:@bot-sf/update/1AbC2DeFgHiJkLmNoPqR
Salesforce 上に取引先は 既に存在する が、情報が 不足している 場合に使用します。
正式な書類が届く前に手動で取引先を作成し、名称と基本情報しか入力できていないケースが典型例です。
不足している情報を 取引先 と 取引先責任者 に補完します。既存の値は 上書きしません。
納入商品 は作成せず、注文処理待ち管理表 の状態も変更しません。
done を含むすべての状態で実行できます。

 

システムは、以下のように一度の呼び出しで複数のフォルダを同時に実行することができます:

この書き方は run・new・update のすべてで使用できます。

各フォルダ ID は 1 行に 1 つ ずつ記載し、いかなる記号でも区切らないでください(カン マやスペースなどは不要です)。 同一のコマンド内で同じ ID を重複して記載した場合、システムはエラーを報告し、処理を 実行しません。重複を削除したうえで、再度送信してください。

TIPS:フォルダのリストを処理する際に、IDを何度もコピーするのが面倒だと感じる場合は、{folder_id} を all に置き換えることで、pending 状態のフォルダをすべてスキャンし、一括で処理することができます。フォルダを個別に指定する必要はありません。
例:@botsf/run/all
*run アクションにのみ適用されます。

自動処理content_copycheck_circle

書類の準備が完了したら、それ以上の操作は不要 です。

システムは 毎日 0 時(00:00)に 1 回自動実行 され、
その日に Drive へアップロードされたすべてのフォルダ(pending 状態)を走査して処理します。
完了後、処理結果のレポートが Chatwork に送信 されます。

自動実行は常に run コマンドと同じ動作をします。つまり Salesforce 上に既に存在する取引先に対して納入商品 を作成するだけ です。
フォルダ名がどの取引先とも一致しない場合、そのフォルダは対処方法の案内とともに failed として記録されます。システムが取引先を自動作成することはありません。 新規の取引先を登録する場合は、new コマンドをご使用ください。

自動クリーンアップcontent_copycheck_circle

フォルダは Drive 上に残り続けるわけではありません。
処理の完了後、システムが自動的にクリーンアップを行い、作業領域と 注文処理待ち管理表 を整理します。
手動で削除していただく必要はありません。
クリーンアップは 1 日 3 回、00:00 · 08:00 · 16:00 に実行されます。
次の 両方 の条件を満たしたフォルダが対象となります:

 

  • 状態が done・failed・empty のいずれかであること。
  • システムがそのフォルダの処理を完了した時点から 8 時間 以上経過していること。

 

対象となったフォルダは Drive 上の作業領域から取り除かれ、注文処理待ち管理表 の該当行も削除されます。
クリーンアップの履歴は 「CLEANUP LOG」 シートで確認できます。

フォルダ内に保管しておきたいものがある場合は、
当日中 に取り出してください。処理完了から 8 時間を過ぎると、フォルダは作業領域から取り除かれます。

システムは PDF から何を処理するかcontent_copycheck_circle

AI は 発注書(および存在する場合は 営業報告書)を読み取り、取引先・取引先責任者・納入商品 の情報を抽出します。

以下は、システムが Salesforce に書き込む すべての項目 と、その情報源の一覧です。
項目名は Salesforce の画面上の表示と同じです。

取引先(Account)content_copycheck_circle

No. 項目名 情報源 備考
1 取引先名 Drive のフォルダ名 必須。 書類からは取得しません。update コマンドはこの項目を変更しません。
2 フリガナ 発注書 カタカナで登録されます。
3 郵便番号 発注書 NNN-NNNN 形式。〒 記号は付きません。
4 都道府県 発注書 書類の 「所在地」 欄から抽出されます。
5 市区町村 発注書 書類の 「所在地」 欄から抽出されます。
6 番地 発注書 書類の 「所在地」 欄から抽出されます。
7 電話番号 発注書 書類に記載されたハイフンをそのまま保持します。
8 年商 発注書 実際の円単位 で登録されます:6500万円 は 65000000 として記録されます。
9 従業員数 発注書 人数であり、金額ではありません。

new コマンドは 9 項目すべてを登録します。update コマンドは 8 項目を対象とします — 取引先名 は必須項目であり常に値が入っているため、対象外です。

取引先責任者(Contact)content_copycheck_circle

No. 項目名 情報源 備考
1 姓 発注書 必須。 読み取れない場合、システムは取引先責任者の処理全体をスキップします。最大 80 文字。
2 名 発注書 最大 40 文字。
3 役職 発注書 最大 128 文字。
4 フリガナ 発注書 最大 30 文字 — 超過した場合は切り詰めたうえで警告が表示されます。
5 電話番号 発注書 最大 40 文字。
6 卒業大学 営業報告書 最大 40 文字。営業報告書 がない場合は空欄になります。
7 卒業年度 営業報告書 最大 30 文字 — 超過した場合は切り詰めたうえで警告が表示されます。営業報告書 がない場合は空欄になります。

取引先責任者は該当の 取引先 に 自動的に紐付け られます。手動で選択する必要はありません。

納入商品(Asset)content_copycheck_circle

No. 項目名 情報源 備考
1 納入商品名 発注書 — 「基本サービスお申込み」 欄 必須。 読み取れない場合、システムは処理を中断してエラーを報告します。
2 受注日 発注書 発注書 から取得します。記載がない場合は 営業報告書 から取得します。
3 拠点 Drive の支店フォルダ Osaka → 大阪、Fukuoka → 福岡。
4 担当者 営業報告書 営業報告書 がない場合は空欄になります。
5 営業担当 営業報告書 営業報告書 がない場合は空欄になります。
6 アポ獲得者 営業報告書 営業報告書 がない場合は空欄になります。
7 信販会社 営業報告書 所定の一覧から選択されます。特定できない場合は空欄になります。営業報告書 がない場合も空欄になります。
8 支払回数 発注書 「二回目以降お支払」 の回数に 「初回お支払額」(1 回として計算)を 加算 した値です。
例:
71 回 + 1 = 72。
9 現金価格 発注書 金額項目。
10 分割手数料 発注書 金額項目。
11 1回目支払額 発注書 金額項目。
12 2回目以降支払額 発注書 金額項目。
13 初期費用 発注書 金額項目。
14 月額費用 発注書 金額項目。
15 検収状況 システムが自動設定 常に 未 が設定されます。書類からは取得しません。

納入商品 も該当の 取引先 に 自動的に紐付け られます。
金額項目は登録前に 円に換算 されます:千 = 1,000 · 万 = 10,000 · 億 = 100,000,000。漢数字にも対応しています。
営業報告書 から取得する項目 — 納入商品 の 4 項目 と 取引先責任者 の 2 項目 — は、フォルダにこのファイルがない場合 空欄 になります。処理自体は通常どおり行われ、レポートに警告が 1 行表示されます。

Chatwork での処理結果レポートの読み方content_copycheck_circle

各実行後、システムは集計レポートを 1 件 Chatwork に送信します。

各フォルダは次の 2 つのいずれかのケースになります。

成功した場合content_copycheck_circle

レポートには、フォルダ名とともに、
Salesforce 上で作成/更新されたレコード(取引先・取引先責任者・納入商品)への 直接リンク が表示されます。リンクをクリックして確認してください。

 

各フォルダの見出しには、実行されたコマンドを示すラベル が付きます:
run は (新規納入商品)、new は (新規取引先)、update は (更新)。

1 つのフォルダに対して複数のコマンドを実行できるため、このラベルによってレポートの内容を即座に判別できます。

 

update コマンドの場合はさらに、更新された項目とその値 が一覧で表示されます。
Salesforce を開いて確認する必要はありません。

エラーが発生した場合content_copycheck_circle

各エラー通知には、エラーの詳細な内容と、そのエラーに応じた再実行コマンドが添えられています。
案内に従って修正(フォルダ名の変更、不要なファイルの削除など)したうえで、
通知に記載されたコマンドをそのまま再送信し、フォルダを再実行してください。

 

通知には 2 つのレベル があります:

❌ エラー — そのフォルダは処理が中断され、Salesforce には何も登録されない(または一部のみ登録される)状態です。修正して再実行する必要があります。 ⚠️ 警告 — 主要な処理は Salesforce に正常に登録されており、一部の情報のみが不足している状態です。フォルダは処理済みとして扱われます。

以下は、システムが検知して Chatwork に通知するすべてのケースです。

グループ A : コマンドの記述ミス

このグループはシステムが 即座に 返答し、フォルダの処理は一切行われません。
フォルダ ID が 1 つでも誤っているとコマンド全体が停止 し、他の ID も実行されません。

No. ケース 対処方法
1 ❌ コマンドの構造が正しくありません。 @bot-sf/{action}/{folder_id} の形式で記載してください。
/ の欠落や @bot- の付け忘れは受け付けられません。
2 ❌ ボット「〇〇」は存在しません! ボット名は sf のみです。正しい例:@bot-sf/…
3 ❌ アクション「〇〇」は存在しません! {action}は run・new・update の 3 種類のみです。
4 ❌ フォルダIDが指定されていません。 最後の / の後が空欄になっています。{folder_id} を記載してください。
5 ❌ 「all」は「run」アクションでのみ使用できます。 all は run でのみ使用できます。
他
のコマンドはフォルダ ID を個別に指定してください。
6 ❌ 「all」は単独で指定してください。 all は 単独 で記載し、他の ID と併記しないでください。
7 ❌ コマンドの形式が正しくありません。フォルダIDは1行に1つずつ入力してください。 Drive の URL をそのまま貼り付けた、カンマが入っている、
1 行に複数の ID を書いた、などが主な原因です。
ID は 1 行に 1 つ ずつ記載してください。
8 ❌ フォルダIDが重複しています: 同じ ID が 2 回以上記載されています。
重複を削除して再送信してください。
9 ❌ 📁 〇〇 — 注文処理待ち管理表に存在しません ID をご確認ください。
アップロード直後のフォルダは、表に反映されるまで約
1 分 かかります。
10 ❌ 📁 〇〇 — このフォルダは既に処理済みです run と new のみが対象です。
処理済みのフォルダに情報を補完したい場合は
update をご使用ください。
すべての状態で実行できます。
グループ B : Google Drive のフォルダとファイル
No. ケース 対処方法
1 ❌ ERROR:{英語のエラーメッセージ} フォルダが削除されたか、アクセス権限が変更されています。
Drive 上でご確認ください。
英語で表示される唯一の通知 です。
2 ❌ ERROR:フォルダが空です。 フォルダにファイルがありません。
発注書(および必要に応じて 営業報告書)をアップロードしてから再実行してください。
状態は
empty として記録されます。
3 ❌ ERROR:発注書ファイルが2つ以上見つかりました。 不要なファイルを削除し、フォルダ内の 発注書 を 1 つだけ にしてください。
4 ❌ ERROR:「発注書」が見つかりません。 ファイル名には 発注書 の 文字が含まれている 必要があります。
位置はどこでも構いません。
グループ C : AI による書類の読み取り
No. ケース 対処方法
1 ❌ ERROR:ファイル「発注書」が回転しており、処理できません。 書類が逆さま、または横向きになっています。
まっすぐにスキャンし直してアップロードしてください。
2 ❌ ERROR:ファイル「発注書」が空白です。データが見つかりません。 帳票に記入されたデータがありません。
アップロードされたファイルをご確認ください。
3 ❌ ERROR:アップロードされたファイル「発注書」は発注書フォームではありません。 ファイル名は正しいものの、中身が別の書類です。
正しい 発注書 をアップロードしてください。
4 ❌ ERROR:発注書にサービス名が見つかりません。 「基本サービスお申込み」 欄が空欄であるか、手書き文字が判読できません。
必須情報のため、
update コマンドの場合も処理は中断されます。
5 ⚠️ ファイル「営業報告書」はアップロードされていません。 必須ではありませんが、ない場合は次の情報が空欄になります:
受注日・信販会社・アポ獲得者・営業担当・担当者・卒業大学・卒業年度。
6 ⚠️ ファイル「営業報告書」が回転しており、処理できません。 営業報告書 から取得する情報が空欄になります。
必要に応じてスキャンし直し、再実行してください。
7 ⚠️ ファイル「営業報告書」が空白です。データが見つかりません。 帳票にデータがありません。
該当の情報は空欄になります。
8 ⚠️ アップロードされたファイル「営業報告書」は営業報告書フォームではありません。 中身が 営業報告書 ではありません。
該当の情報は空欄になります。
9 ❌ ERROR:AIサービスに接続できませんでした。処理を中断しました。 書類側の問題ではなく、AI サービスの一時的な過負荷です。
フォルダは
pending のまま維持されます。
しばらく時間をおいてからコマンドを再送信してください。
未処理のフォルダ件数もレポートに表示されます。
グループ D : Salesforce への登録
No. ケース 対処方法
1 ❌ ERROR:取引先が見つかりませんでした。 まずフォルダ名をご確認ください。多くは誤字が原因です。
Drive 上で名称を修正し、約 1 分お待ちいただいてから run を再実行してください。
本当に新規の取引先であれば
new をご使用ください。
2 ❌ ERROR:取引先の新規登録に失敗しました。 Salesforce が既存の取引先との重複を検知し、新規作成をブロックしました。
既存のお客様であれば
run を、フォルダ名が誤っている場合は名称を修正してから再実行してください。
3 ⚠️ 取引先責任者の作成に失敗しました。手動で対応してください: Salesforce が取引先責任者の作成を拒否しました。
取引先 と 納入商品 は通常どおり作成されています。
取引先責任者は
Salesforce 上で手動作成してください。
4 ⚠️ 取引先責任者はスキップしました。発注書から代表者の姓を読み取れなかったため… 発注書 から代表者の 姓 を読み取れませんでした。
必須項目のため、システムが名前を推測することはありません。
書類の代表者欄をご確認ください。
5 ⚠️ 取引先責任者はスキップしました。この取引先には取引先責任者が〇件登録されており… 取引先責任者が 2 名以上登録されており、発注書 の代表者名と一致する方を特定できませんでした。
Salesforce 上で直接ご確認・ご修正ください。
6 ⚠️ 文字数の上限を超えたため一部を切り詰めて登録しました: どの項目が何文字から何文字に切り詰められたかが通知に表示されます。
Salesforce で該当箇所の内容をご確認ください。
7 ❌ ERROR:取引先情報の更新に失敗しました。 Salesforce が更新を拒否しました。
通知に記載されたエラー内容をご確認のうえ、
update コマンドを再送信してください。
8 ⚠️ 取引先責任者の作成に失敗しました: 取引先責任者が未登録のため新規作成を試みましたが、Salesforce に拒否されました。
取引先 の更新は行われています。
9 ⚠️ 取引先責任者の更新に失敗しました: Salesforce が取引先責任者の更新を拒否しました。
取引先 の更新は行われています。

よくある質問content_copycheck_circle

1 日に何フォルダまでアップロードできますか?
上限はありません。1 日に何フォルダでもアップロード可能です。
run と new はどう使い分けますか?
Salesforce 上に 既に存在する 取引先には run、まだ存在しない 取引先には new をご使用ください。判断がつかない場合はまず run をお試しください。取引先が見つからなければシステムが処理を中断して通知しますので、その時点で new に切り替えても遅くはありません。まだ何も作成されていない状態です。
run を実行済みですが、取引先の情報を補完したい場合はどうすればよいですか?
@bot-sf/update/{folder_id} を送信してください。このコマンドは done を含む すべての状態 で実行できるため、いつでも補完していただけます。1.2 をご覧ください。
update コマンドで手入力したデータが失われることはありませんか?
ありません。このコマンドは 空欄の項目にのみ入力 します。Salesforce 上で既に値が入っている項目は、書類の記載内容が異なっていてもそのまま維持されます。
AI サービスに接続できないと通知が来ました。どうすればよいですか?
書類側の対応は不要です。AI サービスの一時的な障害であり、お客様側の問題ではありません。該当のフォルダは pending のまま維持されますので、しばらく時間をおいてから通知に記載されたコマンドを再送信してください。
フォルダ名を間違えて付けてしまった場合はどうすればよいですか?
Google Drive 上で、Salesforce の取引先名と一致するようにフォルダ名を変更するだけで結構です。約 1 分後にシステムが新しい名称を 注文処理待ち管理表 に反映しますので、その後コマンドを再送信してください。既に処理が完了し、誤ったデータが Salesforce に登録されている場合は、システム管理者にご連絡ください。
アップロードしたらいつ結果が届きますか?
Chatwork でコマンドを送信した場合は 即時 に結果が届きます。自動実行に任せる場合は翌朝に結果が届きます — 00:00 を過ぎてアップロードした場合は、さらに 1 日お待ちいただくことになります。
Chatwork の通知が届かない場合は?
システムの Chatwork ルームに参加しているかご確認ください。参加済みの場合は、システム管理者にお問い合わせください。
PDF のスキャンが不鮮明・傾いている場合でも読み取れますか?
AI は低品質のスキャンでもある程度読み取ることができますが、精度が下がる場合があります。できるだけ鮮明・まっすぐにスキャンしてください。
フォルダが Google Drive から消えてしまいました。
自動クリーンアップの動作です。処理が完了して 8 時間を過ぎたフォルダは作業領域から取り除かれ、注文処理待ち管理表 からも削除されます。1.4 をご覧ください。

重要な注意事項content_copycheck_circle

AI は PDF の読み取りおよび情報抽出の過程で誤りを犯す可能性があります。特に 手書きの文書 では、文字が判読困難な場合、AI が 情報を抽出できず、帳票の一部の項目が 空欄 になったり 誤って入力 されたりすることがあります。

そのため、結果通知を受け取った後は、ご使用前に AI が Salesforce 上に作成したレコードを再確認 し、情報が正確であることを確認してください。

特に 金額 の項目にご注意ください。AI が最も読み誤りやすく、金額の誤りは影響も最も大きい箇所です。
数値をご使用になる前に、発注書と照合してください。