Salesforce Connector: Lead & Disposition

 

Purpose

The purpose of this document is to define the setup process in Salesforce to create a connected app to receive lead data from Rollick Enterprise Lead Management System (ELMS).    

Audience 

This document is mainly intended for the business owners and the internal technical Salesforce support team. 

Outbound Lead Integration Setup Steps 

1. Account 

For authentication with Salesforce a username and password are required. It is recommended that this is an account that wouldn’t have frequent use outside of the integration. Passwords can expire automatically through Salesforce; if possible, set this Salesforce user password to never expire.  

Note:

Changing your Salesforce username or password after the integration is complete will break the integration. Any changes to authentication need to be communicated to Rollick 

2. Connected App 

A connected app will allow the Aimbase application to authenticate and push lead data into your Salesforce instance. Creating a new connected app will generate the Client ID and Client Secret values that are necessary for the integration to establish trust between systems. 

Create a new connected app through Salesforce. Access the app section under Setup – Build - Create – Apps. On this page there are multiple sections of apps divided by the app type. Be sure to click the New button within the Connected Apps section of the page.   

For more information, refer to Salesforce documentation found here. 

3. When creating the app, fill out the information below:  

  • Connected App Name: Rollick Leads 
  • API Name: RollickLeads 
  • Contact Email: [enter a support email] 
  • Check Enable OAuth Settings [this will bring up new fields] 
  • Callback URL: https://localhost:8443/RestTest/oauth/_callback 
  • Select OAuthScopes: Select these two scopes: 
    • Access and manage your data (API) 
    • Full access (full) 

 4. Click the Save button. 

  • Once the app has been saved, the next page will contain a section labeled API (Enable OAuth Settings). Those two sections will have the Client ID (Consumer Key) and Client Secret (Consumer Secret). Click to reveal the consumer secret and copy both field values. These fields will need to be labeled and sent to Rollick in order to complete the integration. 
  • Client ID and Client Secret can be revisited in the Build section of Salesforce by editing the connected app and by saving again. 

 5. Set the IP Relaxation setting. 

The IP Relaxation settings need to be adjusted to Relax IP restrictions. To do this go to Setup Administer - Manage Apps - Connected Apps. From the list select the connected app and then click on the Edit Policies button. In the IP Relaxation drop down list select Relax IP restrictions and then click on Save at the bottom of the page. 

 6. Lead Fields 

  • Create the required lead fields for the Aimbase Connector integration. Access the Build section under Setup – Build  Customize – Leads  – Fields. There are two sections on this page, so be sure to select the New button in the Lead Custom Fields & Relationships section.     
  • Note, that the AimbaseIdentifier__c field will need to be setup as a computed field. This field should pull in and concatenate Aimbase_Instance_Name__c)-(AimbaseLeadId__c).

                Example: aimbase_rollick-12345

        For more information, refer to the Salesforce documentation here.

 7. The core lead object is used to receive the lead data pushed from your Aimbase instance to Salesforce. Below is a list of fields that the connector will         be sending to Salesforce. The ExternalIdField is used to determine if the lead exists. If the lead does exists, the lead will be updated. If the lead does         NOT, exist then the lead will be created. 

If any of the fields below are missing from the lead object, they need to be created prior to testing the integration.  

Note:

The Field Name must match exactly between the value in the table below and the lead field in Salesforce, or the data mapping between applications will not work. 

The standard out of the box fields in Salesforce that already exist, will automatically map to the corresponding Aimbase field below. These fields are indicated in the Salesforce Field Name column. No need to create additional fields. 


Field Type 

Aimbase Field Name

Editable

Length 

Salesforce Field Name 

Text 

LeadUid 


255 

LeadUid__c

Text LeadId
255 AimbaseLeadId__c
Text (your Aimbase instance name)
255 Aimbase_Instance_Name__c
Text Computed field to concatenate Aimbase_Instance_Name__c - AimbaseLeadId__c 
255 AimbaseIdentifier__c (i.e. aimbase_rollick-123456)

Text

Score 


255

Lead_Score__c

Date

LeadDate 


N/A

Aimbase_Lead_Date__c

Text 

LeadCategoryCode


255 

Lead_Category__c

Text 

LeadTypeCode


255 

