3CX Integration with 1C: Trade Management - Configuration Extension Installation Method

  • Tutorial
Due to numerous requests from partners and customers, we have released 3CX v15.5 server integration with the popular 1C: Enterprise system.

Integration is an extension of the typical configuration “Trade management, edition 11 (11.4.3.167) for Russia” (the .cfe file ), which is installed in the configuration in the standard way (see below). From the 3CX server side, a CRM template is loaded to interact with the web service of the published 1C configuration.

Expansion of the 1C configuration: Trade Management implements the REST API, which maps incoming call numbers with counterpart numbers in 1C. When a call arrives at 3CX, it requests RAC from Caller ID of the subscriber via REST from 1C. If an account is found, its data is added to the 3CX Contacts and displayed in the 3CX web client (first and last name).

If Enable call journaling is enabled in 3CX, 1C will keep a call log in 1C.

Requirements for 1C: Enterprise configuration


To use the extension, you need a version of the 1C: Enterprise platform not lower than 8.3.11. Typical configuration “Trade management, edition 11” (11.4.3.167) is delivered in the mode of compatibility with the platform 8.3.10. To use the 3CX extension, you must set the configuration compatibility mode to Not use. If the configuration is on support, you should enable the ability to change the configuration.

We will show it on the screenshots:

In Configurator 1C, go to Configuration - Support - Configure Support.



Click the Enable Change button and confirm in the pop-up window.



In the Configure Support Rules window, select Objects with the "Allowed Changes" rule - The supplier's object is edited while maintaining support and Objects with the "Changes are not recommended" rule - The supplier's object is not edited.



Right-click on the root section of Trade Management, select Properties and set the Compatibility Mode to Do not use.



Select Configuration - Update Database Configuration.



And click Accept to complete the changes.



Connection extensions to interact with 3CX


Close the Configurator and run the 1C configuration in Enterprise mode. In the top left menu, select All Features ...



Select Manage Configuration Extensions.



Make sure that the Scope is set when installing the configuration extension - Infobase , click the Add button and add the extension, specifying the archive 3cx1cextension.cfe file.



After installing the extension, the Manage Configuration Extension tab should look like the one below.



Publishing an HTTP service of 1C: Enterprise extension on a web server


Publication of the 1C configuration on the web server is performed in a standard way, taking into account the features of the software environment.


When publishing, set the option Publish HTTP extension services by default.



If there are users in the configuration (in rare cases, configurations without users are used), you need to change the connection string to the 1C: Enterprise database.

Consider this using the example of an IIS web server:

In the publish directory, locate the default.vrd file.



Modify the connection string in it by adding the credentials of the user on whose behalf the database will respond to HTTP requests. The connection string should look something like this.



Installing the CRM 1C: Enterprise XML template in 3CX


Open the 3CX management interface and go to Settings - CRM Integration - Server Side Tab.

In the Available CRM integration section, select 1C and click Download Selected.



Then in the Domain Part field, specify the URL of the published HTTP service of the 1C configuration.
To account for calls in 1C, enable the Enable call journaling option.


1C: Enterprise integration options with 3CX


As mentioned above, the extension compares incoming Caller ID with counterparties in the 1C database. If a match is found, the 3CX web client will display the caller's first and last name.

Call accounting in 1C


If call logging is enabled in the CRM template, 1C will keep a log of incoming and outgoing calls with the following parameters:

  • Call date
  • Call type: incoming / outgoing / missed by an extension / no answer from an outside subscriber
  • Call duration
  • Caller ID
  • Extension number (extension number 3CX)
  • Counterparty 1C (if a match is found)



In the call log, you can set the conditions for selecting and sorting the columns you are interested in so that you can quickly analyze the situation with missing or failed calls in the organization.



Technical log of interaction 3CX and 1C


The technical journal 3CX keeps a log of all 3CX calls to 1C via the REST API.



This log can be used for diagnostics by the administrator or 1C programmer.



Downloads and Documentation



Frequently asked Questions


  1. What happens if the client is not found? At the moment, the 1C platform does not have the ability to call the form to add a new client via an HTTP link.
  2. If the contact is displayed in the web client, is it possible to open its full card in 1C? At the moment, the 1C platform does not have the ability to call a client card via an HTTP link.
  3. Can I make an outgoing call from a thin or thick client 1C? This is possible, but for this to do this, appropriate support should be implemented by the 3CX REST API.
  4. Is it possible to redirect a call from 1C or to implement a bunch of "client - fixed manager"? This is possible, but for this to do this, appropriate support should be implemented by the 3CX REST API.
  5. Is it possible to implement an on-line monitoring panel (telephony panel) of calls in 1C? At the moment, with an incoming call, 3CX transmits only Caller ID of the subscriber without additional service information (for example, busy line, extension number of the call recipient, etc.). Additional service information is transmitted after the end of the call. In addition, the dashboard implies user interaction with calls, but this requires support from the 3CX REST API.
  6. Can I see the missed calls in the counterparty card? Use the Call Log in 1C, which implements the extension. In it, you can quickly select the counterparties you are interested in.

Also popular now: