ADVERTISEMENT

【Salesforce】Web-to-リードが登録されない時のフォーム設定と重複ルール確認

【Salesforce】Web-to-リードが登録されない時のフォーム設定と重複ルール確認
🛡️ 超解決

Webサイトから見込み客情報をSalesforceに自動登録できる「Web-to-リード」機能は、営業活動の効率化に欠かせないツールです。しかし、設定したはずのフォームからリードが登録されない、特定のデータだけ取り込まれないといったトラブルが発生することがあります。本記事では、Web-to-リードが登録されない原因を、フォーム設定と重複ルールの観点から切り分ける方法を解説します。エラーの把握や設定の見直しに役立つ具体手順を、実際の操作画面を想定しながらまとめました。

【要点】この記事で確認すること

  • 最初に見る場所: Salesforceの「設定」→「Web-to-リード」で生成したHTMLフォームのコードに誤りがないか、必須項目が不足していないかを確認します。
  • 切り分けの軸: 問題がフォーム側(HTMLの記述ミス、CRM項目との不一致)なのか、Salesforce側(重複ルール、項目の必須設定、セキュリティ制限)なのかを明確にします。
  • 注意点: 会社のSalesforce環境では、重複ルールやカスタム項目の設定が管理者によって制御されている場合があります。特に重複ルールでブロックされるケースは、設定変更に管理者権限が必要なため、安易にルールを無効化せず、必ず管理者に相談してください。

ADVERTISEMENT

1. Web-to-リードの基本仕組みと登録失敗の全体像

Web-to-リードは、公開Webサイト上のフォームから送信されたデータを、Salesforceのリードオブジェクトに自動的に挿入する機能です。Salesforce側であらかじめHTMLフォームのコードを生成し、それを自社サイトに埋め込むことで動作します。登録が行われない原因は、大きく分けて(1)フォームのHTMLコードに問題がある、(2)Salesforce側の設定(必須項目、重複ルール、割り当てルールなど)で弾かれている、(3)ネットワークやブラウザの制限で送信が完了していない、の3つに分類されます。本記事では、特に(1)と(2)に焦点を当てて詳しく見ていきます。

2. フォーム設定の問題を確認する手順

まず、フォームのHTMLコードが正しく生成され、正しい場所に設置されているかを確認します。以下の手順でチェックを行ってください。

2-1. SalesforceでWeb-to-リードHTMLを再生成する

  1. Salesforceに管理者またはシステム管理者権限でログインします。
  2. 画面右上の歯車アイコンをクリックし、「設定」を選択します。
  3. 「設定」の検索ボックスに「Web-to-リード」と入力し、クイック検索から「Web-to-リード」を開きます。
  4. 「Web-to-リードHTMLの作成」をクリックし、必要なリード項目(例:会社名、姓、メールアドレス)を選択して、フォームコードを再生成します。
  5. 生成されたHTMLコードをコピーし、既にサイトに設置しているコードと比較します。特に隠し項目「oid」や「retURL」の値が正しいか、項目名(name属性)がSalesforceのAPI参照名と一致しているかを確認します。

2-2. HTMLコードの誤りをチェックするポイント

  • 必須項目の欠落: 生成時に「姓」「会社名」などを必須に設定していた場合、フォームにその項目がないとリードは作成されません。ただし、Salesforce側で「姓」はデフォルトで必須項目です。フォームに「姓」フィールドが含まれているか確認してください。
  • oid(組織ID)の誤り: フォームの隠しフィールド「oid」には組織のIDが自動で挿入されます。別の組織のコードを誤って使っていないか確認します。
  • 特殊文字やエンコード: フォームのaction属性に「https://webto.salesforce.com/servlet/servlet.WebToLead?encoding=UTF-8」と正しく指定されているか、エンコードが適切かを確認します。
  • 同一ページ内でのフォーム重複: 同じページに複数のWeb-to-リードフォームがある場合、idの重複などで予期しない動作をすることがあります。原則1ページに1フォームとします。

2-3. フォーム送信テストとエラー内容の確認

実際のWebサイトからテストデータを送信し、結果を確認します。Salesforceの「リード」タブで新規リードが作成されているか確認してください。もし作成されていない場合、ブラウザの開発者ツール(F12)でネットワークタブを開き、送信リクエストとレスポンスを確認します。正常な場合、HTTPステータスコード200と「リードが正常に作成されました」というメッセージが返ってきます。エラーメッセージが表示される場合は、その内容を記録し、以降のトラブルシューティングに役立てます。

3. 重複ルールが原因でリードが作成されないケース

Web-to-リードでフォームからデータを送信しても、Salesforceの重複ルールに引っかかるとリードは作成されず、既存のリードが更新されるか、何も起こらないように見えます。重複ルールは、同じメールアドレスや会社名・電話番号の組み合わせなど、管理者が設定した条件に基づいて重複を検出し、新規作成をブロックしたり、既存レコードを更新したりします。

3-1. 重複ルールの特定方法

  1. Salesforce設定の検索ボックスに「重複ルール」と入力し、「重複ルール」を開きます。
  2. 「リード」オブジェクトに対する重複ルールが有効になっているか確認します。ルールが複数ある場合は、それぞれの条件を確認します。
  3. ルールの「一致条件」で、例えば「メールアドレスが完全一致」などが設定されている場合、フォームから送信されたメールアドレスが既存のリードと一致すると、新規作成がブロックされます。
  4. 重複ルールの「アクション」には「ブロック」「警告」「重複レコードの許可」があります。「ブロック」の場合、リードは作成されず、ユーザーにはエラーメッセージが表示されないことがあります。

