Skip to main content
Skip table of contents

Salesforce Connector – Contact Mapping

Using Contact Mapping

Once configured, you will select which fields to sync from Supporter to Contact through the Contact Mapping section of the wizard.

The only required fields to map are Email Address and Last Name. The Salesforce Contact ID, Engaging Networks Client ID, and Engaging Networks Supporter ID will automatically map and indicate the field names in both systems. Additional fields can be added to sync through the ‘Manage Fields’ button below the default fields included to map.

The ‘sync way’ for all contact fields can be BOTH, PULL (to Engaging Networks) or PUSH (to Salesforce). To change the direction of the sync, you will click the phrase in the ‘Sync Direction’ column indicating ‘BOTH,’ ‘PULL,’ or ‘PUSH’ between the specific field sync you are modifying.

If using NPSP formula fields and only want data ‘to EN,’ click to toggle the sync between the specific fields to ‘PULL.’

By default Address 1 is mapped to MailingStreet. If a client is using Address 1 and Address 2 fields, please instead map to Contact.“EN Address 1” and Contact.“EN Address 2”. There is a pre-installed trigger on the Contact which extracts the first line of the MailingStreet field to EN Address 1 and the remainder to EN Address 2. Clients can use the Contact MailingStreet as usual and the trigger will handle the separation and concatenation.

Opt Ins should be created as checkbox fields on the Contact. While Salesforce by default offers ‘Opt Out,’ on the Contact record (usually one field), Engaging Networks handles as “Opt In.’ As clients can have multiple Opt Ins, we recommend creating and mapping each Opt In field in Salesforce to reflect the same structure from Supporter to Contact (as the example below).

On Save, two Flows must be created/updated, as per the ‘confirmation’ popup. The Salesforce admin must confirm that the Flows have been created and activated in the Salesforce account.

FAQs

How does Engaging Networks know which Contacts to pull and which Supporters to push?

Engaging Networks keeps track of the last sync via an internal Last Checked timestamp.

It then compares this timestamp with Contact.engaging__EN_Last_Modified_Date__c to determine which contacts have been changed.

Therefore, it is important to set the two flows up correctly.

How does Engaging Networks reference supporters as Contacts?

With the Salesforce integration, Contact Id is being stored alongside the supporter record in Engaging Networks. A new field titled “Contact Id” is populated when Contact information is pushed and pulled from Engaging Networks.

On Contact information being returned back to Engaging Networks, Contact Id is checked first and if a match is found – will update the supporter record. This is a recent update and is currently specific to the Contact sync.

How does the connector handle Opt In Questions?

When Engaging Networks pushes and pulls Contacts, value replacements will occur to support the different methods both systems handle this relationship.

As “Opt Ins” are either Y or N in Engaging Networks, the following happens in sync:

When Contacts are pushed:

BLANK is replaced to FALSE
N is replaced to FALSE
Y is replaced to TRUE

On pull of Contacts back:

FALSE is replaced to N
TRUE is replaced to Y

Checkbox fields on the Contact

Engaging Networks allows any value to be retained and the field ‘type’ on the Default Account Structure mainly helps in Form Block display, on Pages, and under the Lookup Supporters gadget.

Salesforce, however, is stricter and requires Checkbox values to either be TRUE, FALSE, 1 or 0.

If your organization plans to use Checkbox fields in the Contact sync, the respective fields in Engaging Networks must use TRUE or FALSE. This is especially notable when these fields will be answered by supporters on pages. A radio button that either records TRUE or FALSE will help in preventing sync errors from Salesforce.

A use case to take note of, if using Checkbox fields, are new supporters.

When a new supporter is created, any fields not set with data on creation would be blank. If a field is set to PUSH or BOTH on the Contact Mapping – Salesforce would complain as the value is neither TRUE or FALSE.

When Contacts are pushed

  • BLANK is replaced to FALSE

  • 1, y, Y, true and TRUE are replaced with TRUE

  • Any other value is replaced with FALSE

On pull of Contacts back

Nothing is replaced. We respect the value being returned from Salesforce.

It is recommended for fields, outside of Opt Ins, that TRUE or FALSE be the value stored in Engaging Networks. For supporter facing fields, please be sure checkboxes are submitting TRUE or FALSE. Using different values will affect account user’s queries, as they could have supporters with different values.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.