Aimbase_Lead_Type__c

Text 

LeadSourceCode


255 

Aimbase_Lead_Source__c 

Text FollowUpStatusCode
255 Lead_Contact_Status__c
Text ProspectInterestCode
255 Prospect_Interest__c
Text PurchaseStatusCode
255 Purchase_Status__c
Text Product.BrandName
255 Make__c
Text Product.Name
255 Model__c
Text Product.ProductTypeCode
255 Product_Type__c
Text Product.ModelYear
255 Model_Year__C
Text Product.ProductCategoryFlattenedName
255 Product_Category__c
Text Customs[Comment]
255 Lead_Comments__c
Text Customs[Color]
255 Color__c
Text Customs[MSRP]
255 MSRP__c
Text Dealer.Name
255 Dealer_Name__c
Text Dealer.DealerNbr
255 Dealer_Number__c
Text Prospect.ProspectAggregationId
255 Prospect_Agr__c
Text LeadStatusCode
255 Status (SF Standard Field) 

Text 

Prospect.FirstName 


255 

FirstName (SF Standard Field) 

Text 

Prospect.LastName 


255 

LastName (SF Standard Field) 

Text 

Prospect.Email 


255 

Email (SF Standard Field) 

Text 

Prospect.Id 


255 

Company  (SF Standard Field) 

Text 

Prospect.Address


255 

Street (SF Standard Field) 

Text 

Prospect.City 


255 

City (SF Standard Field) 

Text 

Prospect.State 


255 

StateCode (SF Standard Field) 

Text 

Prospect.PostalCode 


255 

PostalCode (SF Standard Field) 

Text 

Prospect.Country 


255 

Country (SF Standard Field) 

Text 

Phone.MobilePhone 


255 

Phone (SF Standard Field) 

Text Prospect.HomePhone
255 Home_Phone__c
Text Prospect.WorkPhone
255 Work_Phone__c

 

Inbound Lead Integration Setup Steps 

The basis for sending the disposition back to aimbase is an outbound message. There are (2) objects that need to be setup. 

  • Lead Object or Opportunity Object, pending on how your Salesforce account is setup. This object is used to capture the lead status changes in Salesforce and send back to Aimbase. 
  • Activity Object that is used to capture the activity that is happening on the lead. i.e.call, notes, email, appointment etc. 
  • Note, that the values for Lead/Opportunity and Activity object will need to be provided to the COE so the values can be mapped to a standard set in Aimbase. 

Prior to sending disposition, please provide list of activities and statuses that Rollick should expect. Rollick will handle mapping your values to the Rollick values listed below. This mapping must be completed prior to sending disposition to the qa or production endpoint. If there are any values that would fall outside of this mapping, we would still like to see examples to consider creating a new activity or status. 

  • Activities
    • Email
    • Call
    • Text
    • Note
    • Appointment
    • Quote
  • Status: 
    • Viewed
    • Assigned 
    • Working
    • Sold
    • Lost

Lead Object Setup

In order to send the disposition to Aimbase an outbound message will be set up and triggered either by a workflow rule or process builder based upon preference (including example of workflow rule below). The lead id will be important in order to connect the disposition to the specific lead.

    Setting up the outbound message: 

  1. Go to Saleforce Set up
  2. Go to Outbound messages (in workflow actions) 
  3. Select New
  4. Name (Disposition to Aimbase)
  5. Select the fields that need to be passed to Aimbase
  6. Set endpoint url to:
  7. Save

Fields to include in the outbound message: 

Selected Field  Type Notes
OrganizationId Standard Field Salesforce account identifier
ActionId Standard Field The workflow rule (action) that triggers the message
SessionId Standard Field Unique Id of session
EnterpriseUrl Standard Field Salesforce account url
PartnerUrl Standard Field Salesforce account url
Id Standard Field  This is the Lead or SF object that the activity is tied to. 
IsUnreadByOwner Standard Field Indicates if lead has been read. true/false. 
LastModifiedDate Standard Field Date the lead was last modified
LeadUid Custom Field Aimbase unique identifier to match back to lead. i.e. aimbase_rollick-123456
AimbaseIdentfier__c Custom Field Aimbase unique identifier to match back to lead in Aimbase i.e. aimbase_rollick-12345
Status Standard Field The status of the lead