3-2. 重複ルールによる登録失敗の具体例

状況 原因 結果
既存リードと同じメールアドレスで申し込み 重複ルール(メールアドレス一致+ブロック) 新規リードは作成されず、既存リードは更新されない(ブロック時)
同じ会社名、同じ電話番号で申し込み カスタム重複ルール(複数項目一致) リード作成失敗、管理者に通知が行く場合あり
フォーム送信後、画面は成功表示だがリードなし 重複ルールによりリードが作成されず、かつエラーがユーザーに表示されない設定 ユーザーは成功したと思い込むが、実際にはリードが取得できない

4. その他のSalesforce側設定で登録されない原因

フォームコードに問題がなく、重複ルールにも抵触していないのにリードが作成されない場合、以下の設定を確認します。

  • 必須項目の不足: Salesforceのリードオブジェクトで「姓」は標準で必須です。また、管理者がカスタム項目を必須に設定している場合があります。フォームでその項目が送信されていないと、リード作成に失敗します。
  • 割り当てルール: リードが作成された後、自動割り当てルールで特定の担当者に割り当てられますが、割り当てルールが正しく設定されていないと、リード自体は作成されるがキューに留まり、見つけにくくなることがあります。ただし、今回は「登録されない」という観点なので、割り当てルールが直接の原因にはなりにくいですが、念のため確認します。
  • レコードタイプとビジネスプロセス: フォームでレコードタイプを指定している場合、そのレコードタイプが正しく存在し、ユーザのプロファイルでアクセス権があるかを確認します。
  • Apexトリガやフロー: リード作成前後にカスタムロジックが実行されている場合、例外が発生してリード作成がロールバックされることがあります。システム管理者が監視ログやデバッグログを確認する必要があります。

5. トラブルシューティングの全体的な流れ

  1. 実際にフォームからテストデータを送信し、リードが作成されるか確認します。作成されない場合は、ブラウザの開発者ツールでネットワークタブを確認し、レスポンスを取得します。
  2. レスポンスにエラーメッセージがある場合は、その内容を基に原因を特定します。一般的なエラーとして「必須項目が不足しています」「重複レコードが検出されました」などがあります。
  3. エラーがない場合、Salesforce設定の「Web-to-リード」で生成したHTMLと現状のフォームコードを比較します。特にoidと項目名(API参照名)が正しいか確認します。
  4. Salesforceの「リード」オブジェクトで、手動で同じデータを入力して作成できるか試します。手動でも作成できない場合は、項目の必須設定や権限の問題が考えられます。
  5. 手動で作成できる場合、重複ルールを一時的に無効化してテストします。ただし、本番環境では管理者のみが実施できる操作です。重複ルールが原因と判明したら、ルールの条件を見直すか、Web-to-リード専用の重複ルールを別途作成するなどの対応を管理者と相談します。

6. 管理者に確認すべきポイントとよくある質問(FAQ)

トラブルが解決しない場合、以下の情報をSalesforce管理者に伝えるとスムーズです。

  • フォームから送信したテストデータの具体的な値(メールアドレス、会社名など)
  • ブラウザの開発者ツールで取得したリクエストとレスポンスの内容
  • リードが作成された場合とされなかった場合の、送信日時とユーザーエージェント情報
  • Salesforce側で有効な重複ルールのリストと、そのアクション設定(ブロックか警告か)

よくある質問

Q: フォーム送信後に「リードが作成されました」と表示されるのに、Salesforceにリードがありません。
A: 重複ルールにより新規作成がブロックされ、既存レコードが更新されている可能性があります。または、リード作成後に割り当てルールやApexトリガで別オブジェクトに変換・削除されている場合もあります。管理者に依頼して監査ログを確認してください。

Q: Web-to-リードでファイル添付はできますか?
A: 標準機能ではできません。添付ファイルが必要な場合は、別のフォームツール(例えばGoogle Formsや独自フォーム)を使い、API経由でSalesforceに取り込む方法を検討してください。

Q: 重複ルールが原因で登録できない場合、ユーザーにエラーを表示するにはどうすればよいですか?
A: 重複ルールのアクションを「警告」に設定すると、重複時もリードが作成され、ユーザーにはエラー表示されません。ブロック時にユーザーに通知したい場合は、カスタムのエラーページを作成するか、Web-to-リードの代わりにAPIを使ったフォーム連携を検討します。

7. まとめ

Web-to-リードが登録されない原因は、フォームのHTMLコードミス、必須項目の欠落、重複ルールによるブロック、その他のSalesforce設定が大半です。まずは正しく生成されたHTMLコードと実際のフォームを比較し、次に重複ルールの有無と条件を確認するという手順で切り分けを行ってください。フォームの修正や重複ルールの調整には管理者権限が必要なケースが多いため、適宜管理者に相談しながら進めることをおすすめします。日頃からテスト環境で送信テストを実施し、送信ログを保存する習慣をつけておくと、トラブル発生時に迅速な原因特定が可能になります。


ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。

ADVERTISEMENT