Purpose:
This article is meant to provide Allbound employees and customers with documentation on field mapping with the Allbound integration for the standard connections that must be in place for the integration to work. This will aid in the integration implementation, as well as supporting the integrations, and will provide insight to vendors on the standard operations of the integration.
Allbound use only: It is best to reference this article alongside the following article: API keys and how they make up the Pipeline, MDF module, Partner Locator, and Access to the portal
Connection 1: Accounts/Companies --> Allbound Companies
The first connection in every integrated Allbound portal is the companies connection. This connection syncs partner companies from the vendor's CRM to the Allbound Companies section. When setting up the integration with any CRM, a new field must be in place on the accounts/companies object in the vendor's CRM for Allbound Status. It must be a picklist (single select dropdown) with the values Active, Inactive, Pending. Another field that must be added to the accounts/companies object on the vendor's CRM is a small text field for the Allbound ID.
To sync a partner company over to Allbound from the CRM the vendor's team will select an Allbound status (Active, Inactive, or Pending) on the account/company record in the CRM. By doing so, the integration will fire on a 5 minute polling frequency and pull in the partner company to the Allbound Companies section. Once the company record is brought over to Allbound, it is then tagged with an Allbound ID in the Allbound ID field on the CRM side.
Allbound use only: The Filter for this connection must call to the Allbound Status field when an option is selected.
- Salesforce filter: Allbound_Status__c!=null
- Patch back must be set to 'Yes' for this connection.
- HubSpot filter: allbound_status!=null
- Patch back must be set to 'Yes' for this connection.
- Pipedrive, Zoho, and Sugar may vary depending on the API key of the Allbound Status field from the CRM side.
- Patch back must be set to 'Yes' for this connection.
Default fields that must be mapped in the Accounts/Companies => Allbound Companies connection:
CRM Field (API keys provided by vendor) | Allbound Field API key |
Id | crm_id |
Allbound ID | id |
Allbound Status | status |
Name | name |
Website | website |
Phone | phone |
Street | address_1 |
Street line 2 (optional) | address_2 |
City | address_3 |
State | address_4 |
Postal Code/Zip Code | address_5 |
Country | address_6 |
Account Owner Email (optional) | cam_email |
Allbound use only: Transformation needed for Allbound Status field:
$value = strtolower($value);
All additional fields added to this connection that are mapped would be custom or default fields that the vendor wants to capture and sync to Allbound.
Connection 2: Allbound User Creation --> CRM Contact Object:
The next connection in every integrated Allbound portal is the contact create connection. This connection syncs registered Allbound users to the CRM as a partner contact record (CRM contact object) and associates their contact record with their primary account/company record automatically. When setting up the integration with any CRM, a new field must be in place on the contact object in the vendor's CRM for Allbound ID (small text field).
When a new Allbound user fills out the user registration form on the vendor's portal, this connection fires on a 5 minute polling frequency and syncs the user to the CRM as a contact record. In doing so, it tags the record in the CRM with an Allbound ID.
Allbound use only: The Filter for this connection must call to the CRM ID field, as that will determine whether or not a contact has been synced.
- All CRMs: crm_id=null AND company_crm_id!=null
- Patch back must be set to 'Yes' for this connection.
- This filter is static for all CRMs because the connection is calling to the Allbound user object and the API will always be crm_id. The company_crm_id!=null portion of the filter is making sure that any users who are tied to non-integrated companies (such as a Standard Email company) aren't getting synced to the vendor's CRM.
Default fields that must be mapped in the Allbound User => CRM Contact connection:
Allbound Field API key | CRM Field (API keys provided by vendor) |
id | Allbound ID |
crm_id | Id |
first_name | Frist name |
last_name | Last Name |
user_email | |
company_crm_id | Account ID |
job_title (commonly mapped, but optional) | Job Title |
All additional fields added to this connection that are mapped would be custom or default fields that the vendor wants to capture and sync from Allbound to the CRM.
Connection 3: Allbound User Updates --> CRM Contact Object:
The next connection in every integrated Allbound portal is the contact update connection, and this connection is entirely optional, but is implemented as a best practice to maintain Allbound as the source of truth for user/contact data. This connection syncs updates to Allbound user profiles to the partner contact record (CRM contact object) that is linked via an Allbound ID. When setting up the integration with any CRM, a new field must be in place on the contact object in the vendor's CRM for Allbound ID (small text field).
When an Allbound user fills out/updates their user profile in Allbound, this connection fires on a 5 minute polling frequency and syncs the updates to the corresponding contact record in the CRM. It navigates this record using the Allbound ID of the partner contact.
Allbound use only: The Filter for this connection must call to the CRM ID field, as that will determine whether or not the contact has a corresponding record on the CRM side.
- All CRMs: crm_id!=null
- This filter is static for all CRMs because the connection is calling to the Allbound user object and the API will always be crm_id.
Default fields that must be mapped in the Allbound User Update => CRM Contact connection:
Allbound Field API key | CRM Field (API keys provided by vendor) |
id | Allbound ID |
crm_id | Id |
first_name | Frist name |
last_name | Last Name |
user_email | |
company_crm_id | Account ID |
job_title (commonly mapped, but optional) | Job Title |
LinkedIn URL (optional) | LinkedIn URL |
Mobile Phone (optional) | Mobile Phone |
Calendar link (optional) | Calendar link |
All additional fields added to this connection that are mapped would be custom fields that the vendor wants to capture for the partner reps using Allbound.
Connection 4; First Pipeline Connection: Allbound Deal --> CRM Lead Object:
The next connection in an integrated Allbound portal using the pipeline is the deal submission/registration connection. This connection syncs registered Allbound deals via the Deal Registration form to the CRM as a prospect lead (CRM lead object) and associates the deal owner and partner company records with the record that is synced to the CRM. When setting up the integration with any CRM, a new field must be in place on the lead object (HubSpot calls this Deals object) in the vendor's CRM for Allbound ID (small text field).
This connection is triggered when a new deal is submitted in Allbound from the pipeline. It runs on a 5 minute polling frequency. When the deal is synced to the CRM as a new lead, it is tagged with an Allbound ID which links it to the deal in Allbound.
Allbound use only: The Filter for this connection must call to the CRM ID field, as that will determine whether or not the deal synced to the vendor's CRM.
- All CRMs: crm_id=null
- Patch back must be set to 'Yes' for this connection.
- This filter is static for all CRMs because the connection is calling to the Allbound deal object and the API will always be crm_id.
Default fields that must be mapped in the Allbound Deal Submission => CRM Lead connection:
(Please note: Customer contact details and customer company details are setup in different connections for HubSpot, Zoho, and Pipedrive, but they use the same Allbound APIs as shown in the table below. See the Related Articles section for more details.)
Allbound Field API key | CRM Field (API keys provided by vendor) |
id | Allbound ID |
crm_id | Id |
status | Status |
customer_company | Company |
customer_website | Company website/domain |
customer_first_name | First Name |
customer_last_name | Last Name |
customer_email | |
owner_crm_id | Partner Contact lookup field |
owner_company_crm_id | Partner Company lookup field |
All additional fields added to this connection that are mapped would be custom or default fields that the vendor wants to capture for the deals registered by partners in Allbound.
Connection 5; (Optional - Common Practice) Pipeline Connection: CRM Lead Record Status Updates --> Allbound Deal:
The next connection in an integrated Allbound portal using the pipeline is the Lead Accepted/Reject connection. This connection syncs lead status updates from the vendor's CRM (lead object) to the associated Allbound deal. This is typical for flows that require the vendor's team to approve, accept, decline, or reject leads prior to conversion to opportunities.
If this connection is setup, it is configured to fire when a lead on the CRM side containing an Allbound ID is updated to a new status that must be relayed to the partner deal owner in Allbound. This is commonly configured when the vendor has an approval process for leads submitted by partners.
Allbound use only: The Filter for this connection must call to the Allbound ID field on lead object in the vendor's CRM, and the status(s) updates that sync back to the deal.
- Salesforce filter: Allbound_ID__c!=null AND Status IN ('{insert status here}','{insert status here}')
- HubSpot filter: allbound_id!=null AND dealstage IN ('{insert dealstage API here}','{insert dealstage API here}')
- Pipedrive, Zoho, and Sugar may vary depending on the API key of the Allbound ID field from the CRM side.
Default fields that must be mapped in the Lead Accepted/Rejected => Allbound Deal connection:
CRM Field (API keys provided by vendor) | Allbound Field API key |
Id | crm_id |
Allbound ID | id |
Status | status |
Name (optional) | name |
All additional fields added to this connection that are mapped would be custom or default fields that the vendor wants to capture updates from and sync back to Allbound if the partner needs to see them on the deal.
Connection 6; (Salesforce Standard Practice) Pipeline Connection: SFDC Converted Opportunity Stage Updates->Closed --> Allbound Deal:
The next connection in an integrated Allbound portal using the pipeline is the Converted to Opportunity connection. This connection syncs opportunity stage changes and other data updates from the vendor's CRM (opportunity object) to the associated Allbound deal. This connection captures the initial conversion of the lead to an opportunity, and all subsequent updates on the opportunity until Closed Won/Closed Lost.
When setting up the integration with Salesforce, a new field must be in place on the Opportunity object in the vendor's SFDC for Allbound ID (small text field). In the vendor's Salesforce, the Lead Allbound ID must carry over to the Opportunity Allbound ID upon conversion in order for this connection to function properly. Please reference this article for the Salesforce setup for this connection: How Leads Convert to Opportunities and Sync Back To Allbound
Allbound use only: The Filter for this connection must call to the Allbound ID field on opportunity object in the vendor's CRM, and the stage/s updates that sync back to the deal in Allbound.
- Salesforce filter: Allbound_ID__c!=null
- Vendor must provide all Opportunity Stages to Allbound to map with Stage/status array in this connection.
Default fields that must be mapped in the Converted Opportunity and Stage Updates => Allbound Deal connection:
CRM Field (API keys provided by vendor) | Allbound Field API key |
Id | crm_id |
Allbound ID | id |
StageName | status |
Name | name |
Amount | amount |
CloseDate | estimated_close_date |
All additional fields added to this connection that are mapped would be custom or default fields that the vendor wants to capture updates from and sync back to Allbound if the partner needs to see them on the deal.
Connection 6; (HubSpot, Zoho, Pipedrive Standard Practice) Pipeline Connection: CRM Vendor Deal Record Updates/Closed --> Allbound Deal:
The next connection in an integrated Allbound portal using the pipeline is the Vendor CRM Deal Updates->Closed connection. This connection is used in HubSpot, Zoho, Pipedrive, and Sugar integrations and is needed to capture the updates on the deals from the CRM and sync the updates to Allbound until the deals are closed.
When setting up the integration with the vendor's CRM, a new field must be in place on the deals object in the vendor's SFDC for Allbound ID (small text field), if not done so already.
Allbound use only: The Filter for this connection must call to the Allbound ID field on deals object in the vendor's CRM, and the stage/s updates that sync back to the deal in Allbound.
- HubSpot filter: allbound_id!=null
- Pipedrive, Zoho, and Sugar may vary depending on the API key of the Allbound ID field from the CRM side.
- Vendor must provide all deal stages to Allbound to map with Stage/status array in this connection. Please note that deal stages from HubSpot, Zoho, Pipedrive, and Sugar need to use the internal API name of each stage, not just the label.
Default fields that must be mapped in the Vendor Deal Record Updates/Closed --> Allbound Deal connection:
CRM Field (API keys provided by vendor) | Allbound Field API key |
Id | crm_id |
Allbound ID | id |
Deal Stage | status |
Name | name |
Amount | amount |
CloseDate | estimated_close_date |
Pipeline (only if more than one is integrated) | pipeline |
All additional fields added to this connection that are mapped would be custom or default fields that the vendor wants to capture updates from and sync back to Allbound if the partner needs to see them on the deal.
The following Distribution Connections are not mandatory/required connections with every integration. These are common pipeline connections used to distribute leads and opportunities to the Allbound partner pipeline.
Connection Requirements For Basic Lead Distribution (Deal is unassigned to partner contact):
This connection would be available only for Salesforce leads (lead object in SFDC). Reference this article to learn about Lead Distribution: Lead Distribution With Allbound's CRM Integration. This connection needs to be configured to sync leads that originate in Salesforce that the vendor wants to send to the Allbound partner deal pipeline for visibility, etc. The trigger should be specific to the Allbound ID field, and the associated partner lookup field(s). If the vendor chooses to add a manual trigger to the CRM side, such as a "Sync To Allbound" field, then this needs to be accounted for in the filter.
- Please note: the Sync To Allbound field MUST BE a DROPDOWN/PICKLIST not a button, not a checkbox. Reason: checkboxes and buttons use Booleans instead of strings, and the integration has a hard time triggering/firing when querying for Booleans. Best practice is to use a string value which can be done with a picklist.
As mentioned in the above header, the following fields and filter will be for a lead distribution flow where the lead is synced to the Allbound pipeline without an assigned partner contact. Only Executives, Owners, and Managers roles of the partner company will have visibility of unassigned leads on the Allbound pipeline (besides admins). Any amounts or sales stats from unassigned deals cannot be used in Partner Plans, and cannot be used in Allbound reports. Only by assigning the deal can these records be used in reports and Partner Plans.
Allbound use only: The Filter for this connection must call to the Allbound ID field on the lead object in the vendor's CRM, and at least the Partner Account lookup field on the lead object.
- Salesforce filter: Allbound_ID__c=null AND Partner__c!=null
- Patch back must be set to 'Yes' for this connection.
- Vendor must provide partner account lookup field API from SFDC. The one mentioned above is most common, but could be different for the vendor you're working with.
- Vendor must provide all lead status to Allbound to map with Stage/status array in this connection.
Default fields that must be mapped in the Lead Distribution Connection:
CRM Field (API keys provided by vendor) | Allbound Field API key |
Id | crm_id |
Allbound ID | id |
Status | status |
Name | name |
Company | customer_company |
First Name | customer_first_name |
Last Name | customer_last_name |
customer_email | |
Associated Partner Account |
owner_company_id |
Allbound use only: Transformation needed for Partner Account lookup:
$value = $this->lookupAllboundId($value, 'company');
All additional fields added to this connection that are mapped would be custom or default fields that the vendor wants to capture and sync to Allbound if the partner needs to see them on the deal.
Connection Requirements For Basic Lead Distribution (Deal is assigned to partner contact):
This connection would be available only for Salesforce leads. Reference this article to learn about Lead Distribution: Lead Distribution With Allbound's CRM Integration. This connection needs to be configured to sync leads that originate in Salesforce that the vendor wants to send to the Allbound partner deal pipeline for visibility, reporting, etc.
The trigger should be specific to the Allbound ID field, and the associated partner lookup field(s). If the vendor chooses to add a manual trigger to the CRM side, such as a "Sync To Allbound" field, then this needs to be accounted for in the filter.
- Please note: the Sync To Allbound field MUST BE a DROPDOWN/PICKLIST not a button, not a checkbox. Reason: checkboxes and buttons use Booleans instead of strings, and the integration has a hard time triggering/firing when querying for Booleans. Best practice is to use a string value which can be done with a picklist.
As mentioned in the above header, the following fields and filter will be for a lead distribution flow where the lead is synced to the Allbound pipeline using the partner contact lookup in SFDC on the lead object that would be assigned in Salesforce on the lead, then synced to Allbound with the partner contact data, and would alert that partner contact of the deal that is synced and assigned to them.
- This method works best for streamlining the partner contact assignment, and adds the data to the reports and partner plans right away, as opposed to manually assigning the deals to partners in Allbound.
Allbound use only: The Filter for this connection must call to the Allbound ID field on the lead object in the vendor's CRM, and at least the Partner Contact lookup field on the lead object.
- Salesforce filter: Allbound_ID__c=null AND Partner_Contact__c!=null
- Patch back must be set to 'Yes' for this connection.
- Vendor must provide partner contact lookup field API from SFDC. The one mentioned above is most common, but could be different for the vendor you're working with.
- Vendor must provide all lead statuses to Allbound to map with Stage/status array in this connection.
Default fields that must be mapped in the Lead Distribution Connection:
CRM Field (API keys provided by vendor) | Allbound Field API key |
Id | crm_id |
Allbound ID | id |
Status | status |
Name | name |
Company | customer_company |
First Name | customer_first_name |
Last Name | customer_last_name |
customer_email | |
Associated Partner Contact |
owner_id |
Allbound use only: Transformation needed for Partner Contact lookup:
$value = $this->lookupAllboundId($value, 'user');
All additional fields added to this connection that are mapped would be custom or default fields that the vendor wants to capture and sync to Allbound if the partner needs to see them on the deal.
Connection Requirements For Basic Opportunity Distribution (Deal is unassigned to partner contact):
This connection would be available only for Salesforce opportunities (opportunity object in SFDC). Opportunity distribution is the same concept as lead distribution, but syncs opportunities to Allbound instead of leads. This connection needs to be configured to sync opportunities that originate in Salesforce that the vendor wants to send to the Allbound partner deal pipeline for visibility, etc. The trigger should be specific to the Allbound ID field, and the associated partner lookup field(s). If the vendor chooses to add a manual trigger to the CRM side, such as a "Sync To Allbound" field, then this needs to be accounted for in the filter.
- Please note: the Sync To Allbound field MUST BE a DROPDOWN/PICKLIST not a button, not a checkbox. Reason: checkboxes and buttons use Booleans instead of strings, and the integration has a hard time triggering/firing when querying for Booleans. Best practice is to use a string value which can be done with a picklist.
As mentioned in the above header, the following fields and filter will be for a opportunity distribution flow where the opportunity is synced to the Allbound pipeline without an assigned partner contact. Only Executives, Owners, and Managers roles of the partner company will have visibility of unassigned opportunities on the Allbound pipeline (besides admins). Any amounts or sales stats from unassigned deals cannot be used in Partner Plans, and cannot be used in Allbound reports. Only by assigning the deal can these records be used in reports and Partner Plans.
Allbound use only: The Filter for this connection must call to the Allbound ID field on the opportunity object in the vendor's CRM, and at least the Partner Account lookup field on the opportunity object.
- Salesforce filter: Allbound_ID__c=null AND Partner__c!=null
- Patch back must be set to 'Yes' for this connection.
- Vendor must provide partner account lookup field API from SFDC. The one mentioned above is most common, but could be different for the vendor you're working with.
- Vendor must provide all opportunity stages to Allbound to map with Stage/status array in this connection.
Default fields that must be mapped in the Opportunity Distribution Connection:
CRM Field (API keys provided by vendor) | Allbound Field API key |
Id | crm_id |
Allbound ID | id |
StageName | status |
Name | name |
Amount | amount |
CloseDate | estimated_close_date |
Associated Partner Account | owner_company_id |
Formula to text field for customer account name | customer_company |
Allbound use only: Transformation needed for Partner Account lookup:
$value = $this->lookupAllboundId($value, 'company');
All additional fields added to this connection that are mapped would be custom or default fields that the vendor wants to capture and sync to Allbound if the partner needs to see them on the deal.
- Please Note: Allbound cannot map customer account and contact information with opportunity distribution because the account and contact data does not live directly on the opportunity object. This information is split up onto the account object and the contact object, then records are associated with opportunities in Salesforce via lookup fields. In order to pull any desired customer account and contact data into the deal from the opportunity, the vendor's Salesforce admin must create formula to text fields to pull the desired data into text format on the opportunity object itself. Best use case: Opportunity:Account.Name to text in order to map to the Allbound Customer Company field.
Connection Requirements For Basic Opportunity Distribution (Deal is assigned to partner contact):
This connection would be available only for Salesforce opportunities (opportunity object in SFDC). Opportunity distribution is the same concept as lead distribution, but syncs opportunities to Allbound instead of leads. This connection needs to be configured to sync opportunities that originate in Salesforce that the vendor wants to send to the Allbound partner deal pipeline for visibility, etc. The trigger should be specific to the Allbound ID field, and the associated partner lookup field(s). If the vendor chooses to add a manual trigger to the CRM side, such as a "Sync To Allbound" field, then this needs to be accounted for in the filter.
- Please note: the Sync To Allbound field MUST BE a DROPDOWN/PICKLIST not a button, not a checkbox. Reason: checkboxes and buttons use Booleans instead of strings, and the integration has a hard time triggering/firing when querying for Booleans. Best practice is to use a string value which can be done with a picklist.
As mentioned in the above header, the following fields and filter will be for an opportunity distribution flow where the opportunity is synced to the Allbound pipeline using the partner contact lookup in SFDC on the opportunity object that would be assigned in Salesforce on the opp itself, then synced to Allbound with the partner contact data, and would alert that partner contact of the deal/opp that is synced and assigned to them.
- This method works best for streamlining the partner contact assignment, and adds the data to the reports and partner plans right away, as opposed to manually assigning the deals to partners in Allbound.
Allbound use only: The Filter for this connection must call to the Allbound ID field on the opportunity object in the vendor's CRM, and at least the Partner Contact lookup field on the opportunity object.
- Salesforce filter: Allbound_ID__c=null AND Partner_Contact__c!=null
- Patch back must be set to 'Yes' for this connection.
- Vendor must provide partner contact lookup field API from SFDC. The one mentioned above is most common, but could be different for the vendor you're working with.
- Vendor must provide all opportunity stages to Allbound to map with Stage/status array in this connection.
Default fields that must be mapped in the Opportunity Distribution Connection:
CRM Field (API keys provided by vendor) | Allbound Field API key |
Id | crm_id |
Allbound ID | id |
StageName | status |
Name | name |
Amount | amount |
CloseDate | estimated_close_date |
Associated Partner Contact | owner_id |
Formula to text field for customer account name | customer_company |
Allbound use only: Transformation needed for Partner Contact lookup:
$value = $this->lookupAllboundId($value, 'user');
All additional fields added to this connection that are mapped would be custom or default fields that the vendor wants to capture and sync to Allbound if the partner needs to see them on the deal.
- Please Note: Allbound cannot map customer account and contact information with opportunity distribution because the account and contact data does not live directly on the opportunity object. This information is split up onto the account object and the contact object, then records are associated with opportunities in Salesforce via lookup fields. In order to pull any desired customer account and contact data into the deal from the opportunity, the vendor's Salesforce admin must create formula to text fields to pull the desired data into text format on the opportunity object itself. Best use case: Opportunity:Account.Name to text in order to map to the Allbound Customer Company field.
Allbound use only: Reference this article for HubSpot Deal Distribution: HubSpot Lead Distribution (How-To) + Connections (Internal Only)
Related Articles:
About The Salesforce Integration User
CRM (Salesforce) Integration Support Flow Examples by User Profile
Integration Disconnected - OAuth Tokens Are Refreshed in Salesforce Troubleshooting Guide
How To Sync The Account Owner / Channel Account Manager (CAM ) Field With Allbound
Updating The Account Owner / Channel Account Manager On Allbound Companies
How Accounts & Contacts Integrate With Allbound + Your CRM
How Leads Convert to Opportunities and Sync Back To Allbound
Lead Distribution With Allbound's CRM Integration
Lead Distribution vs Deal Submission Explained
HubSpot Integration: How To Connect And Integrate HubSpot With Allbound
About Salesforce Duplication Rules And Allbound Integration Best Practices