Knowledge Base

Configuring Salesforce

Introduction

Salesforce (www.salesforce.com) is a customer relationship management system that, among other things, provides a service that collects sales lead and contact information and stores it in rich visitor profiles. BlueConic is able to synchronize its own information with Salesforce using the Salesforce Connection, enriching the available information on both sides. The Salesforce Connection provides matching between BlueConic profiles and Salesforce lead and contacts, allows asymmetric synchronization, supports lead creation, and lets the sales team see live BlueConic information in Salesforce.

Create a Salesforce connection

To be able to make a connection with SalesForce, BlueConic needs the "Salesforce" plugin:

In BlueConic, open "Settings > Plugins".

Click [Add/Update Plugin].

Search for "Salesforce".

Click [Add Plugin] for the "SalesForce" plugin.

Close the "Add/Update Plugin" popup.

Now that the plugins are installed, the connections can be created and configured in BlueConic. Let's start with the Salesforce connection and configure the oAuth parameters:

In BlueConic, open "Settings > Connections".

Click [Add/Connection].

Select "SalesForce" to create a new Salesforce connection.

Think up and enter a new Consumer Key. This key will be used to set up a secure connection between BlueConic and SalesForce. The key may contain uppercase, lowercase and underscore characters and numbers, for example: "2015SalesForce" or "My_CRM_system".

Copy and paste your Consumer Key to a temporary note pad, as you will need it to configure SalesForce later.

Copy and paste your Consumer Secret to a temporary location, as you will need it to configure Salesforce later. Do this now, because the secret will be hidden once you navigate away from the connection!

Enter a title for the connection, e.g. "Salesforce".

Click [Save] to store your changes.

Copy the BlueConic URL currently in your browser to your notepad. The URL will look like https://yourserver.blueconic.net/blueconic/static/pages/main.html#id=d5c24bf2-b980-4d28-ba7c-2f118e42d0f2&type=connection

You can always generate a new secret key. Doing that will invalidate all previously generated keys which will stop an already active connection from working.

Install the SalesForce managed package

With the initial setup on the BlueConic side done and the important data copied in your notepad, it is now time to inform Salesforce that you are going to work with a remote site.

Open SalesForce.

In the quick search field above the left menu pane, type "Remote Site" and select "Remote Site Settings".

Click "New Remote Site".

Name the remote site, for example "BlueConic".

For remote site address enter the start of the BlueConic URL that you copied to your notepad earlier (the bit that looks like "https://taylorshop.blueconic.net/").

Make sure the remote site is active.

Save

Next, install and configure the Salesforce managed package for BlueConic. This will allow SalesForce to send information to BlueConic.

Open SalesForce.

Click "setup" in the top right.

Install the managed package for BlueConic by using this link: https://appexchange.salesforce.com/listingDetail?listingId=a0N3000000E0LGREA3

After the installation you need to fill out the details that you copied and pasted to your notepad earlier:

Consumer Key: Enter the key that you thought up and copied.

Consumer Secret: Enter the secret that you generated and copied.

Server: Enter the "https://taylorshop.blueconic.net/" bit of the BlueConic URL that you copied.

Connection: Enter the connection id bit of the BlueConic URL that you copied. It will look like "d5c24bf2-b980-4d28-ba7c-2f118e42d0f2" and consists only of letters, numbers and dashes (so no "=" or "&").

Click [Save] to finish configuring the managed package.

Salesforce can now send information to BlueConic, although it can't receive anything from BlueConic yet.

Configure the BlueConic connection

To be able so send information from BlueConic to SalesForce, BlueConic needs a user. It is recommended to not use your own user but instead use a separate user for authorizing BlueConic. This way your SalesForce reports will not be influenced. Using a separate user may require you to adjust assignment rules or other SalesForce settings.

Switch to BlueConic and paste the copied URL into the input field next to "Grab your SalesForce Access Token".

Save the connection.

Your connection should now show an instance URL, which means that BlueConic can now send messages to SalesForce.

Configure the SalesForce page layout

Technically you are done now; two-way communication between SalesForce and BlueConic is now possible.

However, with a little extra configuration you can give your Sales team advanced access to BlueConic information without having to synchronize all data to SalesForce.

The Live Profile Viewer is an optional object that you can add to a page layout. As the SalesForce page is being loaded, it will request live information from BlueConic and make it available for inspection.

Set up the Live Profile Viewer as follows:

In Salesforce, click "setup" in the top right.

In the left menu select "Build > Customize > Leads > Page Layouts"

Click "Edit" for the layout that you want to add the Live Profile Viewer to.

From the "Fields" bar drag and drop the element "Section" to the "Lead Detail" block.

In the popup:

Enter a name for the section, for example "BlueConic Live Profile viewer".

Select 1-column Layout.

Press [OK].

In the layout bar, scroll the menu in the left down to select "VisualForce pages"

Drag the "LeadProfile" page to the newly created Section.

Save the layout.

Hover over the blue LeadProfile area of the BlueConic Live Profile and click the wrench icon in the top right to modify its settings.

Save the layout.

Repeat this for all layouts and also for Contacts.

Using the connection

Now that you have a working connection between BlueConic and Salesforce, it is time to define exactly what will be synchronized between the two. You can determine:

What data to collect from Salesforce

What data to deliver to Salesforce

When to create a new lead in Salesforce

How to match profiles in BlueConic to leads or contacts in Salesforce

What BlueConic information to show in the Salesforce page layout.

The following sections delve deeper into the options that are at your disposal for synchronizing BlueConic and Salesforce.

Collect settings

The collect settings allow you to determine which fields will be collected from Salesforce and how they will be mapped to BlueConic profile properties. You can add variables by clicking the [Add Variable] button.

