The consent sync dilemma
Hello.
The format will change as I figure it out. But one thing wonβt β no sales talk, only concrete stuff from the Salesforce marketing stack.
The consent sync dilemma
Currently, this comes to me every single project like a boomerang. Client has CRM, sometimes migrates from Pardot, and they say the same thing:
βWE WANT A CONSENT SYNCβ
And you can say βYeah, why not, Iβve seen some guides on the Internetβ.
Flow with updates from CRM, flow with updates from MC Next, easy job, right?
The weird parts
Letβs start from CRM to MC Next update.
Consents are stored in Communication Subscription Consent DMO, and they are associated with Contact Point Value, which means email, phone number or app user id.
You will find the Party field, with a pre-built relationship on Party to Individual Id⦠But the Party will always be empty, as it is not populated with the data coming from technical Data Stream.
You can find this technical Data Stream. Itβs called MessagingConsentV2, it has its own event available in flow, and this is a source of data stored in the Communication Subscription Consent DMO.
Whatβs more, there can be multiple of them, as Salesforce recreated them in one of the updates, adding a suffix with org id to each of background data streams (which also can provide you with doubled records in Communication Subscription Consents for particular contact points).
But back to our consents - can we just simply update the record, using this MessagingConsentV2? No.
The consents are also stored in a βcacheβ for optimization purposes. This means that MC Next during email send is first looking for a Communication Subscription Consent Status in this cache, and if it will not find it, it will then query the DMO. MessagingConsentV2 event will not change this cache, so we could opt-out somebody, and they would still receive the email message.
You can use Data-Cloud Triggered, Automation-Triggered or On Demand Flows to Create Consent in MC Next. They come with catches and the Winter β27 release will introduce the Create Consent element in standard Record-Triggered Flows, with additional updates in Preference Pages. So what you will build now, can potentially change in October and afterwards.
And what about MC Next to CRM update?
As our consent is associated with Contact Point Value, you have to decide if you want to change consent for every Lead/Contact/Prospect/PersonAccount with specific email. And build a flow that will handle these changes.
You want to reflect changes for a specific Subscription? Remember, that Communication Subscription Consent DMO doesnβt contain Subscription name, nor Subscription Id. It uses Communication Subscription Channel Type Id, which is a unique identifier of each channel for each subscription.
Whatβs Next
Iβm starting a series on the blog that walks through each of these models properly, flow by flow, with the catches. The first part covers custom fields on Leads and Contacts. It turns into n+1 flows and a fight with Create Consent, but thatβs a story for the article.
Iβll link it in the next issue.
See ya!
Szymon.
Update 20-09-2026: The first article from the series is already there. See the Consent Management in Marketing Cloud Next.