Cas recommandé : CMP TCFv2

Cas recommandé : CMP TCFv2

CMP TCFv2 — Cas recommandé

CMP compatible TCFv2 : Eulerian s'intègre automatiquement avec l'API TCF disponible. Pour plus d'informations sur le framework :  iabeurope.eu 
Installation client-side : le tag Eulerian s'interface automatiquement avec l'API TCF. Installation server-side : votre partenaire doit fournir la TCString à chaque appel dans le paramètre gdpr_consent.


Opt-out général (inconditionnel)

Eulerian met à disposition une URL d'opt-out général qui rend un utilisateur inactif sur l'ensemble des traitements Eulerian, toutes plateformes confondues.
https://[DOMAINE_COLLECTE]/optout.html?url=[VOTRE_DOMAINE]
Exemple pour le site www.eulerian.com :
<https://mj23.eulerian.com/optout.html?url=www.eulerian.com>
Cette URL est généralement exposée dans les pages Vie privée ou RGPD du site, en complément de l'accès à la CMP.


Étape 1 — Mettre à jour vos URLs de tracking

Le consentement utilisateur doit être récupéré à deux moments :
  • Sur votre site : Eulerian consulte automatiquement votre CMP via l'API TCF dédiée.
  • Sur vos URLs de tracking : au moment de la redirection, pour déterminer si Eulerian doit prendre en compte le clic ou l'impression avant d'amener l'utilisateur sur sa landing page.
Pour cela, ajoutez les trois paramètres suivants à la fin de vos URLs de tracking. Ils doivent être remplis dynamiquement par vos partenaires.
Paramètre
Description
Valeurs attendues
gdpr={GDPR}
Indique si l'utilisateur est soumis au RGPD
1 = oui, 0 = non
gdpr_consent={GDPR_CONSENT_413}
TCString contenant les choix de consentement de l'utilisateur
TCString
gdpr_pd={GDPR_PD}
Indique si les paramètres présents dans l'URL contiennent des données personnelles
1 = oui, 0 = non


Étape 2 — Déclarer une CMP TCFv2

Pour qu'Eulerian puisse se connecter à votre CMP, vous devez la déclarer dans l'interface.
Où aller : Liste des Consent Managers
Cliquez sur "Ajouter un nouveau TCFv2" et renseignez les informations de votre CMP. Une fois déclarée, Eulerian pourra interroger automatiquement l'API TCF pour récupérer les choix de consentement de chaque utilisateur.


Étape 3 — Lier Eulerian à un vendor / purpose

Pour qu'Eulerian sache quand il est autorisé à collecter de la donnée, vous devez le lier à au moins un purpose TCFv2.
Où aller :Finalités Eulerian
Cliquez sur le bloc "Finalités Eulerian", puis sélectionnez dans la liste les purposes et special features du TCFv2 qui correspondent à votre usage d'Eulerian. Une fois votre configuration terminée, validez avec le code de vérification envoyé par SMS.
Authentification à 2 facteurs requise : la modification des finalités nécessite un code envoyé sur votre numéro de téléphone. Rapprochez-vous de votre CSM pour enregistrer votre numéro avant de réaliser cette étape.


Étape 4 — Lier vos tags et connecteurs au TCFv2

Cette étape concerne uniquement les clients disposant du module Activation.
Où aller : Lier vos connecteurs S2S à un vendor/purpose
Pour qu'Eulerian déclenche correctement les tags et connecteurs selon le consentement utilisateur, chacun doit être lié à un vendor et à une ou plusieurs finalités (purposes).
Sélectionnez un ou plusieurs connecteurs dans la liste, cliquez sur "Lier la sélection à un vendor/purpose", choisissez votre partenaire et les finalités correspondantes, puis validez.
Lors de la création d'un tag ou connecteur (natif ou personnalisé), cette liaison vous sera proposée directement durant le processus de création.


Cas particulier — Mon partenaire n'est pas dans le TCFv2