Collecting variables is optional; if you do not need anything from Salesforce in BlueConic profile properties it is okay to leave this section empty.

Each variable has the following options:

Salesforce Object Type(s)

Indicate whether the field belongs to a Lead, a Contact or both in Salesforce.

Salesforce Field Label

Enter the "Field Name" (in case of standard fields) or "API Name" (in case of custom fields) of the lead or contact in Salesforce. You can find these in Salesforce by clicking "Setup" and selecting "Build > Customize > Leads > Fields" or "Build > Customize > Contacts > Fields".

Profile Property

Select the BlueConic profile property into which the Salesforce value should be collected by typing its name or by using advanced search to find it.

Merge Rule

The merge rule setting determines how a value collected from Salesforce will be stored into the BlueConic property. These are the options:

Set: Copy the value from Salesforce exactly to the profile property, overwriting the previous value.

Set if empty: Copy the value from Salesforce exactly to the profile property but only if it is empty. If the profile property already has a value do nothing.

Add: Add the value from Salesforce to the list of values already in the profile property if it hasn't been added yet, omitting duplicates.

Sum: Numerically add the value from Salesforce to the value in the profile property. If the profile property was empty, it will be regarded as value 0. Only works for profile properties and values that contain integer numbers.

To duplicate a variable click the copy icon, or to delete a variable click the delete icon on the right hand side.

Deliver settings

Use the deliver settings to determine which BlueConic values will be delivered to Salesforce and to which fields. You can add variables by selecting the type "Profile Property", "Segments" (to deliver the list of segment names a profile is part of) or "Permission Level" (to deliver the permission level of a profile) and clicking the [Add Variable] button.

WarningMake sure you always deliver all fields that are marked as "mandatory" in Salesforce! If you leave out mandatory fields, Salesforce will block the connection from creating any new leads as mandatory information is missing.

Delivering variables is optional; if you do not need anything from BlueConic in Salesforce it is okay to leave this section empty.

Each variable has the following options:

Variable

Select the BlueConic profile property whose value should be delivered to Salesforce by typing its name or by using advanced search to find it. If you added a variable of type "Segments" or "Permission Level" the variable has already been preselected for you.

Salesforce Object Type(s)

Indicate whether the field belongs to a Lead, a Contact or both in Salesforce.

Salesforce Field Label

Enter the "Field Name" (in case of standard fields) or "API Name" (in case of custom fields) of the lead or contact in Salesforce. You can find these in Salesforce by clicking "Setup" and selecting "Build > Customize > Leads > Fields" or "Build > Customize > Contacts > Fields".

Merge Rule

The merge rule setting determines how a value from the BlueConic profile property will be stored into the Salesforce field. These are the options:

Set: Copy the value from the profile property exactly to the field in Salesforce, overwriting the previous value. If the profile property contains a list of values and the Salesforce field is a text field all values will be concatenated into one string with a semicolon as separator (e.g. "value a; value b; value c").

Set if empty: Copy the value from the profile property exactly to the field in Salesforce but only if it is empty. If the profile property already has a value do nothing.

Add: Add the value from the profile property to the list of values already in the field in Salesforce if it hasn't been added yet, omitting duplicates. The Salesforce field should be a Picklist (Multi-Select). Due to constraints in Salesforce there can only be a maximum of 100 value entries in the list and each value can only be 35 characters long.

Sum: Numerically add the value from Salesforce to the value in the profile property. If the profile property was empty, it will be regarded as value 0. Only works for profile properties that contain numbers.

To duplicate a variable click the copy icon, or to delete a variable click the delete icon on the right hand side.

Creation criteria

Under creation criteria you decide when it is okay for BlueConic to create a new lead object in Salesforce and deliver all deliverables subsequently.

Select all the profile properties that first will need to have a value in BlueConic before a new lead is created.

This section is optional; if you do not want BlueConic to create any new lead objects in Salesforce, do not select any profile properties.

Matching criteria

Under matching criteria you decide when a profile in BlueConic matches a lead or contact in Salesforce. Do this by adding variables that will match BlueConic profile properties to Salesforce fields.

Each variable has the following options:

Profile Property

Select the BlueConic profile property whose value should be matched to Salesforce by typing its name or by using advanced search to find it.

Salesforce Object Type(s)

Indicate whether the field belongs to a Lead, a Contact or both in Salesforce.

Salesforce Field Label

Enter the "Field Name" (in case of standard fields) or "API Name" (in case of custom fields) of the lead or contact in Salesforce. You can find these in Salesforce by clicking "Setup" and selecting "Build > Customize > Leads > Fields" or "Build > Customize > Contacts > Fields".

To duplicate a variable click the copy icon, or to delete a variable click the delete icon on the right hand side.

BlueConic data blocks

BlueConic data enrich the lead or contact detail information in Salesforce by displaying live information from BlueConic. Upon opening the details page in Salesforce the VisualForce component that displays the blocks requests the most recent profile information for this particular lead or contact from BlueConic and displays the information. The profile information will be refreshed whenever the page is reloaded.

Select the profile properties that you want to be displayed in Salesforce by searching for them.

The blocks can be reordered by clicking the left and right arrows in the blue bar.

In the Salesforce lead or contact details page you will see something like this:

The "Segments" and "Other Profile Properties" blocks are automatically added. The former displays a list of all segments a profile is a member of. With the latter you can search for profile properties and inspect their value.

Synchronization

As soon as you activate and save the Salesforce connection in BlueConic, scheduled runs will start to synchronize the two systems from time to time. Due to restrictions on the number of Salesforce API calls synchronization is not instant and data is pooled to make effective use of the connection.

Click the "Show History" link to see previous runs.

If there was a problem during synchronization it will be mentioned under "Details". When you hover over a run a "Download log" icon will appear on the right. Click the icon to download the log for that particular run.