Setup Guide

Set up and configure Salesforce Marketing Cloud as a destination in RudderStack.

This guide will help you set up Salesforce Marketing Cloud (SFMC) as a destination in the RudderStack dashboard. It also lists the configuration settings required to correctly send data from the supported sources to SFMC.

Connection compatibility

Destination info
  • Status: Generally Available
  • Supported sources: Android, iOS , Web, Unity, AMP , Cloud, Warehouse, React Native , Flutter, Cordova, Shopify
  • Refer to it as SFMC in the Integrations object.

Connection modes
SourceCloud modeDevice modeHybrid mode
AMPsupportednot supportednot supported
Androidsupportednot supportednot supported
Cloudsupportednot supportednot supported
Cordovasupportednot supportednot supported
Fluttersupportednot supportednot supported
iOSsupportednot supportednot supported
React Nativesupportednot supportednot supported
Shopifysupportednot supportednot supported
Unitysupportednot supportednot supported
Warehousesupportednot supportednot supported
Websupportednot supportednot supported
Supported message types
SourceIdentifyPageTrackScreenGroupAlias
Cloud mode
Supported sourcessupportednot supportedsupportednot supportednot supportednot supported

Prerequisites

Before configuring SFMC as a destination in RudderStack, make sure to:

Create data extensions

RudderStack recommends creating a data extension in SFMC to store the incoming identify and track events. You must also create the required attributes in your data extension for each trait (for identify events) or properties (for track events) before sending the data to SFMC.

warning

SFMC ignores any traits/properties that are not mapped to the data extension attributes.

For example, if you send an event property like "phone": "+1-202-555-0146" but there is no matching phone column in your SFMC data extension, then SFMC ignores that property.

While creating data extensions, make sure to:

  • Create all the attributes in the data extension in title case regardless of the casing used for the trait/property names in your RudderStack identify/track events. RudderStack automatically formats the field names into title case before sending the events to SFMC.
  • Check the Is Sendable option if you want to send emails or push notifications based on your events.

The primary key for the Identify data extension is called as the contact key or subscriber key. You must add a primary key called Contact Key for your data extension before sending data to SFMC. RudderStack populates this field with the userId or email (if userId is absent) traits in the identify event.

For track calls, you can set up different primary keys for various events. If you do not set any primary key, RudderStack sets the default primary key to Contact Key. You can specify multiple comma-separated primary keys if you have defined multiple primary keys in your data extension.

See the following sections for more information:

Generate credentials to send data

  1. In your SFMC dashboard, go to Apps > Installed Packages.
SFMC installed packages
  1. Create a new package. Then, go to the package and click Add Component.
Add new component in SFMC package
  1. Choose API Integration as the component type and click Next.
API Integration component type
  1. Select the integration type as Server-to-Server and click Next.
S2S Integration type
  1. Note the client ID and secret for this package (listed under API Integration). Specify these credentials in the connection settings while setting up the SFMC destination in RudderStack.

Setup

  1. In your RudderStack dashboard, add a source. Then, from the list of destinations, select Salesforce Marketing Cloud.
  2. Assign a name to uniquely identify the destination in RudderStack. Then, click Continue.

Connection settings

SettingDescription
Client IDEnter the client ID associated with your SFMC package.
Client SecretEnter the client secret for the package.

Note: See Generate credentials to send data to obtain the client ID and secret.
SubdomainEnter the subdomain associated with your SFMC account. It is a 28-character string starting with the letters mc.

For example, if your Authentication Base URI is https://mcxt4zx444ppr71jd9rp300hdc8y.auth.marketingcloudapis.com/, then the subdomain is mcxt4zx444ppr71jd9rp300hdc8y.

Identify call settings

SettingDescription
Do not create or update contactsTurn on this toggle to prevent RudderStack from creating or updating contacts in SFMC via an identify event.
Identify data external keyEnter the external key of the SFMC data extension to which to you want to send data from your identify events.

You can find the external key for your data extension in the SFMC dashboard by going to Contact Builder > Data Extensions.

Track call settings

SettingDescription
Map events to external keyUse this setting to map your track events to an SFMC data extension.

For more information on this setting, see Map events to external key.

Note: You will get the “Event not mapped for this track call” error if you do not map an event to an external key and send the event to SFMC.
Map events to primary keyUse this setting to map your own primary key for a track event.

For more information on this setting, see Map events to primary key.
Map events to event definition keyUse this setting to map your RudderStack event to a specific SFMC event definition key.

For more information on this setting, see Map events to event definition key.
Event Name to UUIDUse this setting to assign a UUID as the primary key for a specified event.

For more information on this setting, see Set UUID as primary key.
SettingDescription
Consent management providerConfigure the consent management settings for the specified source by choosing the consent management provider from the dropdown.

Note: If you choose Custom, make sure to pass the custom consent data to SDK.

Next steps



Questions? Contact us by email or on Slack