Aller au contenu
All articles
Setup

Lead Ads (Meta et LinkedIn)

Chaque formulaire soumis via vos publicités Facebook/Instagram (Meta Lead Ads) ou LinkedIn (Lead Gen Forms) devient un Lead dans le CRM, en utilisant votre propre application (modèle BYO).

L'intégration Lead Ads utilise VOTRE application et VOTRE page/compte publicitaire (c'est le modèle BYO, « bring your own app »). Quand quelqu'un remplit un formulaire lead dans une publicité Facebook/Instagram (Meta) ou LinkedIn, le CRM crée automatiquement un Lead et attribue un responsable par round-robin, exactement comme la capture publique via formulaire. Les données proviennent directement de votre compte publicitaire, sans intermédiation de notre part.

L'intégration démarre inerte : rien ne se passe tant que vous n'avez pas renseigné les identifiants et activé la connexion. L'App Secret et les jetons d'accès sont stockés chiffrés dans le CRM et ne vous sont jamais réaffichés.

Prérequis

  • Meta : une application sur developers.facebook.com, une Page Facebook qui diffuse les publicités, et les permissions leads_retrieval et pages_manage_metadata ; vous aurez besoin de l'App Secret et d'un jeton d'accès de page longue durée.
  • LinkedIn : une application sur linkedin.com/developers avec accès à la Lead Sync / Advertising API et un jeton d'accès OAuth avec le scope r_marketing_leadgen_automation.
  • Avoir déjà créé des formulaires Lead (Meta Lead Ads / LinkedIn Lead Gen Forms) dans vos campagnes.
  • Dans Sellio, un accès administrateur pour enregistrer les identifiants et activer l'intégration dans Paramètres → Intégrations.

Fonctionnement pour Meta (Facebook/Instagram)

Le webhook Meta N'ENVOIE PAS les données du formulaire. Il envoie seulement un identifiant (leadgen_id). À la réception, le CRM vérifie la signature de l'événement (HMAC-SHA256 du corps avec votre App Secret) puis RÉCUPÈRE le lead depuis la Meta Graph API en utilisant votre jeton d'accès de page, obtenant les champs soumis (field_data). Ces champs sont mappés vers les champs du Lead et le Lead est créé.

Configurer Meta : dans le tableau de bord Meta

  1. Créez (ou utilisez) une application sur developers.facebook.com. Dans Settings → Basic, copiez l'App Secret.
  2. Ajoutez le produit « Webhooks » et l'objet/produit Leadgen (Leads Access). Demandez les permissions leads_retrieval et pages_manage_metadata pour votre page.
  3. Générez un jeton d'accès de page longue durée pour la page qui diffuse les publicités (Graph API Explorer ou Business Manager).
  4. Gardez tout à portée de main : vous allez coller l'App Secret, le jeton de page et un « verify token » (une chaîne de votre choix) dans le CRM.

Configurer Meta : dans le CRM

  1. Ouvrez Paramètres → Intégrations et trouvez la carte « Meta Lead Ads (Facebook/Instagram) ».
  2. Verify token : choisissez une chaîne quelconque et saisissez-la. Vous utiliserez la MÊME valeur dans le tableau de bord Meta.
  3. App Secret et jeton d'accès de page : collez les deux (ils sont enregistrés ensemble, chiffrés) et cliquez sur « Enregistrer les identifiants ».
  4. Copiez l'« URL du webhook (Meta) » qui s'affiche.
  5. Retournez dans le tableau de bord Meta → Webhooks, collez cette URL comme Callback URL et votre verify token comme Verify Token. Meta effectue un handshake (GET), et le CRM répond au challenge si le verify token correspond.
  6. Abonnez-vous au champ « leadgen » de votre page. Revenez ensuite dans le CRM et cliquez sur « Activer ».

Configurer LinkedIn

