Le consentement n’est plus une simple case à cocher : c’est le socle juridique de toute votre activité marketing. Entre le RGPD, les recommandations de la CNIL et les attentes croissantes de vos abonnés, gérer le consentement dans Salesforce Marketing Cloud exige une architecture rigoureuse, pas de l’improvisation. Dans ce guide pratique, nous vous montrons comment modéliser le consentement dans vos Data Extensions, construire un centre de préférences en AMPscript, automatiser les suppressions en SQL et tirer parti des nouveautés Summer ’26. L’objectif : transformer une contrainte réglementaire en avantage de délivrabilité et de confiance durable avec vos contacts.
Pourquoi le consentement est un enjeu stratégique, pas juridique
Beaucoup d’équipes traitent encore le consentement comme une formalité gérée par le service juridique. C’est une erreur coûteuse. Un consentement mal collecté ou mal tracé fragilise votre délivrabilité : les fournisseurs de messagerie surveillent les plaintes et les désabonnements, et une base non consentie génère mécaniquement des plaintes spam. À l’inverse, une base saine et consentie améliore votre réputation d’expéditeur, donc votre taux de placement en boîte de réception.
La CNIL distingue deux régimes : le consentement préalable (opt-in) pour la prospection B2C, et l’intérêt légitime encadré pour certains cas B2B. Dans tous les cas, vous devez pouvoir prouver quand, comment et pour quelle finalité un contact a consenti. Marketing Cloud n’impose pas de modèle : c’est à vous de le construire proprement.
Cartographier vos finalités et vos bases légales
Avant d’écrire la moindre ligne d’AMPscript, posez votre cartographie. Une finalité = un canal × un objectif. Par exemple : « newsletter e-mail », « offres SMS », « notifications transactionnelles ». Chaque finalité doit avoir sa propre trace de consentement, car un abonné peut accepter vos e-mails tout en refusant vos SMS.
Concrètement, cela se traduit par une Data Extension de consentement dédiée, séparée de votre Data Extension d’envoi. Voici un modèle minimal mais conforme :
| Champ | Type | Rôle |
|---|---|---|
| SubscriberKey | Text (clé primaire) | Identifiant unique du contact |
| Channel | Text | Email, SMS, Push, RCS |
| Purpose | Text | Finalité (newsletter, promo…) |
| ConsentStatus | Text | OptIn, OptOut, Pending |
| ConsentDate | Date | Horodatage de la dernière action |
| Source | Text | Formulaire, import, double opt-in |
Cette granularité par finalité est la clé. Elle vous évite le piège du consentement « global » que la CNIL rejette systématiquement lors de ses contrôles.
Construire un centre de préférences en AMPscript
Le centre de préférences est le cœur visible de votre dispositif. Il doit permettre à l’abonné de modifier ses choix finalité par finalité, sans tout désactiver d’un coup. Voici un extrait AMPscript qui récupère les préférences existantes et met à jour la Data Extension de consentement à la soumission du formulaire :
%%[
/* Récupération du SubscriberKey depuis le lien personnalisé */
SET @subKey = RequestParameter("skey")
SET @action = RequestParameter("submitted")
IF @action == "true" THEN
SET @newsletter = RequestParameter("optin_newsletter")
SET @promoSMS = RequestParameter("optin_promo_sms")
/* Mise à jour idempotente de la finalité e-mail */
UpsertData(
"Consent_Master", 2,
"SubscriberKey", @subKey, "Channel", "Email",
"ConsentStatus", IIF(@newsletter == "on", "OptIn", "OptOut"),
"ConsentDate", Now(), "Source", "PreferenceCenter"
)
/* Mise à jour de la finalité SMS */
UpsertData(
"Consent_Master", 2,
"SubscriberKey", @subKey, "Channel", "SMS",
"ConsentStatus", IIF(@promoSMS == "on", "OptIn", "OptOut"),
"ConsentDate", Now(), "Source", "PreferenceCenter"
)
ENDIF
/* Pré-cochage du formulaire selon l’état actuel */
SET @rows = LookupRows("Consent_Master", "SubscriberKey", @subKey)
]%%
Notez l’usage d’UpsertData avec une clé composite (SubscriberKey + Channel) : chaque soumission est idempotente, ce qui évite les doublons et garantit une trace propre. Pensez aussi à journaliser chaque changement dans une Data Extension d’historique distincte, jamais écrasée, pour répondre à une demande de la CNIL en cas de contrôle.
Le double opt-in, toujours recommandé
Pour la prospection B2C, le double opt-in reste la pratique la plus sûre. Le premier envoi confirme l’adresse et matérialise le consentement par un clic explicite. Stockez le statut « Pending » jusqu’à confirmation, puis basculez en « OptIn » seulement après le clic de validation.
Automatiser les exclusions avec SQL
Le consentement ne sert à rien s’il n’est pas appliqué à l’envoi. Construisez une requête SQL dans Automation Studio qui génère votre population éligible en croisant votre base d’envoi avec la Data Extension de consentement :
SELECT s.SubscriberKey, s.EmailAddress, s.FirstName
FROM Sending_Master s
INNER JOIN Consent_Master c
ON c.SubscriberKey = s.SubscriberKey
WHERE c.Channel = 'Email'
AND c.Purpose = 'Newsletter'
AND c.ConsentStatus = 'OptIn'
AND s.SubscriberKey NOT IN (
SELECT SubscriberKey FROM _Unsubscribe
)
La jointure sur ConsentStatus = 'OptIn' garantit que seuls les abonnés ayant explicitement accepté reçoivent la campagne. L’exclusion via la data view _Unsubscribe ajoute une seconde barrière de sécurité contre les désabonnements globaux. Planifiez cette requête juste avant chaque envoi pour travailler sur des données fraîches.
Le meilleur centre de préférences ne compense jamais une mauvaise collecte : si le consentement n’est pas explicite, granulaire et horodaté à la source, aucune requête SQL ne le rendra conforme.
Nouveautés Summer ’26 : le consent mapping SMS et RCS
La version Summer ’26 de Marketing Cloud Next renforce la gestion du consentement pour les canaux conversationnels. Le support natif du RCS et la prise en charge des codes courts et longs SMS pour les États-Unis et le Canada s’accompagnent de nouvelles capacités de consent mapping : vous pouvez désormais relier explicitement un statut de consentement à un canal de messagerie, sans contournement maison.
Pour les équipes françaises, cela signifie qu’il faut anticiper dès maintenant la séparation des finalités e-mail, SMS et RCS dans votre modèle de données. Un abonné consentant au RCS n’a pas nécessairement consenti au SMS : traitez ces canaux comme des finalités distinctes, exactement comme dans le modèle proposé plus haut.
Documenter et auditer en continu
La conformité n’est pas un projet, c’est un processus. Mettez en place une automatisation mensuelle qui exporte un instantané de votre Data Extension de consentement vers un stockage sécurisé, et générez un rapport des écarts (contacts actifs sans consentement valide). Ce réflexe transforme un audit CNIL potentiellement stressant en simple formalité documentaire.
À retenir
1. Pensez par finalité. Un canal croisé avec un objectif = une trace de consentement distincte. Évitez à tout prix le consentement global.
2. Séparez vos Data Extensions. Une DE de consentement dédiée, avec clé composite SubscriberKey + Channel, et une DE d’historique jamais écrasée.
3. Appliquez le consentement à l’envoi. Une requête SQL filtrant sur ConsentStatus = 'OptIn' et excluant _Unsubscribe avant chaque campagne.
4. Anticipez Summer ’26. Le consent mapping SMS et RCS impose une séparation claire des canaux dès aujourd’hui.
5. Auditez en continu. Un export mensuel et un rapport d’écarts suffisent à rendre tout contrôle CNIL serein.
Vous souhaitez fiabiliser votre gestion du consentement dans Salesforce Marketing Cloud ? Contactez nos experts CGC-Agency pour un audit de votre architecture de consentement et de votre délivrabilité.
