Overview
The purpose of this document is to show the set up and mapping of the outbound lead integration from Aimbase to Salesforce, and the inbound lead disposition being sent from Salesforce to Aimbase. We currently use the outbound messaging and workflow rules (or process builder) in Salesforce to send these fields to Aimbase. Please note that these instructions are subject to custom fields by organization.
For an outbound lead integration, Aimbase leverages the standard lead object in Salesforce. If lead is converting to an opportunity there is a setting in admin on the profile to continue to see the converted lead. To access this setting you can do the following:
- Go to the profile that is connected to the integration (ie: system administrator)
- Go to app permissions
- Select View and Edit Converted Leads
This will allow the integration to update that lead even if it is converted.
Outbound Lead Integration
1. Authentication.
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.
2. Setup the 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. Fill out the App 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. Provide the COE the following:
- Consumer Key
- Consumer Secret
- Username
- Password
- Instance (can be found in the setup > Company> Company Information - see screenshot below)
7. Field Setup:
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 LeadUid field 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.
Field Type |
Aimbase Field Name |
Editable | Length |
Salesforce Field Name |
Text |
LeadUid (Aimbase_instance-leadid) |
255 |
LeadUid__c |
|
Text | Aimbase_instance-leadid | 255 | AimbaseIdentifier__c | |
Text |
Score |
255 |
LeadScore__c |
|
Date |
LeadDate |
N/A |
LeadDate__c |
|
Text |
LeadCategory |
255 |
LeadCategory__c |
|
Text |
LeadType |
255 |
LeadType__c |
|
Text |
LeadSource |
255 |
LeadSource |
|
Text | ProductBrand | 255 | ProductBrand__c | |
Text | ProductMake | 255 | ProductMake__c | |
Text | ProductName | 255 | ProductName__c | |
Text | ProductType | 255 | ProductType__c | |
Text | ProductYear | 255 | ProductYear__c | |
Text | Comment | 255 | Comment__c | |
Text |
FirstName |
255 |
FirstName (SF Standard Field) |
|
Text |
LastName |
255 |
LastName (SF Standard Field) |
|
Text |
255 |
Email (SF Standard Field) |
||
Text |
Address |
255 |
Street (SF Standard Field) |
|
Text |
City |
255 |
City (SF Standard Field) |
|
Text |
State |
255 |
State (SF Standard Field) |
|
Text |
PostalCode |
255 |
PostalCode (SF Standard Field) |
|
Text |
Country |
255 |
Country (SF Standard Field) |
|
Text | Phone | 255 | Phone (SF Standard Field) | |
Text |
MobilePhone |
255 |
MobilePhone (SF Standard Field) |
|
Text | Company | 255 | ||
Text | Industry | 255 |
Inbound Disposition Integration
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. Note, the mapping should be 1:1 between Salesforce and Aimbase.
- Activities
- Call
- Text
- Note
- Appointment
- Quote
- Status:
- Viewed
- Assigned
- Working
- Sold
- Lost
- Abandoned
Authentication is not required. Lead Disposition API uses a combination of CRM provider name and IP whitelisting to secure the end point.
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:
- Go to Saleforce Set up
- Go to Outbound messages (in workflow actions)
- Select New
- Name (Disposition to Aimbase)
- Select the fields that need to be passed to Aimbase
- Set endpoint url to:
- https://crmintegrationqa.aimbase.net/api/Disposition?source=SF (For QA)
- https://crmintegration.aimbase.net/api/Disposition?source=SF (For Production)
- 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 |
AimbaseIdentifier__c | Custom Field | Aimbase unique identifier to match back to a 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:
- Go to Saleforce Set up
- Go to Outbound messages (in workflow actions)
- Select New
- Name (Activity to Aimbase)
- Select the fields that need to be passed to Aimbase
- Set endpoint url to:
- https://crmintegrationqa.aimbase.net/api/Disposition?source=SF (For QA)
- https://crmintegration.aimbase.net/api/Disposition?source=SF (For Production)
- 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 Opportunity or SF object that the activity is tied to. |
Is_Unread_by_Owner__c | Custom Field | Indicates if lead has been read. true/false. |
LastModifiedDate | Standard Field | Date the lead was last modified |
AimbaseIdentifier__c | Custom Field | Aimbase unique identifier to match back to lead i.e. aimbase_rollick-12345 |
StageName | Standard Field | Activity of the task |
Status__c |
Custom 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.
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:
- Go to Saleforce Set up
- Go to Outbound messages (in workflow actions)
- Select New
- Name (Activity to Aimbase)
- Select the fields that need to be passed to Aimbase
- Set endpoint url to:
- https://crmintegrationqa.aimbase.net/api/Disposition?source=SF (For QA)
- https://crmintegration.aimbase.net/api/Disposition?source=SF (For Production)
- Save
Fields to include in the outbound message:
Selected Field | Type | Notes |
---|---|---|
ActivityDate | Standard Field | Date/Time of Activity |
AimbaseIdentifier__c | Custom Field | Aimbase unique identifier to match back to lead. i.e. aimbase_rollick-123456 |
Subject | Standard Field | Details of the activity |
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.
- 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.