Skip to Content
Axeptio Server-Side

Optimisation du consentement : Axeptio en server-side

Introduction

Dans un environnement digital en constante évolution, la gestion du consentement utilisateur est essentielle pour assurer à la fois la conformité aux réglementations (RGPD, CCPA) et une expérience fluide pour les internautes. Jusqu’à présent, cette collecte se faisait en client-side, où les scripts Axeptio étaient exécutés directement dans le navigateur.

Cette approche présente toutefois plusieurs limites. Les AdBlockers bloquent souvent les scripts tiers, ce qui empêche l’affichage du bandeau de consentement. Certains navigateurs, comme Safari, réduisent la durée de vie des cookies à sept jours, ce qui impose de redemander régulièrement l’accord des utilisateurs.

Pour répondre à ces défis, Addingwell propose une intégration d’Axeptio en server-side. En déplaçant la gestion des cookies du navigateur vers le serveur et en chargeant les scripts Axeptio via un CDN en first-party, cette solution permet de contourner ces blocages et d’assurer une persistance du consentement bien plus longue. Cet article explore les limites des méthodes actuelles et détaille comment implémenter Axeptio server-side avec Addingwell.

Les solutions proposées

Option client-side et ses limites

L’approche traditionnelle repose sur un chargement direct des scripts Axeptio dans le navigateur. Ceux-ci sont récupérés depuis le domaine axept.io et affichent une popin de consentement. Une fois validé, les cookies sont déposés en JavaScript afin de mémoriser ce choix lors des visites suivantes.

Schéma fonctionnement classique d’Axeptio CMP client-side

Cette solution présente plusieurs inconvénients. Les bloqueurs de publicité et certaines politiques des navigateurs empêchent parfois le chargement des scripts Axeptio depuis un domaine tiers comme axept.io. Lorsqu’un AdBlocker est activé, la popin ne s’affiche pas et l’utilisateur ne peut pas exprimer son consentement, ce qui entraîne un refus par défaut. De plus, Safari et d’autres navigateurs limite la durée des cookies à sept jours, ce qui oblige à redemander le consentement de manière répétitive.

Impact des AdBlockers sur Axeptio CMP server-side

Chargement d’Axeptio via un CDN first-party avec Addingwell

Pour contourner ces restrictions, Addingwell propose une alternative : héberger les scripts Axeptio via un CDN en first-party. En plaçant ces scripts sur un domaine de confiance, le risque d’interception par les bloqueurs de publicité est réduit. Cette approche permet d’assurer un affichage fiable de la popin de consentement et d’améliorer le taux d’acceptation.

Chargement Axeptio via Addingwell en first-party

Cependant, cette solution ne règle pas totalement le problème de la durée de vie limitée des cookies. Ceux-ci sont toujours posés en JavaScript et restent soumis aux restrictions des navigateurs.

Implémentation server-side avec client et tag Axeptio

L’intégration server-side constitue la solution la plus avancée pour garantir une collecte du consentement fiable et durable. Cette approche repose sur un client server-side qui intercepte les requêtes de consentement, ainsi qu’un tag Axeptio côté serveur qui gère le dépôt des cookies.

Fonctionnement de la CMP Axeptio server-side avec Addingwell

Grâce à cette architecture, les scripts Axeptio sont toujours chargés en first-party via le CDN Addingwell, mais la gestion des cookies est totalement déplacée vers le serveur. Cette méthode élimine les restrictions des navigateurs et assure une persistance du consentement bien au-delà de sept jours. Elle offre également une meilleure résistance aux AdBlockers, car les interactions liées au consentement ne sont plus visibles dans le navigateur.

Dans la prochaine section, nous détaillerons les étapes précises de mise en place d’Axeptio server-side avec Addingwell, afin de vous aider à configurer efficacement votre CMP server-side.

Mise en place d’Axeptio Server-Side

Configuration du client Axeptio

Téléchargez le client Axeptio ici.

Code du client Axeptio sur Github

Rendez-vous dans votre conteneur GTM Server, dans la section Templates > Client Templates, cliquez sur New.

Bouton pour créer un nouveau modèle de client dans GTM Server

Cliquez ensuite sur les 3 petits points en haut à droite, puis sur Import.

Bouton pour importer un modèle de client dans GTM Server

Sélectionnez ensuite le fichier template.tpl que vous venez de télécharger puis cliquez sur Save.

Bouton pour enregistrer un modèle de client dans GTM Server

Rendez-vous maintenant dans la section Clients de GTM Serveur pius cliquez sur New.

Bouton pour instancier un modèle de client dans GTM Server

