Prerequisites

To use S4S List Builder with Sitecore 9.3 and above, you require the following:

Installation

S4S List Builder comes as a standard Sitecore Package. Users can install it from:

Sitecore Desktop » Start menu » Development Tools » Installation Wizard.

By default, S4S List Builder imports Email Address, First Name and Last Name from Salesforce to the Sitecore Contact. S4SLB 2.93.20244.1 supports additional Salesforce fields to be saved in the Sitecore Contact as custom facets - see the following steps:

Constraints

S4S List Builder does not push Sitecore Email Experience analytics back to Salesforce so full "round trip" reporting is not possible. Our S4S EXM module is required for this.

Technical

S4S List Builder creates new Contact Lists in Sitecore. These are not real lists, but list id references in each Contact record that the contact belongs to.

When importing through S4S List Builder the process tries to find xDB contacts that match the configured identifier for the Salesforce object. If an xDB contact exists it is added to the list otherwise a new xDB contact is created, with the appropriate identifier, and added to the list.

Ideally an xDB contact that is linked to a Salesforce contact or lead should be the same one regardless of whether it is created through S4S List Builder or through the S4S form submit action. By default the identifiers in Sitecore are case sensitive but the S4S.Analytics.ConvertIdentifierValueToLowerCase setting in /App_Config/Modules/S4S/S4SAnalytics.config can be configured to save all identifiers as lower case so they are consistent across S4S. The identifier source and field containing the identifier need to be configured so that the xDB contacts can be matched.

Identifier Source

By default, S4SLB uses “S4S“ as the IdentifierSource. This value can be changed from the following config setting in /App_Config/Modules/S4S/S4SAnalytics.config. Keep in mind that changing this value will affect the S4S form submit action as well.

<!-- The source to use for identifiers -->
<setting name="S4S.Analytics.IdentifierSource" value="S4S" />

Identifier

In /App_Config/Modules/S4S/S4SLB.config, there are two config settings to set the Salesforce fields to use as the identifier of the Sitecore contact. By default those config setting values are set to “Email“ so the Email field in the Salesforce contact or the lead will be used as the Sitecore xDB contact identifier.

<!--Salesforce contact field which use to identify Sitecore contact created by S4SLB-->
<setting name="FuseIT.S4SLB.SFContact.IdentifierField" value="Email" />

<!--Salesforce lead field which use to identify Sitecore contact created by S4SLB-->
<setting name="FuseIT.S4SLB.SFLead.IdentifierField" value="Email" />

Ideally, having the same Salesforce fields configured in the above settings and in “S4S.Analytics.Identifier“ setting in /App_Config/Modules/S4S/S4SAnalytics.config (Refer Select Options in S4S Sitecore Form Mapping Wizard for more details) will give more robust Sitecore contacts in the XDB. It will prevent redundant Sitecore Contacts being created for the same Salesforce entity when using the S4S submit action and S4S List Builder.

Default Languages

As of v2.93.24124.1, the S4SLB configuration file may optionally include a FuseIT.S4SLB.DefaultLanguageCodes setting. This defines one or more language codes to be selected by default when creating new lists. If empty or missing, all Sitecore languages will be selected by default.

<!-- Comma-separated language codes selected by default for new lists, if empty all languages will be selected. -->
<setting name="FuseIT.S4SLB.DefaultLanguageCodes" value="en-US"/>

Next Step

Congratulations, you have finished installing this option.