• Releases

    3CX Product Releases

  • VoIP How To

    Technical tips to run your VoIP PBX more efficiently

  • Events

    3CX Trainings and Webinars around the world

  • Docs & FAQs

    3CX Documentation how to and FAQ

  • Phone configuration

    3CX, Aastra, Cisco, Yealink, Grandstream, Polycom configs

Integrate 3CX with Salesforce

By July 4, 2011 | 4 Comments

This guide will show you how to integrate Salesforce with 3CX Phone SystemIMPORTANT: This guide has been tested with Salesforce Enterprise edition. Free versions of Salesforce do not have the API enabled. Contact Salesforce for more information.

The Salesforce Plugin

The 3CX CRM Integration module provides out of the box integration with Salesforce. This integration allows showing a screen pop-up with the contact information on inbound calls, and launching outbound calls to your Salesforce contacts directly from the Salesforce web interface.

System Requirements

The Salesforce plugin uses the Salesforce Web Services API, therefore you need a Salesforce Enterprise account or Salesforce Unlimited account to use this plugin.

In order to launch outbound calls from the Salesforce web interface, you need to have the TCP port 5534 free.

Configuring the Salesforce Plugin

You can enable Salesforce integration by checking the “Enable Salesforce Plugin” option. If you also want to automatically register call information in the Contact’s activity history, you must check the “Store Call Information in Salesforce” option.

You must fill the Login Information section with your Salesforce user account information. If you don’t have a Security Token, login to Salesforce using the web interface and go to Setup -> My Personal Information -> Reset My Security Token.

You can change the maximum digit length to compare in the Contact Lookup section. When an inbound call arrives into your extension, the caller ID may have different formats depending on your PSTN or VoIP Provider. It could have an international format (including the country code), national format (including the region or city code), or local format (including only the local number).

Also, you may have created your Contact’s phones in Salesforce with prefixes that are not present in the caller ID, such as mobile phone prefixes. In order to match the caller ID with the contact’s phone, you need to specify this parameter. The system will compare the last number of digits of the caller ID with the last number of digits of your contact’s phone, where the digit number is the specified maximum digit length to compare. Usually this parameter should be the length of your local number. With a higher number you get a greater accuracy, but you may possibly not match the caller ID with the same contact. With a lower number you get less accuracy (with possible false positives), minimizing the possibility of a no match.

Finally, you can choose to look for contact information in the Contacts and / or Leads tables.

Trial and Registration

The first time you enable the Salesforce plugin, a 30 days trial will be automatically started. You will be able to use the full functionality during the trial period. When the trial expires, you need to activate a license key to continue using the Salesforce integration. The Register button allows you to enter the product key purchased.

Launching Calls from Salesforce

The Salesforce plugin allows you to automatically dial contacts simply by clicking ‘Call this contact’. The call will be triggered and set up to the user’s desktop phone WITHOUT having to actually dial the number on the phone. This saves users a great deal of time.

Configuring Outbound Calls Via Salesforce

The Salesforce plugin automatically creates custom fields in your Salesforce database when a user with administration privileges is configured to use the application.

Each created field allows you to easily dial a different number of a contact or lead. The list of fields automatically created follows:

  • In the Contact table
    • Call assistant phone via 3CX
    • Call fax via 3CX
    • Call home phone via 3CX
    • Call mobile phone via 3CX
    • Call other phone via 3CX
    • Call phone via 3CX
    • In the Lead table
      • Call fax via 3CX
      • Call mobile phone via 3CX
      • Call phone via 3CX

These fields are hidden by default. In order to view them in the Contacts or Leads page, you need to logon to Salesforce and change the field accessibility. To do this:

  1. Go to Setup -> App Setup -> Customize -> Contacts -> Fields
  2. At the bottom of that page you will find the custom fields created.
  3. Click on the custom field that you want to make visible, for example “Call mobile phone via 3CX”.
  4. Press the “View Field Accessibility” button on the upper right side of the screen.
  5. Click on the “Hidden” label on the right of “Standard User”.
  6. Check the “Visible” option in the “Contact Layout” row, and press the “Save” button to finish.
  7. Repeat the same procedure for every field that you want to view in the Contact page.
  8. Repeat the same procedure for Leads, going to Setup -> App Setup -> Customize -> Leads -> Fields

Launching Calls

Once you changed the visibility attributes of the created custom fields, you are able to launch calls directly from the Salesforce web interface. The Contacts page should look like the following:

Now, for example, clicking on the link “Click here to call this contact with 3CX (Phone)” will launch a call to the contact’s phone using 3CX Phone System and connect it to your extension.

Troubleshooting

Changing the Outbound Call Receiver Port

In order to allow automatic dialing of outbound calls from the Salesforce web interface, custom fields are automatically created in Salesforce, as mentioned above. Those fields contain a hyperlink to the outbound call receiver included in this plugin. The outbound call receiver listens by default in port 5534.

If another application in your computer is using that port number, you will see the following message when the Salesforce plugin starts.

We recommend that you reconfigure the conflicting application to use another port number. If you can’t do it you will need to change the configuration of this application in every computer running the Salesforce plugin in your company. This is because the port number is stored in the custom fields created in Salesforce and those custom fields are shared between all Salesforce accounts in your company and thus are used by every computer running the Salesforce integration.

In order to change the port number, do the following:

  1. Ensure that every computer in your company is not running 3CX CRM Integration.
  2. Login to Salesforce using the web interface.
  3. Go to Setup -> App Setup -> Customize -> Contacts -> Fields.
  4. At the bottom of that page you will find the custom fields created (Call PhoneType via 3CX). Delete every one of these custom fields.
  5. Go to Setup -> App Setup -> Customize -> Leads -> Fields.
  6. At the bottom of that page you will find the custom fields created (Call PhoneType via 3CX). Delete every one of these custom fields.
  7. Open the configuration file located in “%AppData%\3CX CRM Integration\ 3CX CRM Integration.ini” and change the parameter “OutboundCallsPort” in section “Salesforce Plugin”. Ensure that the new port number is not being used in every computer that needs to run the Salesforce plugin in your company.
  8. Repeat the previous step in every computer that needs to run the Salesforce plugin in your company.
  9. Start 3CX CRM Integration in every computer. Custom fields will be automatically created again, now pointing to the new port number. You will have to follow the steps described in the “Launching calls from Salesforce” section above in order to make custom fields visible in the Salesforce web interface.

Comment 4

  • [...] Salesforce [...]

  • [...] If you are using 3CX Phone System 10, please visit the Salesforce CRM integration article, which can be found here. [...]

  • [...] If you are using 3CX Phone System 10, please visit the Microsoft Dynamics CRM integration article, which can be found here. [...]

  • [...] Configuring 3CX Integration with Salesforce.com Submitted by Michael Borg on April 1, 2009 – 10:33 pmNo Comment If you are using 3CX Phone System 10, please visit the Salesforce CRM integration article, which can be found here. [...]

Switch to our mobile site