Sélectionnez ensuite le client Axeptio, précédemment importé.

Sélection du client Axeptio précédemment importé

Cliquez ensuite sur Save pour enregistrer le client, le nom Axeptio vous sera ensuite proposé, cliquez sur Save à nouveau.

Enregistrement du client Axeptio

Félicitations, le client Axeptio est maintenant installé dans votre conteneur GTM Serveur.

Installation du client Axeptio finalisée

Nous allons maintenant passer à la configuration du tag Axeptio CMP toujours sur GTM Serveur.

Configuration du tag Axeptio CMP sur GTM Serveur

Téléchargez le tag serveur Axeptio CMP ici.

Code du tag Axeptio CMP Server sur Github

Rendez-vous dans votre conteneur GTM Server, dans la section Templates > Tag Templates, cliquez sur New.

Bouton pour créer un nouveau modèle de tag dans GTM Server

Cliquez ensuite sur les 3 petits points en haut à droite, puis sur Import.

Bouton pour importer un modèle de tag dans GTM Server

Sélectionnez ensuite le fichier template.tpl que vous venez de télécharger puis cliquez sur Save.

Bouton pour enregistrer un modèle de tag dans GTM Server

Rendez-vous maintenant dans la section Tags de GTM Serveur pius cliquez sur New.

Bouton pour instancier un modèle de tag dans GTM Server

Sélectionnez ensuite le tag Axeptio CMP, précédemment importé.

Sélection du tag Axeptio CMP précédemment importé

Déclenchez le tag lorsque le client est égal à Axeptio.

Configuration du déclencheur du tag Axeptio CMP

Cliquez ensuite sur Save pour enregistrer le tag Axeptio CMP.

Enregistrer le tag Axeptio CMP Server

Félicitations, le tag Axeptio CMP est maintenant installé dans votre conteneur GTM Serveur. Nous allons maintenant passer à la configuration du tag Axeptio CMP sur GTM Web.

⚠️
À ce stade, il est nécessaire de publier votre conteneur serveur avant continuer la configuration sur GTM Web.

Charger Axeptio depuis Addingwell

Pour pouvoir contourner les ad-blockers, il est nécessaire de charger le script d’Axeptio depuis votre serveur de tagging Addingwell.

Rendez-vous sur Addingwell puis dans la section CDN. Cliquez ensuite sur Add another file.

Ajouter un nouveau fichier sur le CDN Addingwell

Vous devez ensuite renseigner l’URL du SDK Axeptio.

https://static.axept.io/sdk.js
Étape 1: ajout de l'url tierce dans le CDN Addingwell

Renseignez ensuite le chemin d’accès à ce fichier. Vous pouvez par exemple mettre axpt.js.

Étape 2: ajout du chemin dans le CDN Addingwell

Sélectionner le cache de votre choix (par exemple 10 minutes) puis cliquez sur Save.

Vous pouvez contrôler la durée pendant laquelle le script d’Axeptio reste en cache dans le CDN avant d’envoyer une nouvelle requête pour obtenir la dernière version du script.

Réduire cette durée vous permet d’obtenir plus régulièrement la dernière version du script.

Augmenter cette durée améliore les performances pour vos utilisateurs, car vos fichiers sont plus susceptibles d’être servis directement depuis le cache. Une durée plus longue diminue le nombre de requêtes envoyées à Axeptio.

Étape 3: précision du cache dans le CDN Addingwell

Vous pouvez maintenant accéder à ce fichier en appelant l’URL https://subdomain.domain.com/axpt.js.

Configuration terminé du chargement d'Axeptio via le CDN Addingwell

Configuration de la CMP Axeptio

Avec le tag Axeptio CMP

Dans votre conteneur GTM Web, dans la section Tags, cliquez sur New.

Dans la galerie, recherchez le tag Axeptio CMP.

Ajout de la CMP Axeptio sur GTM Web

Cliquez ensuite sur Add to workspace.

Ajout du tag Axeptio CMP au workspace GTM Web

Rendez-vous dans la galerie GTM Web, ajoutez le tag Axeptio CMP.

