Zoho Magento 2 Integration guide

How to integrate Magento 2 and Zoho in one day

Overview

 

This year, the Digital Transformation trend grows with extra power and affecting more and more businesses, even the ones ‘vaccinated’ against anything Digital.

 

In the past, it was enough to have an eCommerce Shop and some Accountant software only.

 

The new trends require more effort from merchants, they should know their customers (CRM), how to better communicate with the audience (Digital Marketing, Emailing, Help Desk), and they should be fully aware of their company performance, KPI, Competitors, Market, Industry or Regional trends (Business Intelligence).

 

In this article, we will review our success story of integrating Magento eCommerce platform with the CRM / ERP Zoho Platform.

 

Zoho is not only the CRM

 

Zoho CRM is the SAAS Customer Relationship Management (CRM) system for managing sales, marketing, and some accounting features from the realm of ERP and supports everything of this in one platform.

 

But this information is from the wiki.

 

In reality,  Zoho is not only CRM software. It’s a business management tool that can support and boost all business aspects.

 

It looks like Magento, but in the CRM world, it has a lot of features, extended functionalities, integrations, and apps that cover all your needs.

 

So, you have all the bricks to build your business infrastructure and automate it. And one of the benefits, it has affordable prices, which might be the perfect combination with Magento Community Edition.

magento 2 zoho dasboard integration

 

Common Integrations

 

Considering the popularity of both platforms, many merchants want to integrate their Magento store with Zoho Services.

 

There are a few different ways to do that:

 

1. Purchase a Magento Extension or Create a fully custom solution

 

Such integrations are usually built as part of the Magento. In this case, Magento becomes fully responsible for integration. The solution covers most of Magento entities like customer, product, order, and invoices.

 

2. Use a middleware integration solution

 

 

This type of integrations is usually built based on 3rd-party connectors (e.g. ESB, enterprise service bus). And it becomes is fully autonomous and doesn’t require any Magento or Zoho customizations, but the timeframe for synchronization can be longer than in other types of integration.

 

We can recommend top providers www.zapier.com and www.kloudconnectors.com

 

zapier price integrations

Integration is simple

 

We have a request from our client to implement integration with almost all existing entities: customers, products, orders, invoices as well as some custom ones, like pre-order / lead. And integration should be two-sided, Magento to Zoho and Zoho to Magento.

 

Example: Call-center deals created in Zoho, should be migrated to Magento orders, as well as Magento order should be migrated to Zoho Deals.

 

 1. Magento Extension.

 

Implementing a full integration on Magento side means adding more complexity and developing a heavily customized solution.

 

Magento starts taking extra responsibilities on handling integration as a middleware that might affect reliability, performance, and available resources utilization.

 

We reviewed all existing extensions and assumed that most of them cover only 20% of business requirements, and all of them cover one-way integration – Magento to Zoho only.

 

 2. Middleware Integration solution

 

This type of integration is quite powerful, flexible, and does not require many resources.

 

But the critical problem is that it does not control entity updates, there are no triggers which tell this integration whether new customer registered in or not.

 

One of the business requirements is to have immediate data updates. Most of the middleware integrations work in the passive mode, occasionally checking data sources for updates. So it would be required to develop a Magento extension to trigger such updates.

 

But why should we add more complexity or invite more players, if both systems have enough power to connect with minimal effort? Considering all pros and cons of existing solutions, we decided to move on OUR own way.

 

 

1. Develop a very simple Magento extension

 

  •  The main extension responsibility is to trigger corresponding webhooks on entity updates.
  •  Webhook runs asynchronously, so it has no performance impact.

 

2. Create the main Flows in Zoho Flow

 

  • ZohoFlow + Zoho Builder allows integrating any application with less coding.

 

 

Magento Module 

 

To integrate Magento with Zoho we used Event Handling approach.

 

  1. Magento triggers corresponding WebHook on Entity change event
  2. Zoho Webhook triggers Zoho Flow
  3. Zoho Flow request information from Magento REST API

 

magento 2 zoho flow integration

 

Our solution pros and cons:

Pros
Cons
  • Minimal system customization,
  • Maximum functional utilization
  • Magento does nothing than register Entity State changes
  • No heavy operation on Magento side, correspondently no performance degradation
  • Magento does not have extra responsibility, therefore no business logic is changed
  • Error handling, message queue – it all happens on Zoho’s end
  • Data updates happen immediately, no delays
  • Magento should rely on Zoho stability
  • The solution requires basic understanding of Zoho Flow
  • No Export capabilities for all the work done with Zoho Flow and custom functions.

 

Magento development part is pretty simple:  

 

magento 2 zoho integration

  • Configuration to keep Zoho webhooks

 

  • A simple custom extension that handles entity update events

 

  • Https requests to trigger a webhook. Triggers webhook asynchronously.

 

 

 

Magento Module code example:  

 

magento 2 zoho code example

 

Implement Flow

 

Zoho Flow is an integration platform that helps you connect apps without any coding.

 

Zoho Flow has a ready-to-use integration app, which requires simple manipulations like drag-and-drop bricks or data field mapping.

 

You can also write custom functions on Zoho Flow using Zoho Deluge Script.  

 

zoho magento customer update

 

Deluge Script allows developers to add functionality to Zoho CRM without having to worry about the database layer or cloud infrastructure. Its simple syntax is so easy to read that even non-developers can write simple functions and create sales modules specific to their industry.

 

Customer Flow Example: 

 

zoho flow magento integration

1. Webhook triggers Flow

 

2. Get Magento API Authentication Token

(via a custom function)

 

3. Get Customer Data from the Magento

REST API (via a custom function)

 

4. Fetch Zoho Customer data

(Zoho Customer App)

 

5. Make a decision whether you have to update

Zoho Customer or create new (Zoho Logic)

 

6. Update Zoho Customer

(Zoho Customer App)

 

7. Create New Customer

(Zoho Customer App)

 

8. Create Customer Personal Folder

(Zoho Drive App)

 

See more detail on how to build custom flows here: https://www.zoho.com/flow/features.html

 

Integration Results

 

As part of this integration we have implemented the following flows:

 

  • Product integration update / create
  • Customer integration create / update
  • Orders integration create / update
  • Quote / Lead integration create / update
  • Integrate Zoho Deals Statuses with Magento Order Statuses
  • Shipping / Shipping Tracking updates

 

magento 2 zoho integration

 

Once developers know how to work with Zoho Flow, it takes approximately 1 day to implement a single flow.  The numbers might vary though since it depends on the business logic or custom entity attributes, but in general, it’s 1 flow per day with testing.

 

Conclusion

 

We hope this article will help developers and merchants choose the right path of integration not only for Zoho but for other similar systems.

 

It does not mean that our way of integration is the perfect one. It’s usually worth collecting Pros and Cons of each integration method to find the right path based on the project’s requirements. As a Zoho Authorized Partner, we’re happy to offer you personalized assistance with Zoho integration. Feel free to reach out to us here

 

We truly recommend utilizing the whole power of tools you are using.

Alex Karanda About the author

CTO of Decima Digital with over than 15-year experience in web development and eCommerce. Alex was one of the pioneers in delivering Magento Technical Consultants, Premium support and professional services, since Magento Professional Services Department setup new Technical Consulting services in 2010