How to Integrate a Customer - Owned CRM into Virto Commerce Platform
This post is devoted to a common question from customers about how to integrate their own CRM into Virto Commerce when they are building a B2B or B2C ecommerce solution.
The good news is that, thanks to Virto's composable architecture and its atomic-like structured components, any client-owned CRM can be seamlessly integrated into the Virto Commerce platform.
Based on our experience, there are two ways to integrate a CRM – as well as an ERP, PIM, or any of our customers' other corporate systems – into our platform:
- Asynchronous Integration Method
- Synchronous Integration Method
Asynchronous integration method
The first method is to use the integration middleware. Virto Commerce contains a copy of the client data, contacts, and other valuable info. This copy provides information on the organization, on the clients, and the Business API on top of this layer. We use the low-code Azure LogicApps service, which sends data from CRM to Virto and, in reverse, sends to CRM the data about new customers who have registered on the platform.
This integration works asynchronously to support the independent operation of the CRM and Virto Commerce platform. Even if the CRM is not available because of a technical issue, the client on the ecommerce platform will still be served.
Two data flows from CRM to Virto and back are configured through low-code scenarios in Azure LogicApps. Here, the Virto Commerce platform works as a real-time high-performance application to accept all registrations from the clients in real time. This recommended method is the most common for integrations with CRMs.
This can be a tricky question: how often should I trigger logic apps? You can trigger them on a schedule, for example, nightly. You can also trigger them by either events or webhooks and develop close to real-time async integrations.
Pros:
- Asynchronous flow
- High performance/scalability
- Good level of reliability
- Low-code integration
- Can be developed and improved independently
Cons:
- Real-time business logic should be transferred from CRM to Virto Commerce.
Synchronous integration method
The second integration method can be used if a customer's CRM works in real-time mode. Here, the CRM is considered a real-time system if it processes requests from an ecommerce platform in less than 300 ms. Also, such a CRM has to have an API interface and be a highly available application that runs 24x7 on a server in a data center or on the premises.
If these requirements are met, then you can remove the native "customer contacts" module from Virto Commerce and create a new custom module to replace it. Then, this new module in Virto's ecommerce platform will communicate with the customer's CRM in real time.
The highly skilled team at Virto Commerce can easily replace the native module with a customized one. The new module can be written by a client-side development team or their implementation partner, or the task can be delegated to us to be fulfilled by Virto Professional Service.
Pros:
- Synchronous flow
- Reusable business logic
Cons:
- CRM should be real time:
1. Fast response: less than 300ms
2. High SLA: 24/7
3. Scalable
Seamless Solutions with Virto Commerce
When a customer sets a task for Virto-to-CRM integration, the implementation team evaluates the scenario and studies the features of the CRM, then chooses which integration method is best used in each particular case.
This integration can either be through the middleware or by replacing the native customer data module with a customized one. The Virto team is always available and ready to help customers with any integration tasks.
Source of additional information: Enterprise Integration in Actions with Azure LogicApps