Pour que ce tag communique correctement avec votre serveur, vous devez ajouter l’URL de votre serveur (exemple: https://subdomain.domain.com) dans la section Server-side.

Remplissage du champ Serve-Side du tag Axeptio CMP

Dans la section Cookie settings, vous devez renseigner le champ User cookies domain avec votre domaine principal (exemple : domain.com).

Remplissage du userCookiesDomain dans le tag Axeptio CMP

Ce tag doit être déclenché sur Consent Initilization - All Pages.

Pour modifier l’URL de chargement du script, vous devez modifier le modèle de la balise Axeptio CMP. Pour cela, rendez-vous dans Modèles sur dans votre conteneur GTM Web puis cliquez sur le modèle Axeptio CMP.

Modification du modèle Axeptio CMP

Le template editor s’ouvre, rendez-vous dans l’onglet Permissions puis dans la section Injects scripts.

Modification des permissions du modèle Axeptio CMP

Remplacez l’URL par l’URL de votre fichier Axeptio ajouté précédemment dans le CDN Addingwell. Dans notre exemple : https://subdomain.domain.com/axpt.js. Cliquez ensuite sur Save.

Remplacement de l'URL de chargement dans le tag Axeptio CMP

Rendez-vous dans l’onglet code, scrollez tout en bas puis remplacez https://static.axept.io/sdk.js par votre propre URL (https://subdomain.domain.com/axpt.js). Cliquez ensuite sur Save.

Remplacement du script injecté dans le tag Axeptio CMP

Félicitations, vous avez terminé la configuration du tag Axeptio CMP.

En Javascript

Si vous n’utilisez pas le tag, voici l’équivalent en JavaScript.

Axeptio CMP script
<script> window.axeptioSettings = { clientId: "603a1qb689j987zx136324ha", postConsentUrl: "https://subdomain.domain.com", userCookiesDomain: "domain.com", googleConsentMode: { default: { analytics_storage: "denied", ad_storage: "denied", ad_user_data: "denied", ad_personalization: "denied", wait_for_update: 500 } } }; (function(d, s) { var t = d.getElementsByTagName(s)[0], e = d.createElement(s); e.async = true; e.src = "https://subdomain.domain.com/axpt.js"; t.parentNode.insertBefore(e, t); })(document, "script"); </script>

Tests et validation de l’implémentation

Preview GTM Server-Side

Pour pouvoir tester correctement en Preview il est nécessaire de mettre en place le header HTTP de preview (x-gtm-server-preview) de GTM Server-Side dans votre container Addingwell.

Ce premier test en preview bien que nécessaire est un peu fastidieux à mettre en place, pour aller plus vite vous pouvez aussi publier votre conteneur serveur contenant le client Axeptio puis relancer votre preview.

Pour récupérer ce header, commencez par ouvrir votre preview sur GTM Serveur.

Bouton pour ouvrir la preview dans GTM serveur

Cliquez ensuite sur les 3 petits points en haut à droite de la preview puis cliquez sur Send requests manually.

Bouton Send requests manually dans la preview GTM serveur

Copiez ensuite le header de preview.

Copier le token x-gtm-server-preview dans la preview GTM serveur

Rendez-vous ensuite dans votre container Addingwell, dans la section Tagging Server.

Copier le token x-gtm-server-preview dans la preview GTM serveur

Collez le token de preview puis cliquez sur Save.

Collez le token de preview dans Addingwell

Après 2 minutes, vous pouvez voir vos requêtes Axeptio consents arriver sur votre serveur.

Pour voir ces requêtes arriver sur votre serveur, il est nécessaire d’interagir avec la bannière Axeptio.

Vérification des requêtes Axeptio dans la preview sGTM

Monitoring Addingwell

Tag Health

Dans le monitoring de votre container Addingwell (onglet Tag Health), vous pouvez voir les tags déclenchés par le client Axeptio et notamment le tag Axeptio.

Vue d'ensemble des tags déclenchés par le client Axeptio

En cliquant sur le tag Axeptio, vous pouvez voir sur quels événements il a été déclenché. Ce tag se déclenche uniquement sur des événements consents.

Détails sur le tag Axeptio dans Tag Health

Logs

Dans la section Logs de votre container Addingwell, vous pouvez voir le taux de succès des requêtes envoyées à Axeptio.

Vue d'ensemble des requêtes sortantes Axeptio dans Logs

En cliquant sur le lien Logs, vous accédez à plus d’informations sur les requêtes Axeptio.

Vue détaillée des requêtes sortantes Axeptio dans Logs

Pour plus de détails sur le monitoring Addingwell, consultez notre documentation sur le sujet.

Erreurs connues et solutions

Problème de requête CORS

Si vous obtenez des erreurs CORS, c’est très probablement parce que vous n’avez pas publié votre conteneur serveur.

Si vous ne souhaitez pas publier votre conteneur serveur pour tester l’implémentation, vous devez utiliser le header x-gtm-server-preview comme expliqué ci-dessus.

Après la publication du conteneur serveur vous ne devriez plus voir cette erreur.

FAQ