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.
On Save, two workflows must be created/updated, as per the ‘confirmation’ popup. The Salesforce admin must confirm that the workflows have been created and activated in the Salesforce account.
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 workflows 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.