À propos d'AppsFlyer
AppsFlyer est une plateforme de référence d'analyse marketing mobile et d'attribution. Elle permet aux entreprises de mesurer avec précision la performance de leurs campagnes sur tous les canaux, d'attribuer les acquisitions d'utilisateurs à des actions marketing précises et d'optimiser leurs stratégies grâce à des insights générés par l'IA, tout en respectant les exigences de confidentialité.
Grâce à ses capacités de traitement de données à grande échelle, à sa protection avancée contre la fraude et à ses nombreuses intégrations, AppsFlyer est un outil essentiel dans l'écosystème numérique fragmenté d'aujourd'hui. Il aide les marketeurs à transformer des données complexes en décisions claires et exploitables, qui favorisent la croissance et renforcent l'engagement client.
À propos de l'intégration
Faites évoluer votre stratégie de marketing mobile avec PA Connect AppsFlyer. Cette intégration crée un écosystème de données unifié qui relie l'attribution mobile à une analyse complète des utilisateurs, pour vous permettre de prendre des décisions fondées sur les données tout au long du parcours client. En associant les capacités de segmentation avancées de Piano Analytics à la plateforme d'attribution d'AppsFlyer, vous supprimez les silos de données et obtenez une vision plus fine de l'acquisition et de l'engagement des utilisateurs.
Suivez l'intégralité des parcours utilisateur, de la première interaction avec une campagne jusqu'à l'installation de l'application et au-delà. Utilisez les données d'attribution d'AppsFlyer pour identifier les canaux marketing qui apportent les utilisateurs à plus forte valeur, et les insights comportementaux de Piano Analytics pour optimiser vos stratégies d'engagement après l'installation. Accédez à des rapports unifiés qui combinent les métriques d'acquisition et l'analyse détaillée du comportement des utilisateurs, afin de mesurer le véritable ROI de vos campagnes et la valeur vie client sur chaque point de contact.
Il existe deux façons d'alimenter le connecteur en événements, selon la manière dont l'application transmet ses données à AppsFlyer.
Prérequis
Avant de configurer l'une ou l'autre méthode, vérifiez que les éléments suivants sont présents dans votre Data Model Piano Analytics :
-
Événements :
-
app.install(événement par défaut) -
app.reengage(⚠️ événement personnalisé à déclarer) -
app.reattribute(⚠️ événement personnalisé à déclarer), si le suivi du réengagement et de la réattribution est nécessaire
-
-
Propriété :
-
appsflyer_user_id(⚠️ propriété personnalisée à déclarer :scope= event,data type= string ; nous vous recommandons d'ajouter l'indicateur « Contient des données personnelles »)
-
Méthodes d'intégration
-
Méthode A : avec le SDK AppsFlyer (côté client). L'application intègre le SDK AppsFlyer. Il s'agit de l'implémentation standard décrite dans la plupart des documentations AppsFlyer.
-
Méthode B : sans le SDK AppsFlyer (côté serveur, S2S). L'application ou le backend envoie les événements à AppsFlyer via l'API Server-to-Server (S2S) Events plutôt que via le SDK. Utilisez cette méthode lorsque votre configuration est entièrement côté serveur et que le SDK AppsFlyer ne peut pas être intégré.
Quelle que soit la méthode, AppsFlyer génère le même postback Piano (voir « Le postback Piano » ci-dessous). Seule la manière dont l'événement arrive dans AppsFlyer diffère.
Identification du partenaire dans AppsFlyer
L'identifiant partenaire (PID) de Piano Analytics dans AppsFlyer est atinternet_int. Il reçoit les données de postback des installations et des événements in-app, ce qui permet à Piano Analytics de capturer l'activité d'acquisition et de réengagement des utilisateurs des applications mobiles.
Pour activer le connecteur, recherchez et activez atinternet_int dans la configuration des partenaires AppsFlyer, puis activez les postbacks concernés. Cette étape est obligatoire pour la méthode A comme pour la méthode B.
Correspondance de l'identifiant visiteur
Pour que les événements envoyés par AppsFlyer soient associés aux sessions Piano Analytics existantes, l'identifiant visiteur Piano doit être inclus dans chaque postback, sous la forme du paramètre d'URL idclient.
Sans le paramètre idclient, les événements reçus d'AppsFlyer ne peuvent être rattachés à aucune session visiteur dans Piano Analytics. Les données apparaissent alors comme du trafic sans lien avec les parcours utilisateur existants.
La manière dont l'identifiant visiteur Piano est transmis à AppsFlyer dépend de la méthode d'intégration, décrite ci-dessous.
Méthode A : avec le SDK AppsFlyer
-
Récupérez l'identifiant visiteur Piano à l'aide de la méthode
getVisitorIddu SDK Piano Analytics dans l'application mobile. Consultez Visitor identification pour la syntaxe propre à chaque plateforme (Android, iOS, Flutter). -
Transmettez cette valeur à AppsFlyer à l'aide de la méthode
setAdditionalDatadu SDK, avec la clépianoVisitorId. AppsFlyer injecte automatiquement cette valeur dans l'URL du postback via le placeholder{pianoVisitorId}.
Exemple : si l'identifiant visiteur Piano est abc-123-def, l'application doit appeler :
AppsFlyer.setAdditionalData({"pianoVisitorId": "abc-123-def"})
AppsFlyer envoie alors le postback à :
https://<domain>/event?s=<site_id>&idclient=abc-123-def
-
(Facultatif) Définissez le Customer User ID via le SDK AppsFlyer si un suivi cross-plateforme avec
appsflyer_user_idest nécessaire. -
Dans l'interface AppsFlyer, recherchez le partenaire
atinternet_intet activez le postback d'installation. -
Activez également le postback d'événement si le suivi du réengagement et de la réattribution est nécessaire.
Une fois le SDK en place, AppsFlyer déclenche automatiquement le postback à chaque installation ou événement in-app, et le transforme en événement Piano correspondant.
Méthode B : sans le SDK AppsFlyer (côté serveur, S2S)
Avant d'envoyer le payload S2S, assurez-vous que votre backend dispose de l'identifiant visiteur Piano de l'utilisateur.
En l'absence de SDK AppsFlyer, l'identifiant visiteur Piano est transmis dans le champ custom_data du payload S2S, sous la forme d'une chaîne encodée en JSON avec la clé pianoVisitorId. AppsFlyer utilise cette valeur pour renseigner le placeholder {pianoVisitorId} (le paramètre idclient) dans le postback Piano.
Endpoint de l'API S2S
POST https://api2.appsflyer.com/inappevent/{app-id}
Payload
Pour que le postback Piano se déclenche correctement avec tous les champs requis, le payload S2S doit contenir :
{
"appsflyer_id": "<appsflyer_device_id>",
"customer_user_id": "<user_id>",
"eventName": "app.install",
"eventTime": "2024-01-15 10:30:00.000",
"eventValue": "{}",
"custom_data": "{\"pianoVisitorId\": \"<piano_visitor_id>\", \"appUserId\": \"<app_user_id>\"}"
}
Correspondance des champs et remarques
|
Champ S2S |
Rôle |
|---|---|
|
|
Doit contenir |
|
|
Correspond à |
|
|
Détermine le nom de l'événement envoyé à Piano. |
|
|
L'identifiant d'appareil AppsFlyer. |
|
|
Champs S2S standard (horodatage et valeur de l'événement). |
Important :
-
La réattribution et le réengagement (
app.reattribute,app.reengage) sont définis automatiquement par AppsFlyer selon sa logique d'attribution. Vous n’avez pas besoin de les envoyer explicitement. -
src_creationetsrc_campaignsont renseignés par AppsFlyer à partir de l'enregistrement d'attribution. Vous n’avez pas besoin de les envoyer. -
L'intégration
atinternet_intdoit être active et les postbacks activés dans l'interface AppsFlyer, exactement comme pour la méthode A.
Référence : AppsFlyer Server-to-server events API for mobile (S2S).
Le postback Piano
AppsFlyer envoie les données à Piano Analytics via des postbacks HTTP. Il existe deux types de postbacks, installation et événement, composés chacun d'une URL et d'un corps JSON.
Comme atinternet_int est un compte Analytics Partner, les templates de postback sont gérés côté AppsFlyer. Le résultat est identique, que l'événement ait été collecté via le SDK (méthode A) ou via l'API S2S (méthode B).
Première installation
Déclenché lorsqu'un utilisateur installe l'application et la lance pour la première fois.
URL :
https://$$dashboard(domain)/event?s=$$dashboard(site_property_id)&idclient={pianoVisitorId}
Corps :
{
"events": [
{
"name": "app.install",
"data": {
"appsflyer_user_id": "$$sdk(af_customer_user_id)",
"src_creation": "$$sdk(promoter-id)",
"src_campaign": "$$sdk(af_c_id)",
"src_medium": "appsflyer",
"src_force": true
}
}
]
}
Réengagement et réattribution
URL :
https://$$dashboard(domain)/event?s=$$dashboard(site_property_id)&idclient={pianoVisitorId}
Corps pour le réengagement (déclenché lorsque l'utilisateur revient dans l'application via un point de contact marketing, après la première installation) :
{
"events": [
{
"name": "app.reengage",
"data": {
"appsflyer_user_id": "$$sdk(af_customer_user_id)",
"src_creation": "$$sdk(promoter-id)",
"src_campaign": "$$sdk(af_c_id)",
"src_medium": "appsflyer",
"src_force": true
}
}
]
}
Corps pour la réattribution (déclenché lorsque l'utilisateur réinstalle l'application après l'avoir désinstallée) :
{
"events": [
{
"name": "app.reattribute",
"data": {
"appsflyer_user_id": "$$sdk(af_customer_user_id)",
"src_creation": "$$sdk(promoter-id)",
"src_campaign": "$$sdk(af_c_id)",
"src_medium": "appsflyer",
"src_force": true
}
}
]
}
Propriétés du postback
Chaque corps de postback contient des propriétés d'attribution de source préfixées par src_, ainsi que appsflyer_user_id pour le rapprochement cross-plateforme :
|
Propriété |
Valeur |
Description |
|---|---|---|
|
|
|
L'éditeur ou le réseau publicitaire à l'origine de l'installation. |
|
|
|
L'identifiant de la campagne dans AppsFlyer. |
|
|
|
Valeur fixe qui identifie AppsFlyer comme source d'attribution. |
|
|
|
Force Piano Analytics à remplacer toute attribution de source existante. |
|
|
|
Le Customer User ID (CUID) AppsFlyer, défini par l'annonceur. Utile pour le rapprochement cross-plateforme entre AppsFlyer et Piano Analytics. Facultatif. |
src_force signifie que la source AppsFlyer la plus récente remplace la source de la session en cours : l'ensemble de la visite hérite de la source d'acquisition. Si plusieurs points de contact ont lieu au cours de la même visite, c'est le dernier qui l'emporte côté Piano (les données brutes dans AppsFlyer conservent tous les points de contact).
Reporting dans Piano Analytics
Une fois le connecteur actif, vos données AppsFlyer sont disponibles dans Piano Analytics avec le reste des données de votre application. Vous pouvez relier les sources marketing qui génèrent vos installations à ce que font ensuite les utilisateurs dans l'application.
Créer vos propres analyses
Vous pouvez utiliser les événements et propriétés envoyés par AppsFlyer dans Data Query et dans vos boards, comme n'importe quelle autre donnée :
-
Événements :
app.install,app.reengageetapp.reattribute, pour compter les installations, les réengagements et les réinstallations. -
Propriétés de source :
src_creation(l'éditeur ou le réseau publicitaire),src_campaign(l'identifiant de campagne AppsFlyer) etsrc_medium.
Par exemple, ventilez app.install par src_campaign pour voir quelles campagnes génèrent le plus d'installations. Comparez ensuite l'engagement des utilisateurs de chaque campagne dans l'application, afin d'identifier les campagnes qui apportent des utilisateurs qui restent actifs, et pas seulement des utilisateurs qui installent l'application.
Board prêt à l'emploi
Si vous préférez ne pas créer vos analyses de zéro, Piano peut vous fournir un board prêt à l'emploi pour vos données AppsFlyer. Pour l'obtenir, contactez le centre de support.
Dépannage
Une fois la configuration terminée, déclenchez un événement de test et vérifiez qu'il apparaît dans Piano Analytics avec le bon identifiant visiteur et la bonne attribution de source. Si quelque chose ne semble pas correct, vérifiez les problèmes courants suivants.
Les événements apparaissent mais ne sont liés à aucune session visiteur
Le paramètre idclient est absent ou vide.
-
Méthode A : vérifiez que l'identifiant visiteur Piano est correctement récupéré et transmis à AppsFlyer via
setAdditionalData. -
Méthode B : vérifiez que
pianoVisitorIdest présent danscustom_datasous la forme d'une chaîne encodée en JSON.
Aucun événement n'est reçu
-
Vérifiez que le postback d'installation est activé dans l'interface AppsFlyer pour le partenaire
atinternet_int. -
Vérifiez que l'identifiant de site Piano Analytics (
$$dashboard(site_property_id)) et le domaine de collecte ($$dashboard(domain)) sont correctement configurés dans le dashboard AppsFlyer. -
Méthode B : vérifiez que les événements sont bien acceptés par l'endpoint S2S pour le bon
{app-id}.