HubSpot CRM Integration

Introduction

3CX provides integration with HubSpot via the 3CX API for CRM with the following features:

  • Caller ID to Contact Name – inbound calls trigger a HubSpot contact lookup.
  • Contact Lookup in HubSpot based on Name, Number or Email if you search for a name in the 3CX Webclient
  • Call & Chat Journalling – calls and chats are logged in the HubSpot Contact Card as CRM call records.
  • Create a new HubSpot contact from the 3CX client for calls from new numbers.
  • Click to Call – launch calls straight from HubSpot via 3CX, using the 3CX Click2Call Browser extensions for Google Chrome and Microsoft Edge.

Step 1: Configure HubSpot

Login to your Hubspot Developer Account to integrate with 3CX.

  1. Hubspot requires OAuth2 authentication to authorize 3CX to access your data, so you need a Hubspot Developer Account to create an app.
  2. After logging in with your Hubspot Developer Account, select “Create an app”.

  1. Set the name to “3CX Integration” and go to the Auth tab to complete the OAuth2 details.

  1. In the Redirect URL field, enter the URL you use to access your 3CX Management Console, adding “/api/oauth2crm” at the end. For example:
    “https://my-pbx.example.com/api/oauth2crm”

  1. In the Scopes field, add
    ”crm.objects.contacts.read”, “crm.objects.contacts.write”, “crm.objects.companies.read”, “crm.objects.owners.read”, “timeline”
  2. Click on “Save”.

  1. Copy the values from “Client ID” and “Client secret”, as they will be needed later.

Step 2: Configure 3CX

  1. In 3CX Management Console go to “Settings” > “CRM Integration” > “Server Side” tab.
  2. Select “HubSpot” from the dropdown list.
  3. Select the desired contact lookup order, and enter the values for “Client ID” and “Client Secret” previously copied from your app.

  1. Click on Authorize to launch the HubSpot authorization page. You will be prompted to select an account, choose the account where you have your CRM data, not the developer account.

  1. At this point you might see a warning stating “You’re connecting an unverified app”. You can safely ignore this warning, as this is an app created by yourself. Click “Connect app” to proceed with the authorization.
  2. Verify the “Refresh Token” field is automatically filled for the HubSpot CRM in 3CX Management Console.
  3. If you want to enable contact creation from the 3CX client, check this option. When the caller’s number can’t be matched to a contact, the 3CX client will let the user create the contact by filling the details in a dialog.

Step 3: Configure e164 contacts and caller ID

  1. To get a match with HubSpot, the incoming Caller ID must be identical to the CRM entry, including any prefix, as HubSpot performs whole number lookups. Querying HubSpot using a subset of the digits, does not return any data.
  2. To make HubSpot integration work, you must store the numbers in HubSpot using E164 format, and your SIP Trunk must provide the caller’s number in E164 format as well, so both match. If this is not the case, you can use Caller ID Reformatting to adjust the caller’s number before being passed on to the CRM.
  3. Now Go to “Advanced” > “Contacts” > “Options”, set the matching strategy to "Match exactly" and click “OK”.

Step 4: Configure Call & Chat Journaling

Enable Call Journaling in 3CX to report external calls to the Hubspot CRM.

  1. To report external calls and chats to HubSpot, the email address configured for the 3CX extension must match the email address of a HubSpot user. This way 3CX can map the 3CX extension receiving the call or chat to the HubSpot user.
  2. Check the “Enable Call Journaling” option to report external calls to the CRM, and configure these “Call Journaling” parameters:
  • “Call Subject” - the call’s subject.
  • “Answered Inbound Call” - description for answered inbound calls.
  • “Missed Call” - description for missed calls.
  • “Answered Outbound Call” - description for answered outbound calls.
  • “Unanswered Outbound Call” - description for unanswered outbound calls.
  1. Please note that you can use variables in the “Call Journaling” parameters, denoted as
    [variable_name]
    , e.g. the external number is specified as
    [Number]
    . The available variables to use are listed
    here.

Enable Chat Journaling in 3CX to report chats to the Hubspot CRM.

  1. If you want to report chats to the CRM, check the Enable Chat Journaling checkbox and configure the parameters below:
  • Chat Subject: The subject of the chat session.
  1. Please note that you can use variables in the “Chat Journaling” parameters, denoted as
    [variable_name]
    , e.g. the external number is specified as
    [Number]
    . The available variables to use are listed
    here.

See Also

Last Updated

This document was last updated on 23 September 2023

https://www.3cx.com/docs/hubspot-pbx-crm-integration/ 

Discuss this article