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 S-360 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 S-360, 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 S-360 order history of a given contact in ExtCRM.
The table below list some technological choices allowing to synchronise order and contact data.
The table below describes some technical possibilities from S-360 to achieve that objective.
Solution | Description | Technologies | Pros | Cons |
---|---|---|---|---|
Flat file export | The exact data needed by the CRM system are extracted incrementally from S-360 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 S-360 client | Needs file parsing and specific integration on ExtCRM side |
Firehose contact plugin | For each contact created/updated, S-360 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 S-360. | S-360 executes exactly the processes defined by the CRM system. | A specific development (plugin) must be delivered by S-360. This development can also be executed by an external company, but S-360 is involved in validating the final result before the plugin is deployed. |
Firehose contact webhook | For each contact created/updated, S-360 calls a specific URL defined by the external CRM system. See global documentation here | https | Immediately available in S-360, very simple integration. | The ExtCRM system needs to create a specific endpoint and process the contact. |
Solution | Description | Technologies | Pros | Cons |
---|---|---|---|---|
S-360 webservices | The CRM calls S-360 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 S-360 | Needs a specific development in CRM system. |
Contact import plugin | Using a specific plugin, S-360 polls an API offered by the CRM system and extracts the contact data to be updated. | Any webservice technology that can be called from S-360 | S-360 executes exactly the processes defined by the CRM system. | A specific development (plugin) must be delivered by S-360. This development can also be executed by an external company, but S-360 is involved in validating the final result before the plugin is deployed. |
Webhook published by S-360 | Using a specific plugin S-360 publishes a webhook and handles data coming from the CRM system. | REST endpoint | S-360 executes exactly the processes defined by the CRM system. | A specific development (plugin) must be delivered by S-360. |
Pushing order data from S-360 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 S-360 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 S-360 client | Needs file parsing and specific integration on ExtCRM side |
Firehose order plugin | For each order closed, S-360 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 S-360 | S-360 executes exactly the processes defined by the CRM system. | A specific development (plugin) must be delivered by S-360. This development can also be executed by an external company, but S-360 is involved in validating the final result before the plugin is deployed. |
Firehose order webhook | For each order closed, S-360 calls a specific URL defined by the external CRM system. See global documentation here | https | Immediately available in S-360, very simple integration. | The ExtCRM system needs to create a specific endpoint and process the order. |