8. Workflow setup. 

Based upon your business rules a workflow rule or process should be set up to trigger the message to send the activity to Aimbase. 

  • Go to Set Up 
  • Select Workflow Rules
  • Determine criteria and enter via criteria or formula (example: activity is of certain type and status)
  • Add workflow action and select outbound message
  • Activate workflow rule 

Once steps are done, once the activities are created and meet the appropriate criteria then the outbound message will be triggered to Aimbase. The activities would then be visible in the Customer Tab under Concierge Calls.

Example rule: trigger when record modified, or when status changes. 

Opportunity Object Setup

In order to send the activity to Aimbase an outbound message will be set up and triggered either by a workflow rule or process builder based upon preference (including example of workflow rule below). The prospect Id's will be important in order to connect the activity to the customer.

Setting up the outbound message: 

  1. Go to Saleforce Set up
  2. Go to Outbound messages (in workflow actions) 
  3. Select New
  4. Name (Activity to Aimbase)
  5. Select the fields that need to be passed to Aimbase
  6. Set endpoint url to: 
  7. Save

Fields to include in the outbound message: 

Selected Field  Type Notes
OrganizationID Standard Field Date/Time of Activity
ActionId Standard Field Standard field that will send over the detail of the call
SessionId Standard Field This will be a static value provided by Rollick. A field will need to be created on activity and when activity is added, that value should pass through
EnterpriseUrl Standard Field Upon creation of the activity, this will need to be passed to the activity so we can pass that value to aimbase. 
PartnerUrl Standard Field  This is the account or object that he activity is tied to. 
Id Standard Field * If relevant. If desire is to create the connection to a specific Dealer
IsUnreadByOwner Custom Field
LastModifiedDate Standard Field
LeadUid Custom Aimbase unique identifier to match back to lead. i.e. aimbase_rollick-123456
AimbaseIdentifier__c Custom Field Aimbase unique identifier to match back to a lead in Aimbase i.e. aimbase_rollick-12345
StageName Standard Field Activity of the task

8. Workflow setup. 

Based upon your business rules a workflow rule or process should be set up to trigger the message to send the activity to Aimbase. 

  • Go to Set Up 
  • Select Workflow Rules
  • Determine criteria and enter via criteria or formula (example: activity is of certain type and status)
  • Add workflow action and select outbound message
  • Activate workflow rule 

Once steps are done, once the activities are created and meet the appropriate criteria then the outbound message will be triggered to Aimbase. The activities would then be visible in the Customer Tab under Concierge Calls.

 Activity Object

In order to send the activity to Aimbase an outbound message will be set up and triggered either by a workflow rule or process builder based upon preference (including example of workflow rule below). The prospect Id's will be important in order to connect the activity to the customer.

Setting up the outbound message: 

  1. Go to Saleforce Set up 
  2. Go to Outbound messages (in workflow actions) 
  3. Select New
  4. Name (Activity to Aimbase)
  5. Select the fields that need to be passed to Aimbase
  6. Set endpoint url to: 
  7. Save

Fields to include in the outbound message: 

Selected Field  Type Notes
ActivityDate Standard Field Date/Time of Activity
LeadUid Custom Field Aimbase unique identifier to match back to lead. i.e. aimbase_rollick-123456
Subject Standard Field  Details of the acitivity 
Type Standard Field Type of activity


Workflow Rule 

Based upon your business rules a workflow rule or process should be set up to trigger the message to send the activity to Aimbase. 

  1. Go to Set Up 
  2. Select Workflow Rules
  3. Determine criteria and enter via criteria or formula (example: activity is of certain type and status)
  4. Add workflow action and select outbound message
  5. Activate workflow rule 

Once steps are done, once the activities are created and meet the appropriate criteria then the outbound message will be triggered to Aimbase. The activities would then be visible in the Customer Tab under Concierge Calls.

Deliverables 

The instance name, client id, client secret need to be sent over to Rollick in order to complete the Connector integration configuration with Salesforce.


Testing 

Once the custom app configuration is complete, and the integration is enabled, test leads should be sent.  Coordination between teams is necessary to confirm that all fields were transferred through the integration and the fields were mapped correctly.