Configuring Integration Between
Multichannel and Salesforce.com
Copyright © 2013-‐2014 LiveOps Inc. All rights reserved.
LiveOps, LiveOps Applications, LiveOps Authoring, LiveOps Insight, LiveOps Social and LiveOps Voice are either registered trademarks or trademarks of LiveOps, Inc. All other names may be trademarks of their respective owners.
Contents
Configuring Integration with Salesforce.com ... 4
Configuring Salesforce.com to Interact with Engage ... 4
Installing the Engage Application ... 4
Configuring the Engage Application ... 5
Installing the Mass Update and Edit Application ... 6
Configuring Remote Site Settings ... 7
Creating an Additional API User ... 8
Enabling Agents to View All Contacts and Leads in Salesforce.com ... 8
Configuring CRM Integration Settings in Multichannel ... 11
Settings Tab ... 11
Contact Config Tab ... 12
Lead Config Tab ... 12
Interaction Config Tab ... 13
Sync Tab ... 14
Configuring Mappings ... 14
Fields Available for Mapping ... 15
Customer ... 15
ContactType ... 16
GenericCustomerData ... 17
Mapping Customer Records to Contacts or Leads ... 17
Example 1: Mapping a Salesforce.com Field with No Equivalent in Engage ... 18
Example 2: Mapping Corresponding Fields ... 18
Copyright © 2014 LiveOps, Inc.
Configuring Integration with Salesforce.com
You can configure Engage and Salesforce.com to exchange customer records and interactions. This enables agents to keep better track of interactions and to keep the data in Salesforce.com and Engage consistent.
Configuring Salesforce.com to Interact with Engage
Configuring Salesforce.com to interact with Engage involves: • Installing and configuring the Engage application • Installing the Mass Update and Edit application • Configuring remote site settings
• Create an additional API user
Installing the Engage Application
The Engage application is a Salesforce.com package that handles the interactions between Engage and Salesforce.com.
To install the Engage application:
1. Log into Salesforce.com using an administrator account.
2.
Copy and paste the following link into your web browser:https://login.salesforce.com/packaging/installPackage.apexp?p0=04t90000000UyeD The Package Installation Details page displays.
3. On the Package Installation Details page, click Continue. 4. On the Approve Package API Access page, click Next.
5. On the Choose Security Level page, select the Grant access to admins only option and then click Next.
6. Click Install.
Once the application is installed, you can add it to the tab bar at the top of the Salesforce.com window for quick access. To do that:
1. Click the All Tabs button ( ).
2. In the All Tabs window, click the Customize My Tabs button.
3. In the list of available tabs, click LiveOps Engage and then click the Add button.
4. Click Save. The LiveOps Engage tab is added to the tab bar.
Configuring the Engage Application
Next, apply the Engage application settings that allow Salesforce.com and Engage to communicate, as well as control how Salesforce.com emails error notifications. To configure the Engage application:
1. Click Engage on the tab bar. 2. Configure the following options:
Option Description
API URL The URL to the Engage API.
Username The name of the user who can access the Engage Contact service API. This can be, for example, a Engage
administrator.
Password The password for the user who can access the Engage Contact service API. This can be, for example, a Engage administrator.
Log Level The amount of detail that you want Salesforce.com to include in log files. Select either Normal (minimal amount of information) or Debug (detailed information).
Enable Contact/Lead Synchronization
Enables automatic synchronization of contact and lead information with Engage. If this option is not selected, you must manually trigger the synchronization of data in Multichannel. See the section Sync Tab for more information.
Failed record resend interval
The number of minutes (between 1 and 60) between attempts to send data to Engage after a synchronization failure.
API Users The Salesforce.com users who can access the Engage Contact service API. Click Add Users, select the one or more Salesforce.com users from the list that displays, and then click Add.
Copyright © 2014 LiveOps, Inc.
3. Click the Email Notification tab and configure the following settings to specify when, how often, and to whom failure notification messages will be sent:
Setting Description
Notify user on Select one or both of the following options to specify the type of failure that triggers an email notification:
• Synchronization failure – Send a notification when synchronization of records between Salesforce.com and Engage has failed.
• API call failure – Send a notification when the scheduled task for synchronizing records has failed. Frequency of
notification email
Select one of the following options to specify how often a notification email is sent when failures occur:
• Every time a failure occurs. • Every hour, if a failure occurred. Once a day, if a failure occurred. Email list to send the
notification
Enter the email address to which notifications will be sent and then click Add. You can add multiple email addresses. However, you can only add one address at a time.
4. Click Save.
Installing the Mass Update and Edit Application
The Mass Update and Edit application is a Salesforce.com component that enables Engage to synchronize batches of new and updated records with Salesforce.com.
To install the Mass Update and Edit application:
1. Log into Salesforce.com using an administrator account. 2. Copy and paste the following link into a web browser window:
https://login.salesforce.com/packaging/installPackage.apexp?p0=04t80000000cIfdAAE 3. On the Package Installation Details page, click Continue.
4. On the Approve Package API Access page, ensure that all options are selected and then click Next.
5. On the Choose security level page, ensure that the Grant access to admins only option is selected and then click Next.
Once the application is installed, you can add the Mass Edit and Mass Update buttons to the page layouts for contacts and leads. The buttons appear when an agent or administrator views all contacts or all open leads in Salesforce.com.
To add the Mass Edit and Mass Update buttons to the layouts for contacts and leads: 1. In Salesforce.com, click Setup.
2. In the sidebar, select Customize > Contacts > Search Layouts under Build. 3. On the Contact Search Layouts page, click Edit beside Contact List view.
4. Select Mass Edit and Mass Update from the Available Buttons list and then click the
Add button.
5. Click Save.
6. Repeat steps 1 to 5 for leads.
Configuring Remote Site Settings
You must register your instance of Multichannel with Salesforce.com to ensure that calls to the Engage API from Salesforce.com do not fail. Do this by adding your instance of Multichannel to Saleforce.com’s remote site settings.
To configure remote site settings: 1. In Salesforce.com, click Setup.
2. In the sidebar, select Security Controls > Remote Site Settings under Administer. 3. On the All Remote Sites page, click New Remote Site.
4. Do the following:
• In the Remote Site Name field, enter a descriptive name for your Engage instance – for example, Engage Live.
• In the Remote Site URL field, enter the full URL to your instance of Engage – for example, https://{instance name}.liveops.com (where {instance name} is the name of your instance of Engage).
Copyright © 2014 LiveOps, Inc.
Creating an Additional API User
When Engage synchronizes data with Salesforce.com, Salesforce.com updates its records and then performs another synchronization back to Engage. Setting up an additional API user prevents Salesforce.com from triggering a second synchronization.
To create an additional API user: 1. In Salesforce.com, click Setup.
2. In the sidebar, select Manage Users > Users under Administer. 3. On the All Users page, click the New User button.
4. The following are the fields that are required when creating a new user:
Field Description
Last Name The last name of the user.
Alias A short name, of up to eight characters, that identifies the user on Salesforce.com reports and list pages. Email An email address for the user. The email address
becomes the user name in Engage.
Nickname Enter a name that will be displayed to users of online communities. This can be the same as the name that you entered in the Alias field.
Role Select any option from the list.
User License Select Salesforce from the list.
Profile Select System Administrator from the list.
5. Click Save.
6. On the tab bar, click Engage. 7. Click Add Users.
8. In the list that displays, select the API user that you added in step 4 and then click Add. 9. Click Save.
Next, add the new API user to the CRM Integration settings in Multichannel. For more information, see the section Settings Tab.
Enabling Agents to View All Contacts and Leads in Salesforce.com
Agents, who do not have administrator rights, might not be able to view all Contacts and Leads in Salesforce.com. If they can view Contacts and Leads, the agents may not be able to view the Engage Interactions list (which contains details of all calls and messages) on a Contact’s or Lead’s profile page.
To enable agents to view all Contacts and Leads, as well as the Engage Interactions list, you must to set up a new user profile in Salesforce.com and then apply that profile to all agents.
Note: The procedure in this section must be carried out using the Salesforce.com administrator account.
To enable agents to view all contacts and leads in Salesforce.com: 1. Log into Salesforce.com using an administrator account. 2. Click Setup.
3. In the sidebar, click Customize > User Interface under Build. The User Interface page displays.
4. On the User Interface page, select the Enable Enhanced Profile User Interface option under Setup and then click Save.
5. In the sidebar, click Manage Users > Profiles under Administer. The Profiles page displays.
6. On the Profiles page, click Clone beside Standard User.
The Clone Profile page displays.
7. On the Clone Profile page, enter a name for the new user profile – for example, Standard User – in the Profile Name field and then click Save.
A page containing information about the new profile displays.
8. Click Object Settings under the Apps grouping and then do the following: • To enable agents to view all Contacts:
o Click Contacts and then click Edit.
o Under Object Permissions, click View All.
o Click Save.
Copyright © 2014 LiveOps, Inc.
• To enable agents to view all Leads: o Click Leads and then click Edit.
o Under Object Permissions, click View All.
o Click Save.
• To enable agents to view the Engage Interactions tab: o Click Engage Interactions and then click Edit. o Under Object Permissions, click Read and View All.
o Click Save.
9. In the sidebar, click Manage Users > Users.
10. Click the Edit link beside the name of an agent who does not have administrator privileges in Salesforce.com. The User Edit window displays.
11. Do the following:
• Select Salesforce from the User Licence list.
• Select the name of the profile that you created in step 7 – for example,
LiveOps Standard User – from the Profile list.
12. Click Save.
13. Repeat steps 10 to 12 for each agent to whom you want give permissions to view Contacts and Leads.
To test the change, log in as an agent and then click Contacts on the tab bar. Select All Contacts from the View list and then click Go. A list of all of the contacts available to an administrator displays.
Configuring CRM Integration Settings in Multichannel
Using the CRM Integration Settings screen in Multichannel, you can configure Engage to interact with Salesforce.com. In addition to configuring the settings that connect Engage to
Salesforce.com, this screen also enables you to map fields in Salesforce.com to fields in Engage. Mappings are essential because Engage and Salesforce.com store the same data in different ways. Mappings ensure that:
• Data is inserted into the correct fields for each application when it is synchronized. • The data in both systems is consistent.
For more information, see Configuring Mappings below.
There are five tabs on the CRM Integration screen that are used to configure the interactions between Multichannel and Salesforce.com:
• Settings Tab • Contact Config Tab • Lead Config Tab • Interaction Config Tab • Sync Tab
Note: You must enable CRM integration in Multichannel before continuing.
Settings Tab
Configure the settings that enable Engage to exchange data with Salesforce.com on this tab.
Setting Description
Username The email address of the Salesforce.com API user that was created in the section Creating an Additional API User.
Password The password of the Salesforce.com API user that was created in the section Creating an Additional API User.
Copyright © 2014 LiveOps, Inc.
Setting Description
Security Token The security token that was generated by Salesforce.com. The security token is a key that you add to the end of your Salesforce.com password, which allows you to log into Salesforce.com from an untrusted network. For more information about security tokens, refer to the Salesforce.com online help. SOAP API
Login URL The URL for the server that your organization uses to login into Salesforce.com – for example,
https://login.salesforce.com/services/Soap/u/27.0. Contact your
Salesforce.com administrator to obtain the URL.
Async API URL The URL used to asynchronously add, update, or delete large numbers of records – for example,
https://{instanceName}.salesforce.com/services/async/27.0. Contact
your Salesforce.com administrator to obtain the URL. Sync-‐out
messages
Select this option to automatically push information about customer interactions in Engage to Salesforce.com activity records.
Test
Connection
Click this button to check whether or not Engage can communicate with Salesforce.com. If the configuration is correct, the message Connection is successfully established displays. If an error message displays, check the settings on this tab and in Salesforce.com, and then try again.
Contact Config Tab
The Contact Config tab enables you to create, edit, and view mappings between Engage customer records and Salesforce.com contacts. The mappings link fields in Engage customer records to their equivalents in Salesforce.com.
For more information about creating mappings between Engage customer records and Salesforce.com contacts, see Configuring Mappings below.
Lead Config Tab
The Lead Config tab enables you to create, edit, and view mappings between Engage customer records and Salesforce.com leads. Leads are prospective customers who have expressed an interest in a company’s products or services.
Engage does not an equivalent to leads. The mappings on this tab link fields in Engage customer records to fields for Salesforce.com leads. In Engage, the Record Type buttons in the Customer Panel indicate the type of customer (either Contact or Lead), as shown below:
In Salesforce.com, the lead’s information appears on the Leads tab.
Note: If your organization does not use leads in its business, you do not need to add new mappings or change the existing ones. The lead mappings will be ignored whenever data is synchronized.
For more information about creating mappings between Engage customer records and Salesforce.com leads, see Configuring Mappings below.
Interaction Config Tab
The Interaction Config tab displays the default field mappings between Engage and Salesforce.com. You cannot edit the mappings on this tab.
Copyright © 2014 LiveOps, Inc.
Sync Tab
The Sync tab enables you to manually synchronize contact and lead records between Engage and Salesforce.com.
Multichannel includes scheduled tasks – Service_CRM_SyncIn_All,
Service_CRM_SyncOut_Customers, and Service_CRM_SyncOut_Messages – that perform
synchronization options at specific intervals. However, you can use the options on this tab if you need to manually synchronize information because synchronization is disabled or if there are connection issues with Salesforce.com.
Option Description
Sync In Contact Pulls all new and updated contact information from Salesforce.com into Engage.
Sync In Lead Pulls all new and updated lead information from Salesforce.com into Engage.
Sync In Contact & Lead Pulls in all new and update lead and contact information from Salesforce.com into Engage.
Sync Out Customer Pushes new and updated customer records from Engage to Salesforce.com.
Sync In Account Names Updates the list of Salesforce.com account names in Engage and, where applicable, updates the Account field in customer records.
Configuring Mappings
Mappings create a relationship between fields in Engage and Salesforce.com. Mappings help ensure that Engage and Salesforce.com can seamlessly exchange data, and that agents have access records from Salesforce.com in from within Engage.
You may also need to create mappings because:
• Salesforce.com uses a number of fields that have no equivalents in Engage – for example,
MailingCity and CaseNumber. You may need to make some of those fields visible in
Engage.
• Certain fields in Salesforce.com have different names than their counterpart in Engage – for example, MobilePhone in Salesforce.com and Mobile in Engage.
Note: You must ensure that the fields that you are mapping are of the same data type – for example, both are Text fields or DateTime values. If the fields are not of the same data type, then synchronization of data between Engage and Salesforce.com will fail.
Fields Available for Mapping
Configuring a mapping involves selecting:
• One of the following Engage objects, which indicate the fields that you can use for mappings, from the Object Name list:
o Customer (customer name and address fields).
o ContactType (fields that specify customer contact information – for example, an email address).
o GenericCustomerData (custom fields that have been configured in Multichannel).
• The available fields for each object are described below.
• The name of a field in Salesforce.com from the External Field Name list. • The corresponding Engage field from the Field Name list.
Customer
If you choose Customer from the Object Name list, the following fields are available in the Field Name list:
Engage Field Name Salesforce.com Field Name Description
FirstName FirstName The customer’s first name.
LastName LastName The customer’s last name.
Address1 MailingStreet The customer’s street address.
Address2 OtherStreet Additional address information –
for example, floor or suite or apartment number.
Address3 Additional address information –
Copyright © 2014 LiveOps, Inc.
resides.
Country MailingCountry The country in which the customer
resides.
State MailingState The state in which the customer
resides.
PostCode MailingPostalCode The customer’s postal or ZIP code.
ContactType
If you choose ContactType from the Object Name list, the following fields are available in the Field Name list:
Engage Field Name Salesforce.com Field Name Description
Mobile MobilePhone The customer’s mobile phone
number.
Engage Field Name Salesforce.com Field Name Description
Fax Fax The customer’s fax number.
HomePhone HomePhone The customer’s home phone
number.
BusinessPhone Business Phone The customer’s business phone
number (if applicable).
GenericMessageType1 n/a A custom field in Engage.
GenericMessageType2 n/a A custom field in Engage.
Twitter n/a The customer’s Twitter handle.
Facebook n/a The customer’s Facebook user
name.
GenericCustomerData
If you choose GenericCustomerData from the Object Name list, the fields that are available in the Field Name list will vary depending on what custom fields have been configured in
MultiChannel. For example, you can define ShortField03 as Title, and map that field to the
Title field in Salesforce.com.
Mapping Customer Records to Contacts or Leads
To map customer records to contacts or leads, select Admin > CRM Integration. In the CRM Integration Settings window, click the Contact Config tab or the Lead Config tab and then click
Add New Mapping.
1. Select the Salesforce.com field that you want to map to a Engage field from the External
Field Name list.
2. Select an option from the Object Name list.
3. Select the Engage field that will be mapped to the Salesforce.com field from the Field
Name list.
Copyright © 2014 LiveOps, Inc.
Example 1: Mapping a Salesforce.com Field with No Equivalent in Engage
In this example, you will be mapping the Salesforce.com AccountID field to a custom field in Engage. You must use a custom field since Engage does not have an equivalent to the AccountID field.To map the AccountID field to a custom field in Engage:
1. In the CRM Mapping Maintenance window, select AccountID from the External Field
Name list.
2. From the Object Name list, select GenericCustomerData. 3. Select a custom short field from the Field Name list.
If the custom short field does not exist, you must create it. For more information, see the section Data Field Maintenance.
4. Click Save.
The new mapping appears on the Contact Config tab, as shown below:
Example 2: Mapping Corresponding Fields
In this example, you will be mapping the Salesforce.com MailingCountry field to the Country field in Engage.
1. In the CRM Mapping Maintenance window, select MailingCountry from the External
Field Name list.
2. Select ContactType from the Object Name list. 3. Select Country from the Field Name list. 4. Click Save.
The new mapping appears on the Lead Config tab, as shown below: