Introduction

3CX provides integration with Bitrix24 via easy and straightforward server-side configuration with the 3CX API for CRM. The integration provides many benefits to users of 3CX and Bitrix24, including:

  • Contact Synchronization – inbound calls from external numbers trigger a CRM contact lookup to add to 3CX Contacts, so the caller name is automatically shown on your phone’s display when receiving the call.
  • Call Pop-ups – when using the 3CX Web Client, the customer record is brought up to you automatically when you receive an inbound call.
  • Call Journals – calls are logged as CRM call records.
  • Create a new contact automatically when a call is received from an unknown number.
  • Click to Call – launch calls directly from Bitrix24 via 3CX, using the 3CX Browser Extension.

This guide takes you through the required steps to setup your Bitrix24 with 3CX.


Bitrix24 Configuration

General Settings

1. Login to your Bitrix24 portal account, click on the menu icon on the top left corner and go to “Applications” > “Web hooks”.

2. Click on “Add Web Hook” and select the “Inbound web hook” option.

3. Enter a name and description for the web hook, from the access permissions options enable “CRM”, “Users” and “Lists” and click “Save” when done.

4. A code is displayed, along with a REST call example URL, e.g.
https://example.bitrix24.com/rest/1/0a12bcdefg3hijk4/profile/

To get the Web Hook URL to use for 3CX configuration, you need to remove the final “profile/” part, i.e.
https://example.bitrix24.com/rest/1/0a12bcdefg3hijk4

Call Journaling

1. To report external calls to Bitrix24, you need to populate the dedicated “Extension number” field for the Bitrix24 user, with the agent extension number. This way 3CX can map the agent’s extension number receiving the call to the Bitrix24 user.

2. Expand the left side bar and select “Employees” > “Employees” tab.

3. Open the user to configure for reporting calls and click on “Edit profile” from the “Actions” menu on the right.

4. Click on the “Add phones” link and:

  • select “Extension number”,
  • enter the agent’s extension number in the “Internal Phone” field and click “Save”.

3CX CRM Server Side Configuration

Contact Matching Strategy

To get a match with Bitrix24, the incoming Caller ID must be identical to the CRM entry, including any prefix, as Bitrix24 performs whole number lookups. Querying Bitrix24 using a subset of the digits, does not return any data.

Important: In 3CX Management Console, open “Advanced” > “Contacts” > “Options”, set the matching strategy to "Match exactly" and click “OK” to save.

General Settings

  1. In 3CX Management Console go to “Settings” > “CRM Integration” > “Server Side” tab.
  2. Select “Bitrix” from the dropdown list.
  1. Enter the Web Hook URL generated previously in Bitrix24, in the “Web Hook URL” field.
  2. Enter your Bitrix24 domain in the “Domain” field.

Call Journaling

1. Check the “Enable Call Journaling” option to report external calls to the CRM, and configure these “Call Journaling” parameters:

  • 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.

2. 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:

  • CallType - the type of call, it can be “Inbound”, “Outbound”, “Missed”, or “Unanswered”.
  • Number - the external contact number, i.e. the number dialed for outbound calls or the caller number for inbound calls.
  • Agent - the extension number of the agent handling the call.
  • Duration - the call duration in “hh:mm:ss” format.
  • DurationTimeSpan - the duration of the call as a TimeSpan object with a user-defined format.
  • DateTime - call start date and time, in local time zone, formatted using the 3CX server local timezone option in “Settings” > “Timezone, Office Hours & Holidays”.
  • CallStartTimeLocal - the call start date & time, in local time zone, as a DateTime object with a user-defined format.
  • CallStartTimeUTC - the call start date and time, in UTC time zone, as a DateTime object with a user-defined format.
  • CallEndTimeLocal - the call end date and time, in local time zone, as a DateTime object with a user-defined format.
  • CallEndTimeUTC - The call end date and time, in UTC time zone, as a DateTime object with a user-defined format.

Note: This feature is only available for 3CX versions 16 and later.

Contact Creation

To create new contacts in the CRM when a call is received from an unknown number, i.e. not found in either 3CX or CRM, check the “Enable Contact Creation” checkbox and configure the available parameters:

  • Create Lead or Contact” - the entity type to be created (Lead/Contact).
  • New Contact First Name” - first name for the newly created Contact.
  • New Contact Last Name” - last name for the newly created Contact.

Please note that you can use variables in this field, denoted with
[variable_name], e.g. the external number is specified as [Number]. The available variables are:

  • Number - the external contact number, i.e. the number dialed for outbound calls or the caller’s number for inbound calls.

Note: This feature is only available for 3CX versions 16 and later.