Pour activer l'API Conversions Meta (CAPI) sur Shopify, le plus simple est d'ouvrir l'application Facebook & Instagram et de régler le partage de données sur « Maximum » (ou « Enhanced » au minimum). Shopify envoie alors les événements à Meta depuis ses serveurs, en plus du pixel. Il reste ensuite deux vérifications indispensables : chaque achat doit être dédupliqué (même nom d'événement, même identifiant côté navigateur et côté serveur), et la qualité de correspondance des événements doit être suivie. Un conteneur server-side ne se justifie que si vous avez besoin de plus de contrôle, et à condition de ne pas envoyer les mêmes événements deux fois.
Pixel Meta et API Conversions : pourquoi les deux
Le pixel Meta est un script exécuté dans le navigateur. Il capte les actions du visiteur, mais il dépend de ce navigateur : bloqueurs, cookies limités, connexion coupée, page fermée avant l'envoi.
L'API Conversions envoie les mêmes événements depuis un serveur. Comme le résume la page d'aide de Shopify sur le partage de données avec Facebook, les données envoyées de serveur à serveur ne peuvent pas être bloquées par les bloqueurs de publicité du navigateur.
Les deux se complètent. Le pixel apporte des signaux propres au navigateur, le serveur apporte la fiabilité. Meta fusionne ensuite les deux flux, à condition qu'ils soient correctement dédupliqués.
Les trois niveaux de partage de données de l'application Shopify
| Niveau | Ce qui est activé | Notre avis |
|---|---|---|
| Standard | Pixel Meta uniquement | Insuffisant dès que vous faites de la publicité |
| Enhanced | Pixel + API Conversions, avec informations client (nom, email, téléphone, localisation) | Le minimum |
| Maximum | Tout Enhanced + les dernières technologies publicitaires de Meta | Notre réglage par défaut |
Pour modifier le niveau : dans l'administration Shopify, Canaux de vente > Facebook & Instagram > Paramètres > Paramètres de partage des données, puis choisissez le niveau. Shopify rappelle que vous devez informer vos clients de ce partage dans votre politique de confidentialité.
Installation pas à pas avec l'application native
- Faites l'inventaire des envois existants. Cherchez tout pixel Meta dans
theme.liquid, dans Paramètres > Événements clients (pixels personnalisés), dans Google Tag Manager et dans les applications tierces. Notez-les. - Installez ou mettez à jour l'application Facebook & Instagram et connectez votre portefeuille Business, votre compte publicitaire et votre pixel. Reprenez le pixel existant qui a de l'historique plutôt que d'en créer un nouveau.
- Réglez le partage de données sur Maximum.
- Vérifiez la bannière cookies. Elle doit transmettre le choix du visiteur à l'API de confidentialité client de Shopify, pour que les envois publicitaires respectent le consentement.
- Supprimez les pixels redondants repérés à l'étape 1.
- Passez une commande test (produit à petit prix ou code de réduction) et suivez-la dans le Gestionnaire d'événements.
- Attendez quelques jours de trafic réel avant de juger la qualité de correspondance et la cohérence des chiffres.
Vérifier dans le Gestionnaire d'événements
Dans le Gestionnaire d'événements de Meta, ouvrez votre pixel (jeu de données) et contrôlez :
- L'onglet Vue d'ensemble : pour l'événement Purchase, les sources doivent afficher à la fois le navigateur et le serveur.
- La déduplication : Meta indique pour chaque événement si les envois navigateur et serveur sont bien dédupliqués. Un taux faible signale des identifiants qui ne correspondent pas.
- L'onglet Tester les événements : il permet de voir en direct les événements reçus pendant votre navigation test.
- L'onglet Diagnostics : il remonte les problèmes détectés (paramètres manquants, doublons, valeurs incohérentes).
- La qualité de correspondance : la note de qualité de correspondance des événements, sur 10, pour chaque événement.
La déduplication pixel/CAPI, expliquée simplement
Quand un achat est envoyé à la fois par le navigateur et par le serveur, Meta doit comprendre qu'il s'agit d'un seul achat. Selon la documentation officielle de Meta sur la déduplication, la méthode recommandée repose sur deux paramètres identiques des deux côtés :
- le nom de l'événement (
eventcôté pixel,event_namecôté serveur), par exemplePurchase; - l'identifiant d'événement (
eventIDcôté pixel,event_idcôté serveur), unique pour chaque action.
Meta ne déduplique que les événements reçus dans les 48 heures suivant le premier événement portant cet identifiant. Une méthode alternative, basée sur les paramètres fbp ou external_id, existe mais fonctionne dans moins de cas.
Avec l'application native seule, Shopify gère la déduplication pour vous. Les problèmes apparaissent quand plusieurs systèmes envoient les mêmes événements : application native + pixel collé dans le thème, ou application native + conteneur server-side. Chacun génère alors ses propres identifiants, et Meta compte deux achats.
Application native ou GTM server-side : le comparatif
| Critère | Application native Shopify | GTM server-side |
|---|---|---|
| Coût | Gratuit | Hébergement mensuel (prestataire ou Google Cloud) |
| Mise en place | Moins d'une heure | Plusieurs jours |
| Déduplication | Gérée automatiquement | À configurer soi-même |
| Contrôle des données envoyées | Limité | Complet |
| Enrichissement (marge, nouveaux clients) | Non | Oui |
| Autres plateformes | Non (une application par régie) | Oui, dans le même conteneur |
| Risque de double envoi | Faible si aucun autre pixel | Élevé si l'application native envoie aussi |
Notre recommandation : commencez par l'application native en partage Maximum, bien vérifiée. Passez au server-side quand vous avez un besoin précis (plusieurs régies à centraliser, valeur de conversion basée sur la marge, filtrage de données). Nous détaillons ces options dans l'article sur le tracking server-side.
Et la passerelle API Conversions de Meta ?
Meta propose aussi sa propre passerelle, hébergée dans votre environnement cloud, qui relaie les événements du pixel vers l'API Conversions sans configuration de balises. C'est une option intermédiaire : plus simple qu'un conteneur GTM, mais limitée à Meta. Sur Shopify, elle a peu d'intérêt tant que l'application native fonctionne correctement, puisque cette dernière couvre déjà l'essentiel, gratuitement. Elle se justifie surtout sur des sites hors Shopify qui n'ont pas d'intégration native.
Comment éviter le double envoi en passant au server-side
C'est le piège classique. Voici la méthode pour migrer proprement.
- Choisissez une seule source par couche : une source navigateur (le pixel) et une source serveur (le conteneur). Jamais deux sources serveur pour le même événement.
- Générez l'identifiant d'événement une seule fois, dans le navigateur ou dans la couche de données, et transmettez-le au pixel et au serveur.
- Réglez l'application native en conséquence. Si le conteneur prend le relais côté serveur, l'application ne doit plus envoyer les mêmes événements par l'API Conversions. Selon votre configuration, cela passe par le niveau de partage de données ou par la désactivation de l'application pour ce pixel : testez chaque réglage avec l'outil de test des événements.
- Faites tourner les deux systèmes sur deux pixels différents pendant la phase de test, ou validez sur une période courte, en comparant avec les commandes Shopify.
- Surveillez le ratio achats Meta / commandes Shopify chaque jour la première semaine. Un bond soudain signale un double comptage.
Améliorer l'Event Match Quality
La qualité de correspondance dépend des informations envoyées avec chaque événement. Pour la faire progresser :
- Envoyez l'email et le téléphone hachés sur les événements où vous les avez : achat, bien sûr, mais aussi début de paiement si le client est connecté ou a saisi son email.
- Transmettez les identifiants de clic et de navigateur (
fbc,fbp), l'adresse IP et le navigateur du client côté serveur. - Ajoutez un identifiant client externe (
external_id) stable, par exemple l'identifiant client Shopify haché. - Captez l'email plus tôt dans le parcours, par exemple via une fenêtre d'inscription avec avantage : plus d'événements portent alors une information exploitable.
Les erreurs à éviter
- Rester en partage Standard en pensant que « le pixel suffit ».
- Garder un vieux pixel dans le thème après avoir installé l'application.
- Empiler application native et server-side sans régler qui envoie quoi.
- Juger sur une journée. Les chiffres se stabilisent sur plusieurs jours.
- Chercher la cause d'un mauvais ROAS dans le tracking seul. Un tracking propre est nécessaire, pas suffisant. Si les chiffres sont fiables et que les résultats restent mauvais, passez au diagnostic Meta Ads en 7 points.
Par où commencer cette semaine
- Vérifiez le niveau de partage de données de l'application Facebook & Instagram et passez-le sur Maximum.
- Cherchez et supprimez tout pixel Meta en double (thème, événements clients, GTM, applications).
- Passez une commande test et contrôlez les sources et la déduplication de l'événement Purchase.
- Notez la qualité de correspondance actuelle de l'achat et suivez-la chaque mois.
- Comparez chaque semaine les achats Meta aux commandes Shopify pour repérer toute dérive, en gardant en tête que les chiffres de Meta, Google et GA4 ne concordent jamais parfaitement.
L'API Conversions est une pièce de l'architecture décrite dans notre guide complet du tracking e-commerce, et le même principe s'applique à TikTok avec le pixel TikTok et l'Events API. Si vous préférez une installation vérifiée de bout en bout, notre équipe prend en charge le tracking server-side et la fiabilisation de vos données. Pour relier cette mesure à une stratégie de croissance complète, découvrez l'Écosystème, où la mesure est traitée dès l'étape Fondations, avant toute accélération de l'acquisition sur 90 jours. Pour en parler, réservez un appel stratégique de 30 minutes.
