Comptez cinq minutes. Aucun développement nécessaire.
Rendez-vous sur https://app.cmp.newfutur.com, créez votre compte (validation par e-mail), puis ajoutez votre domaine dans Domaines.
Trois méthodes au choix :
/.well-known/cmp-verification.txt contenant le jeton affiché.TXT
cmp-verification=<jeton>.<meta name="cmp-domain-verification" content="<jeton>">
dans le <head> de la page d'accueil.Dans Bannières : couleurs, textes, disposition, options de conformité. Créez vos catégories et vos vendors dans Catégories & vendors, puis Publier. Chaque publication est versionnée.
Collez ces deux lignes juste avant </head> de
toutes vos pages (remplacez PUBLIC_ID par l'identifiant du domaine,
visible dans l'espace client) :
<link rel="preload" as="fetch" crossorigin href="https://api.cmp.newfutur.com/v1/config/PUBLIC_ID">
<script async src="https://api.cmp.newfutur.com/v1/cmp.js?d=PUBLIC_ID"></script>
Le SDK s'affiche en Shadow DOM : il n'entre pas en conflit avec le CSS de
votre site. La ligne <link rel="preload"> est optionnelle mais
recommandée : elle démarre le chargement de la configuration de la bannière en
parallèle du script au lieu d'attendre qu'il soit chargé et exécuté pour la
déclencher — un aller-retour réseau de moins avant l'affichage.
Pour que vos visiteurs puissent revenir sur leur choix à tout moment, ajoutez ce lien dans votre pied de page ou votre page « Politique de confidentialité » (il rouvre le centre de préférences, sans recharger la page — inutile de connaître l'identifiant du domaine, ce code est le même partout) :
<a href="#" data-cmp-open="preferences">Gérer mes cookies</a>
Le SDK intercepte le clic via une écoute d'événement globale — volontairement
pas d'attribut onclick="..." inline, qu'une CSP
stricte bloquerait même quand script-src autorise déjà le SDK (voir
section 10). Ce code est aussi disponible prêt à copier dans votre espace
client, page Bannières.
Le SDK pose les états Consent Mode par défaut (tout refusé sauf sécurité)
avant tout autre script, puis les met à jour selon le choix de
l'internaute. Placez le snippet CMP avant celui de GTM / gtag.js.
Vous pouvez aussi laisser CMP charger GTM comme un tag géré (type
gtm).
Déclarez vos scripts (Analytics, pixels…) dans Catégories & vendors → Tags.
CMP ne les injecte qu'au moment où la catégorie correspondante est consentie
(on_consent), refusée (on_reject) ou toujours
(always).
Activez IAB TCF v2.2 par domaine dans l'éditeur de bannière. Renseignez au
préalable votre identifiant CMP obtenu auprès de l'IAB. Le SDK expose alors
window.__tcfapi et génère la chaîne TC ; l'activation de GPP ajoute
window.__gpp et encapsule la section TCF EU v2.
Si l'option « Respecter le signal GPC » est active et que le navigateur envoie
navigator.globalPrivacyControl, le refus est appliqué automatiquement
(avec preuve), sans afficher la bannière.
Si votre site impose une Content Security Policy stricte (en-tête HTTP
Content-Security-Policy, ou balise
<meta http-equiv="Content-Security-Policy">), le navigateur
bloque le script tant qu'elle n'autorise pas explicitement notre domaine — message
typique dans la console :
Loading the script 'https://api.cmp.newfutur.com/v1/cmp.js?d=...' violates the
following Content Security Policy directive: "script-src 'self' ...".
Ajoutez (au minimum) ces directives à votre CSP :
script-src https://api.cmp.newfutur.com;
connect-src https://api.cmp.newfutur.com;
script-src : indispensable pour charger
/v1/cmp.js. Si vous chargez Google Tag Manager comme tag
géré (type gtm), ajoutez aussi
https://www.googletagmanager.com ; plus généralement, chaque script
tiers déclaré en tag géré de type src doit figurer dans votre
script-src.connect-src : la bannière et le centre de
préférences appellent /v1/config, /v1/consent et
/v1/event en arrière-plan (sans cette directive, le script se
charge mais l'enregistrement du consentement échoue silencieusement).style-src : sur les navigateurs récents (feuilles
de style « adoptées »), aucune autorisation supplémentaire n'est nécessaire.
Pour couvrir aussi les navigateurs plus anciens, ajoutez
style-src 'unsafe-inline' — sinon la bannière reste fonctionnelle
mais s'affiche sans son thème sur ces navigateurs.'unsafe-inline' pour script-src, ou remplacez-le par
un fichier hébergé (type src) pour conserver une CSP stricte.onclick="..." pour le reproduire vous-même — les CSP strictes
bloquent les gestionnaires d'événements en ligne quel que soit votre
script-src (message typique : « Executing inline event
handler violates … Note that hashes do not apply to event handlers … unless
'unsafe-hashes' is present »). L'attribut data-cmp-open
fourni est un simple attribut HTML inerte, capté par le SDK déjà autorisé.Une référence interactive de l'API publique (config, enregistrement de consentement, export du registre de preuves par clé) est disponible dans votre espace client, page API.
window.CMP.showPreferences(),
window.CMP.getConsent().