CRM integration

Overview

This is a technical generic how-to, displaying technical options for a CRM integration.

We will suppose in the following lines, that an institution wants to achieve an integration between SecuTix and an external CRM system, called ExtCRM.

We expect this integration to provide those two basic features:

Bi-directional synchronisation of some contact data

→ if a contact is created/updated in SecuTix, we want the modification to be pushed to ExtCRM

→ if a contact is created/updated in ExtCRM, we want those modifications to be pushed in SecuTux

Mono direction synchronisation of a contact's order history. We want to store SecuTix order history of a given contact in ExtCRM.

CRM

The table below list some technological choices allowing to synchronise order and contact data.

Contact synchronisation

Pushing contact data from SecuTix to ExtCRM.

The table below describes some technical possibilities from SecuTix to achieve that objective.

Solution Description Technologies Pros Cons
Flat file export The exact data needed by the CRM system are extracted incrementally from SecuTix using a Data Export Query. Then a flat file is produced and pushed to a external repository. This export can be produced up to one time per minute. Flat file (CSV, TSV, TXT...), SFTP or S3 for the repository The exact data needed can be exported. Can be ordered as a service by SecuTix client Needs file parsing and specific integration on ExtCRM side
Firehose contact plugin For each contact created/updated, SecuTix executes a process defined by the external CRM system : filtering the contact, calling one or many webservices, etc. Any webservice technology that can be called from SecuTix. SecuTix executes exactly the processes defined by the CRM system. A specific development (plugin) must be delivered by SecuTix. This development can also be executed by an external company, but SecuTix is involved in validating the final result before the plugin is deployed.
Firehose contact webhook For each contact created/updated, SecuTix calls a specific URL defined by the external CRM system. See global documentation here https Immediately available in SecuTix, very simple integration. The ExtCRM system needs to create a specific endpoint and process the contact.

Pushing contact data from ExtCRM to SecuTix

Solution Description Technologies Pros Cons
SecuTix webservices The CRM calls SecuTix contact webservices to read and update the contact sheet if needed. SOAP or REST endpoints The CRM systems controls exactly what data are pushed back inside SecuTix Needs a specific development in CRM system.
Contact import plugin Using a specific plugin, SecuTix polls an API offered by the CRM system and extracts the contact data to be updated. Any webservice technology that can be called from SecuTix SecuTix executes exactly the processes defined by the CRM system. A specific development (plugin) must be delivered by SecuTix. This development can also be executed by an external company, but SecuTix is involved in validating the final result before the plugin is deployed.
Webhook published by SecuTix Using a specific plugin SecuTix publishes a webhook and handles data coming from the CRM system. REST endpoint SecuTix executes exactly the processes defined by the CRM system. A specific development (plugin) must be delivered by SecuTix.

Order synchronisation

Pushing order data from SecuTix to ExtCRM.

The technologies offered are exactly the same as for the contacts

Solution Description Technologies Pros Cons
Flat file export The exact data needed by the CRM system are extracted incrementally from SecuTix using a Data Export Query. Then a flat file is produced and pushed to a external repository. This export can be produced up to one time per minute. Flat file (CSV, TSV, TXT...), SFTP or S3 for the repository The exact data needed can be exported. Can be ordered as a service by SecuTix client Needs file parsing and specific integration on ExtCRM side
Firehose order plugin For each order closed, SecuTix executes a process defined by the external CRM system : filtering the order, calling one or many webservices, etc. Any webservice technology that can be called from SecuTix SecuTix executes exactly the processes defined by the CRM system. A specific development (plugin) must be delivered by SecuTix. This development can also be executed by an external company, but SecuTix is involved in validating the final result before the plugin is deployed.
Firehose order webhook For each order closed, SecuTix calls a specific URL defined by the external CRM system. See global documentation here https Immediately available in SecuTix, very simple integration. The ExtCRM system needs to create a specific endpoint and process the order.