How to integrate BoldChat with Salesforce

By integrating Salesforce and BoldChat, your organization will be able to create Salesforce objects from active or inactive chats directly from the operator client application.

Operators are presented with a dynamically rendered screen that matches fields in Salesforce. The fields presented in the dialog can be restricted or excluded in two ways: By using an exclusion list or by correlating an operator to a Salesforce profile.

Important: Salesforce integration is only available to BoldChat Premier and Enterprise subscribers.

Features and advantages:

  • Chat agents have the tools they need inside the BoldChat interface.
  • Fields can be excluded from view to improve efficiency.
  • Required field types are supported.
  • Custom fields are supported.
  • Data is pre-populated but also editable.
Note: For information about Salesforce and data residency, see Data Residency Options.

Salesforce Configuration

BoldChat's Salesforce Module Setup

To utilize the module, BoldChat/Salesforce administrators must configure a Salesforce connector by following the implementation process below.

  1. Install the BoldChat Salesforce Module v1.9 from this link.

    Result: This will put a "BoldChat" app in your Salesforce interface.

  2. Decide what Salesforce user login you will be using for the BoldChat integration setup. This could be one of your existing Salesforce user logins, or a new, separate one that you create. This user must have the "API Enabled" permission checked in their "Profile" or must be an "API Only" type of user. The significance of deciding on the Salesforce user login to use is that the login credentials for this user will be setup in the BoldChat account setup so that the BoldChat system can pass data to your Salesforce account via the API.
    Note: If you would like to correlate a BoldChat Operator with a specific Salesforce user Profile, you will need to create multiple Salesforce connectors. Specifically, a connector should be set up for every Salesforce profile you would like available to associate with a BoldChat operator. Use the credentials of a Salesforce user that has the associated profile and access to the API. Our system will then use these credentials for Layout presentation and data insertion.
    After creating multiple connectors for the Salesforce Profile, edit your operators account and choose which connector they should use. This can be accomplish by navigating to Setup > Account Setup > General > Operators, select the Salesforce tab and then choose the desired Salesforce connector to associate to the operator.
  3. Make sure you have the latest version of the BoldChat client application installed. You can download it for free from here: http://www.boldchat.com/live_chat_software/downloads.jsp
  4. Launch your BoldChat client application, and log in.
    1. Access the Salesforce Integration Module configuration by navigating to Setup > Account Setup > General > Salesforce Connectors.
    2. Click "New" to create a new integration connector profile.
    3. Give the profile a "Name", such as "Salesforce Connection" (this is just for labeling purposes, so any name will work).
    4. Select the "Active" checkbox.
    5. Select "Salesforce" from the "Connector Type" drop-down.
    6. Enter your Salesforce "Username" and "Password".
    7. Temporarily, uncheck both of the "Lookup" options then select the "Never create a Case" option. (We will come back to these options later)
    8. Click the "Test" button, it should fail, but will provide you a dialog and message providing you with the IP addresses that you will need to setup in your Salesforce account ... write these IP addresses down.
    9. Click "Save", then close the "Account Setup" dialog.
  5. Now you need to setup the BoldChat IP addresses as trusted IP's in your Salesforce account. Log back into your Salesforce account (with an administrator login) and select Setup > Administrative Setup > Security Controls > Network Access. Click New and input the IP addresses that were provided in the BoldChat dialog message when you did the "Test" button above. If the IP's are consecutive, input the first one as the start of the IP address range and the 2nd one as the end of the IP address range. If the IP's are NOT consecutive, then create two ranges with just one of the IP's as both the start and end of that range. This configuration will allow the BoldChat servers to be able to access your Salesforce account via the API to put your chats into Salesforce.
  6. Go back to your BoldChat client application, click Setup > Account Setup > General > Salesforce Connectors. Select your profile, and choose Edit. Now, try the Test button again ... it should confirm that the connection works now. Your BoldChat / Salesforce integration in now configured. The trigger event in BoldChat, to send the chat information to Salesforce, is when the chat session "closes". This happens automatically, 1 minute after the chat session "ends" (i.e. turns italics and the operator and visitor can no longer send messages back-and-forth to each other).
  7. Try the Test button again.

    Result: It should confirm that the connection works now. Your BoldChat / Salesforce integration is now configured. The trigger event in BoldChat to send the chat information to Salesforce is when the chat session "closes". This happens automatically 1 minute after the chat session "ends" (that is, turns italics and the operator and visitor can no longer send messages back-and-forth to each other).

Additional Setup ? Connector Settings Reference

Below are detailed references for the various setup options available in the BoldChat/Salesforce Integration module. These options will allow you to configure integration automation, custom objects, custom fields and the BoldChat to Salesforce data field tie-ins. BoldChat tie-ins allow you to directly associate a value from interactions with visitors using BoldChat to specific fields within Salesforce. Once these associates are made, the Salesforce object presented in the BoldChat/Salesforce object dialog will have the values automatically populated for insertion into Salesforce.

When to create a Chat

Never create a Chat object
This choice will prevent a Chat Object from being created automatically, even if a Salesforce object is create from the Salesforce Button .
Always, when it closes
Choosing this selection will automatically create a Chat Object within your Salesforce account.
When flagged or it's associated with another Salesforce object
Choosing this selection creates a chat record when either an agent uses the Salesforce button to manually create a Salesforce object or when an agent flags a chat.
Only when it is associated with another Salesforce object
Choosing this option creates a chat record only when an agent uses the Salesforce button to manually create a Salesforce object.

When a Chat is created

Look-up Contact by email address
  • This option will cause the BoldChat Salesforce Module to try to find an existing "Contact" in Salesforce that matches the email address associated with the chat session. Specifically, this is the visitor's email address that can be prompted for in the pre-chat form, or can be programmatically passed into the chat through the "ve" URL parameter when the chat is launched from your web page.
  • If an existing Salesforce "Contact" is found, then the resulting "Chat" record created in Salesforce will be automatically associated with that Contact.
  • If you have the option configured to automatically create a "Case" for the chat (see setup option description below), then the resulting "Case" record will also be automatically associated with the Contact.
  • If an existing Salesforce "Contact" is NOT found, then the "Chat" record (and optionally the "Case" record) is not associated with a contact. That is, those association fields are left empty.

When to create a Case

  • Create a Case if the chat's user status is "case" - When the "Chat" record is created in Salesforce, a "Case" record will also be created if the BoldChat's chat "Status" field value was set to "case", at the time that the chat closed. Note, you can define the chat "Status" field values in BoldChat by navigating to Setup > Account Setup > Chats > Chat Statuses.
Never create a Case
Choosing this selection prevents a Case from being automatically created and associated when the "Chat" record is created in Salesforce.
Create a Case for every chat
Choosing this selection will automatically created a Case and then will be associated to the "Chat" record when it is created in Salesforce. This will happen on every closed chat.
Create a Case if the chat is flagged
When the "Chat" record is created in Salesforce, a "Case" record will also be created if the chat was flagged in BoldChat at the time that the chat closed.
Create a Case if the chat's user category is "case"
When the "Chat" record is created in Salesforce, a "Case" record will also be created if the chat's "Category" field value in BoldChat was set to "case", at the time that the chat closed.
Note: You can define the chat "Category" field values in BoldChat in the "Account Setup" > "Chats" group > "Chat Categories"
Create a Case if the chat's user status is "case"
When the "Chat" record is created in Salesforce, a "Case" record will also be created if the BoldChat's chat "Status" field value was set to "case", at the time that the chat closed.
Note: You can define the chat "Status" field values in BoldChat by navigating to Setup > Account Setup > Chats > Chat Statuses.

How the Owner field is set

The Owner field is not set
The "Owner" field will not be explicitly set; however, it will default to the Salesforce user used by the API. If you opted to set up multiple connectors to take advantage of Salesforce profiles, using this option will set the owner to the Salesforce user based on the credentials used for the connector. See Using Salesforce User Profiles below for more information.
Set to User with operator's email
The "Owner" field will be set to the Salesforce user that has an "Email" field value that matches the "Email Address" field value of the BoldChat operator that handled the chat session.
Set to User with operator's name
The "Owner" field will be set to the Salesforce user that has a "Name" field value that matches the "Name" field value of the BoldChat operator that handled the chat session.
Set to User with operator's username
The "Owner" field will be set to the Salesforce user that has a "Username" field value that matches the "Username" field value of the BoldChat operator that handled the chat session.
Note: This settings applies to the "Owner" field of the "Chat" record created in Salesforce, and also the "Case" record that might optionally be created at the same time (per above configuration).

Configuring Active Objects

Use the active object configuration area to manage your list of Salesforce object types that can be manually inserted using the Salesforce button from the Chats, Emails and Calls user interfaces. The new integration module supports both default and custom Salesforce objects. The Active Objects dialog also allows you to create custom data tie-ins that provide the ability to correlate BoldChat derived data to specific Salesforce object fields. For example, if you collect data using a custom field on your pre-chat form and you would like this information automatically tied to a certain field within Salesforce, you can create a tie-in. When an agent selects an object from the Salesforce button drop down to manually insert a new record, the data associated with the tie-in will automatically populate based on the value from the pre-chat form field.

Creating a New Salesforce Object

The following steps provide an example for creating and configuring a Salesforce object, specifically a Salesforce Opportunity object.

  1. From the Active Objects menu, click New.

    Result: The Add Salesforce Object Type dialog appears.

  2. The selection drop-down will then populate any available Salesforce objects within your account, both default and custom. Select Opportunity from the drop down and click add.

    Result: The Edit Salesforce Object dialog appears.

  3. Note: This step is optional.
    By default, all fields associated with this object type will be presented to the Operator when manually inserting the object. If you prefer to restrict some fields for efficiency, select New under the excluded fields area. The Add Field dialog appears and provides you a list of the available fields for the object that you may exclude. Create an exclusion for each field you prefer not to expose.
  4. Note: This step is optional.
    Service Tie-ins allow you to associate certain data points from BoldChat directly to fields within Salesforce. For example, if you collect data using a custom field on your pre-chat form and you would like this information automatically tied to a certain field within Salesforce; you can create a tie-in and it will be populated in the Salesforce field when an operator manually creates it from the BoldChat interface.
    1. Source Field- Select the BoldChat Service you want to select data from (Chat, Calls, Email, etc.).
    2. Select the BoldChat field from the drop down field that you want the Tie-in to be based on, if it's a custom field, check the custom field box.
    3. The Advanced Lookup area provides support for Salesforce Reference type objects; such as lookup fields. If you're unsure of the values you need to enter, consult your Salesforce Administrator for assistance.
    4. Use the Target Field to select the field in the Salesforce object you wish to pass the data into. Make a selection from the drop down, and if desired, create a default value in case the data is not available in BoldChat (i.e. the visitor didn't provide the information).
    5. Select Save and the Tie-in is complete. Repeat the above steps as required.

Using Salesforce Profiles

Salesforce User Profiles

"Salesforce User Profiles" is a collection of settings and permissions that define how users can access/insert records, how they see the data, and what they can do within the application. With enhanced integration, you can correlate BoldChat users to their appropriate Salesforce user profiles. This provides the familiar and permission-controlled interaction your agents are used to; all within the BoldChat interface.

If you would like to take advantage of Salesforce Profiling capabilities, you will need to have Profiles configured in Salesforce and then configure multiple Salesforce connectors within BoldChat. Specifically, a connector should be set up for every Salesforce profile you would like to use. By using credentials of a Salesforce user that has the associated profile and access to the Salesforce API, BoldChat will use these credentials for Layout presentation, data insertion an any other restriction that may be imposed by the profile.

Operator Configuration

After creating the connectors, simply edit your operators account and choose which connector you wish them to be associated to. This can be accomplish by navigating to Setup > Account Setup > General > Operators, selecting the Salesforce tab, and then choosing the desired Salesforce connector to make the association.