Sur LinkedIn (Lead Gen Forms), créez une application sur linkedin.com/developers, demandez les produits Lead Sync / Advertising API, et générez un jeton d'accès OAuth avec le scope lead gen (r_marketing_leadgen_automation). Dans le CRM, sur la carte « LinkedIn Lead Gen Forms », collez le jeton d'accès (et en option l'organization URN), enregistrez, puis activez. Pointez votre automatisation (ou la récupération des réponses de formulaire) vers l'« URL entrante (LinkedIn) », en envoyant un JSON avec les champs du formulaire.

Mapping des champs

Chaque ligne de mapping relie le NOM d'un champ du formulaire publicitaire (à gauche) à un champ Lead (à droite, par api_name : email, name, phone, company, title…). Des valeurs par défaut sensées sont incluses : full_name → name, email → email, phone_number → phone, company_name → company. N'ajoutez des lignes que pour les champs personnalisés de votre formulaire. Si le formulaire envoie first_name et last_name séparément (courant sur LinkedIn), ils sont combinés dans name.

Example: Supposons que vous ayez un formulaire Meta avec full_name, email, phone_number, et un champ personnalisé « budget ». Mappez budget vers un champ Lead (segment, par exemple). Le reste est déjà mappé par les valeurs par défaut.
💡 La création est idempotente : le même lead n'est pas dupliqué. Le CRM dédoublonne par leadgen_id (nouvelle livraison du webhook) et par email. Si le formulaire n'inclut pas d'email, le lead est ignoré, car l'email est le seul champ Lead obligatoire. Si le champ « company » est renseigné, le CRM trouve ou crée l'Entreprise correspondante et la relie.

Traitez l'URL du webhook, l'App Secret et les jetons comme des secrets. Les signatures invalides sont rejetées (401). Sans le jeton d'accès de page, le CRM ne peut pas récupérer les données du lead depuis la Graph API, c'est pourquoi vous collez le jeton en même temps que l'App Secret. Une limitation à noter : la récupération native LinkedIn (s'abonner à leadNotifications puis récupérer les réponses via l'API) est documentée ici et peut être branchée ; aujourd'hui la route reçoit une charge utile de réponse de formulaire déjà normalisée.

Comment tester

  1. Meta : dans le tableau de bord Meta → Webhooks, le handshake (GET) valide déjà le verify token lorsque vous enregistrez la Callback URL. Utilisez ensuite le « Lead Ads Testing Tool » de Meta (developers.facebook.com/tools/lead-ads-testing) pour envoyer un lead de test sur votre formulaire.
  2. Vérifiez dans le CRM : un nouveau Lead devrait apparaître avec les champs mappés ; si une entreprise a été renseignée, l'Entreprise est trouvée/créée et reliée.
  3. LinkedIn : déclenchez (ou envoyez manuellement) une charge utile de réponse de formulaire vers l'« URL entrante (LinkedIn) » et vérifiez le Lead créé.

Dépannage

  • Le handshake Meta échoue : le verify token saisi dans le CRM doit être IDENTIQUE au Verify Token du tableau de bord Meta. Faites-les correspondre et enregistrez.
  • Vous recevez le webhook mais aucun Lead n'est créé : sans le jeton d'accès de page, le CRM ne récupère pas les field_data depuis la Graph API. Collez le jeton de page EN MÊME TEMPS que l'App Secret. Confirmez les permissions leads_retrieval/pages_manage_metadata et que vous êtes bien abonné au champ « leadgen » de la page.
  • Signature invalide (401) : l'App Secret dans le CRM diffère de celui de l'application Meta (la signature est HMAC-SHA256 du corps avec l'App Secret). Recollez le bon App Secret.
  • Un lead sans email est ignoré : l'email est le seul champ Lead obligatoire. Assurez-vous que le formulaire publicitaire comporte un champ email.
  • Les champs ne se remplissent pas : vérifiez le Mapping (nom du champ formulaire vers api_name du Lead). Sur LinkedIn, first_name + last_name sont combinés automatiquement dans 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.

Créer un compte gratuit
Lead Ads (Meta et LinkedIn) · Sellio