Même si votre partenaire n'est pas un vendor IAB, il reste soumis au consentement utilisateur.
Eulerian récupère automatiquement la liste des partenaires non-IAB inclus dans la liste des partenaires Google (qui inclut Facebook/Meta). Pour les lier :
    Rendez-vous sur "Lier vos connecteurs S2S à un vendor/purpose" ou "Lier vos tags à un vendor/purpose"
    Sélectionnez les tags du partenaire concerné
    Au lieu de choisir un vendor IAB, cliquez sur l'onglet "Vendor custom"
    Sélectionnez votre partenaire, déclarez ses finalités et sauvegardez


Cas particulier — Mon partenaire gère son propre consentement

Si votre partenaire applique lui-même le consentement utilisateur à sa collecte et ne souhaite pas qu'Eulerian gère son déclenchement, vous devez créer une catégorie de consentement avec l'option "consentement facultatif".
Étape 1 — Créer une nouvelle catégorie
Où aller : Collecte > Privacy Center > Gestion du consentement hors-TCFv2 > Catégories > Ajouter une catégorie
Créez une catégorie dédiée (ex : no-consent) :
Étape 2 — Activer l'option "consentement facultatif"
Dans l'édition de la catégorie, activez l'option "consentement facultatif" :
Étape 3 — Lier vos tags/connecteurs à cette catégorie
À la création ou dans la fenêtre de liaison de vos tags/connecteurs existants, sélectionnez la catégorie nouvellement créée :


Étape 5 — Créer une requête sauvegardée

Cette étape concerne uniquement les clients disposant de l'Audience Engine.
Dans le cadre de l'automatisation de requête, le consentement utilisateur doit également être pris en compte. Ce paramétrage se fait au niveau de la requête sauvegardée.
Vous devrez créer une requête sauvegardée par partenaire.


Étape 6 — Consentement dans une application mobile

Pour les apps Android et iOS, le consentement est transmis via le paramètre gdpr_consent contenant la TCString. Elle peut être envoyée une seule fois par visiteur, au moment de l'opt-in ou de l'opt-out.

Android

// Sans valeur (placeholder)
EAProperties genericTag = new EAProperties.Builder("NOM_PAGE")
.setUID("UID")
.set("NOM_PARAM_PERSO", "VALEUR_PARAM_PERSO")
.set("gdpr_consent", "TCSTRING")
.build();
EAnalytics.getInstance().track(genericTag);

// Avec valeurs réelles
EAProperties genericTag = new EAProperties.Builder("|univers|rubrique|page")
.setUID("5434742")
.set("abonnement", "mensuel")
.set("gdpr_consent", "EADURF214345")
.build();
EAnalytics.getInstance().track(genericTag);

iOS

// Sans valeur (placeholder)
let genericTag = EAProperties(path: "NOM_PAGE")
genericTag.setEulerian(uid: "UID")
genericTag.setEulerian("VALEUR_PARAM_PERSO", forKey: "NOM_PARAM_PERSO")
genericTag.setEulerian("TCSTRING", forKey: "gdpr_consent")
EAnalytics.track(genericTag)

// Avec valeurs réelles
let genericTag = EAProperties(path: "|univers|rubrique|page")
genericTag.setEulerian(uid: "5434742")
genericTag.setEulerian("mensuel", forKey: "abonnement")
genericTag.setEulerian("EADURF214345", forKey: "gdpr_consent")
EAnalytics.track(genericTag)

Noscript (appel HTTP direct)

// Sans valeur (placeholder)
//domain.client.tld/collector/-/[RANDOM].html?
uid=REMPLACER_PAR_ID_USER
&urlp=REMPLACER_PAR_NOM_DE_LA_PAGE
&url=http%3A%2F%2Fwww.client.com%2F
&gdpr_consent=TCSTRING
&rf=

// Avec valeurs réelles
//domain.client.tld/collector/-/544534509876.html?
uid=123456789
&urlp=univers%2Frubrique%2Fpage
&url=http%3A%2F%2Fwww.client.com%2F
&gdpr_consent=EADURF214345
&rf=