You are here:
Configurations
Use these configurations to create a custom preference center.
Define Your Source of Truth
- Third party central: Any third-party system external to Salesforce is the touchpoint for customers with a defined strategy for replication or synchronization.
- Lightning Platform: Use the Individual object.
- Marketing Cloud Engagement: Use Preference Center.
Set Up the Individual Object
The Salesforce Individual object includes some standards that create individual records for existing Leads and Contacts. Checkbox fields track user preferences such as Don’t Process and Forget this individual.
Implement the Salesforce Individual Object
Set up data privacy records then encrypt the Individual Name field with the type of tenant secret and encryption scheme of your choice. These actions let your users track and store certain Data Privacy preferences.
- Enable Data Privacy and Protection.
- Create a new Individual record from a Lead or Contact or create an Individual record without linking it to Lead or Contact records.
- After the New button appears, you can create a record and associate it to a specific Lead or Contact if necessary.
Manually Update or Automate Individual Records
Salesforce Core uses the Individual object on Reports, Workflows, Process Builder, Flow, and Apex to maintain your business process. As a customer’s preferences change, you can update the Individual records and honor the new preferences manually, or via APEX or AppExchange. In Engagement, use AMPscript to apply your customer options on email templates.
Filter Audiences
Profile center and subscription center work with List, but Journeys and Automations require these extra actions.
- Create a support data extension that holds your customer summarized preferences.
- To filter and mix your customer preferences with your journey intake, use Automation Studio's SSJS Activity and Query Activity.
- Create an Attribute Group on Contact Builder that stores customer preferences about journey subjects.
As a workaround, you can use Automation Studio. Update the custom profile center attributes for Salesforce contacts added by journeys for the first time, on a regular basis, or triggered by the journey. Use the function RetrieveSalesforceObject() if the journey contains an email with AMPscript.
Receive and Store Consent
- Collect compliance requests outside of Engagement functionality. Determine the best process for your business to receive and store this information as part of your data protection and privacy regulation review.
- Make sure that your consent language corresponds to your privacy notices and policies.
- Consent must be specific, informed, and unambiguous. Collect positive consent, and avoid automatically selected checkboxes.
- The process for obtaining consent regarding messaging to children is stricter.
- Contacts must be able to withdraw consent at any time.
- Contacts must freely give consent, and you can’t base usage of your website on provision of consent.
- Consent to use data must be specific for each purpose that you use data for.
Determine Permission Across Message Types
- Explicit Permission: The person actively and knowingly shares their contact information with the expectation of receiving commercial emails. This type of permission is the safest method.
- Implicit Permission: Assumes permission based on a variety of factors. If expectations aren’t set, then deliverability issues and high attrition can result. This type of permission often results in poor compliance with regulations such as CAN-SPAM, CASL, and GDPR. Review your permission types with your legal counsel.
Set Rules to Prioritize Messages and Types by Brand and Channel
- Brand Model: The brand with the most recent activity takes priority. The first brand to gain permission takes priority.
- Email Engagement Model: Ranks by average message KPIs (open and click rates). Set rules to prioritize messages and types by brand and by channel.
- Customer Model: Prioritizes the value of the customer, including purchase amounts, frequency, and time on file. Uses personas based on account type, vehicle class, website, and email engagement.
- Revenue and Return Model: Uses the message with the highest estimated revenue or return per message for each subscriber.
Synchronize Profile Center
- Configure Marketing Cloud Connect to synchronize the Individual object in a Data Extension.
- Create Automation Filters.
- Configure SQL and SSJS.
SQL and SSJS Examples:
SELECT
sub.SubscriberKey "Subscriber Key",
sub.EmailAddress "Email Address",
sent.OYBAccountID "BusinessUnitID"
FROM
_Subscribers sub
inner join _Sent sent on sub.SubscriberKey = sent.SubscriberKey
inner join _EnterpriseAttribute ea on sub.SubscriberID = ea._SubscriberID
WHERE
sent.OYBAccountID <> ea.BusinessUnitID
<script runat="server">
Platform.Load("Core", "1");
try {
var mid = YOUR BUSINESS UNIT ID;
var skey = "YOUR SUBSCRIBER KEY";
var sub = {
"Attributes": { "BusinessUnitID": mid }
};
var subObj = Subscriber.Init(skey);
var status = subObj.Update(sub);
Write(Stringify(status));
} catch(e) { Write(Stringify(e)); }
</script>
Related Content
|
|
Review earlier steps in this solution. |

