コンテンツへスキップ
All articles
Setup

リード獲得広告(MetaおよびLinkedIn)

Facebook/Instagram広告(Meta Lead Ads)またはLinkedIn広告(Lead Gen Forms)から送信されたすべてのフォームが、自身のアプリを使用してCRM内でリードになります(BYOモデル)。

リード獲得広告の連携は、お客様ご自身のアプリとページ/広告アカウントを使用します(BYO、つまり「自分のアプリを持ち込む」方式)。誰かがFacebook/Instagram(Meta)またはLinkedIn広告のリードフォームに入力すると、CRMは公開フォームでのキャプチャと同様に、自動的にリードを作成しラウンドロビンで担当者を割り当てます。データはお客様の広告アカウントから直接届き、当社側での仲介は一切ありません。

この連携は最初は無効な状態で始まります。認証情報を入力してオンにするまで何も起こりません。App Secretとアクセストークンは暗号化されてCRMに保存され、再表示されることはありません。

前提条件

  • Meta:developers.facebook.comのアプリ、広告を配信しているFacebookページ、およびleads_retrievalとpages_manage_metadataの権限。App Secretと長期有効なページアクセストークンが必要です。
  • LinkedIn:linkedin.com/developersのアプリでLead Sync / Advertising APIへのアクセス権を持ち、r_marketing_leadgen_automationスコープのOAuthアクセストークンが必要です。
  • キャンペーンで作成済みのリードフォーム(Meta Lead Ads / LinkedIn Lead Gen Forms)があること。
  • Sellioでは、認証情報を保存し設定 → 連携で連携を有効化するための管理者権限。

Meta(Facebook/Instagram)の仕組み

Metaのwebhookはフォームデータそのものを送信しません。識別子(leadgen_id)のみを送信します。受信時、CRMはイベントの署名を検証し(App SecretによるボディのHMAC-SHA256)、その後お客様のページアクセストークンを使ってMeta Graph APIからリードを「取得」し、送信されたフィールド(field_data)を取り出します。それらのフィールドはリードフィールドにマッピングされ、リードが作成されます。

Metaの設定:Metaダッシュボード側

  1. developers.facebook.comでアプリを作成(または既存のものを使用)します。設定 → 基本設定でApp Secretをコピーします。
  2. 「Webhooks」プロダクトとLeadgenオブジェクト/プロダクト(Leads Access)を追加します。ページに対してleads_retrievalとpages_manage_metadataの権限をリクエストします。
  3. 広告を配信しているページの長期有効なページアクセストークンを生成します(Graph API ExplorerまたはBusiness Manager)。
  4. すべての情報を手元に用意しておきます。App Secret、ページトークン、「verify token」(任意の文字列)をCRMに貼り付けることになります。

Metaの設定:CRM側

  1. 設定 → 連携を開き、「Meta Lead Ads(Facebook/Instagram)」カードを見つけます。
  2. Verify token:任意の文字列を選んで入力します。Metaダッシュボードでも「同じ値」を使用します。
  3. App Secretとページアクセストークン:両方を貼り付けます(一緒に暗号化されて保存されます)。「認証情報を保存」をクリックします。
  4. 表示された「Webhook URL(Meta)」をコピーします。
  5. Metaダッシュボード → Webhooksに戻り、そのURLをCallback URLとして、verify tokenをVerify Tokenとして貼り付けます。Metaはハンドシェイク(GET)を実行し、verify tokenが一致すればCRMがチャレンジに応答します。
  6. ページの「leadgen」フィールドを購読します。その後CRMに戻り「有効化」をクリックします。

LinkedInの設定

LinkedIn(Lead Gen Forms)では、linkedin.com/developersでアプリを作成し、Lead Sync / Advertising APIプロダクトをリクエストして、lead genスコープ(r_marketing_leadgen_automation)付きのOAuthアクセストークンを生成します。CRMの「LinkedIn Lead Gen Forms」カードでアクセストークン(任意で組織URN)を貼り付け、保存して有効化します。自動化(またはフォーム回答の取得処理)を「受信URL(LinkedIn)」に向け、フォームフィールドを含むJSONを送信します。

フィールドマッピング

各マッピング行は、広告フォームのフィールド「名前」(左側)をリードフィールド(右側、api_nameで指定:email、name、phone、company、titleなど)に紐づけます。妥当なデフォルトが用意されています:full_name → name、email → email、phone_number → phone、company_name → company。フォーム内のカスタムフィールドのみ行を追加してください。フォームがfirst_nameとlast_nameを別々に送信する場合(LinkedInでよくあるケース)、それらはnameとして結合されます。

Example: 例えば、Metaのフォームにfull_name、email、phone_number、カスタムフィールド「budget」がある場合、budgetをリードフィールド(例えばsegment)にマッピングします。残りはデフォルトで既にマッピングされています。
💡 作成は冪等です。同じリードが重複することはありません。CRMはleadgen_id(webhookの再配信時)とメールアドレスで重複排除します。フォームにメールアドレスが含まれていない場合、リードは無視されます。メールアドレスがリードの唯一の必須フィールドだからです。「company」フィールドが入力されている場合、CRMは該当する会社を検索または作成してリンクします。

webhook URL、App Secret、トークンはシークレットとして扱ってください。無効な署名は拒否されます(401)。ページアクセストークンがないと、CRMはGraph APIからリードデータを取得できません。そのためApp Secretと一緒にトークンを貼り付ける必要があります。1つ留意点があります。ネイティブのLinkedIn取得(leadNotificationsを購読し、その後API経由で回答を取得する方式)はここでドキュメント化されており組み込み可能ですが、現在このルートは既に正規化されたフォーム回答ペイロードを受け取る仕様です。

テスト方法

  1. Meta:Metaダッシュボード → Webhooksで、Callback URLを保存する際にハンドシェイク(GET)がすでにverify tokenを検証しています。その後、Metaの「Lead Ads Testing Tool」(developers.facebook.com/tools/lead-ads-testing)を使って、フォームにテストリードを送信します。
  2. CRMで確認:マッピングされたフィールドを持つ新しいリードが表示されるはずです。会社情報が届いていれば、会社が検索/作成されリンクされます。
  3. LinkedIn:フォーム回答ペイロードを「受信URL(LinkedIn)」に発火(または手動送信)し、作成されたリードを確認します。

トラブルシューティング

  • Metaのハンドシェイクが失敗する:CRMに入力したverify tokenは、Metaダッシュボードのverify tokenと「完全に一致」している必要があります。一致させて保存してください。
  • webhookは受信するがリードが作成されない:ページアクセストークンがないと、CRMはGraph APIからfield_dataを取得できません。ページトークンをApp Secretと「一緒に」貼り付けてください。leads_retrieval/pages_manage_metadataの権限と、ページの「leadgen」フィールドを購読していることを確認してください。
  • 無効な署名(401):CRM内のApp SecretがMetaアプリのものと異なります(署名はApp Secretを使ったボディのHMAC-SHA256です)。正しいApp Secretを貼り付け直してください。
  • メールアドレスのないリードは無視される:メールアドレスがリードの唯一の必須フィールドです。広告フォームにメールアドレスフィールドがあることを確認してください。
  • フィールドが入力されない:マッピング(フォームフィールド名からリードのapi_nameへ)を確認してください。LinkedInでは、first_name + last_nameが自動的にnameに結合されます。

Open this article inside the system

Read it and want to see it working?

The account is free and the whole manual is available inside the system, with an assistant that answers from this very content.

無料アカウントを作成
リード獲得広告(MetaおよびLinkedIn) · Sellio