Magento 2 Zoho Inventory Integration

Table of Contents

1. Extension Installation

2. Get Zoho API Details

3. Extension Configuration

4. Select Website to Sync

5. Synchronization Settings

6. Developer Options

7. Tax Mapping

8. View Sync Queue & History

1. Extension Installation

For Magento Marketplace Customers

Find the extension’s Composer name and version in its composer.json file.

  • Login to your SSH and run:
    • composer require meetanshi/magento-2-zoho-inventory-integration
  • Enter your authentication keys. Your public key is your username; your private key is your password.
  • Wait for Composer to finish updating your project dependencies and make sure there aren’t any errors.
  • To verify that the extension is installed properly, run the command:
    • php bin/magento module:status Meetanshi_ZohoInventory
  • By default, the extension is probably disabled. Enable the extension and clear static view files:
    • php bin/magento module:enable Meetanshi_ZohoInventory --clear-static-content
    • php bin/magento setup:upgrade
    • For Magento version 2.0.x to 2.1.x - php bin/magento setup:static-content:deploy
    • For Magento version 2.2.x & above - php bin/magento setup:static-content:deploy –f
    • php bin/magento cache:flush

For Meetanshi Customers

  • Download the extension zip file and extract it to your Magento’s root directory.
  • Login to your SSH and run below commands step by step:
  • php bin/magento setup:upgrade
  • For Magento version 2.0.x to 2.1.x - php bin/magento setup:static-content:deploy
  • For Magento version 2.2.x & above - php bin/magento setup:static-content:deploy –f
  • php bin/magento cache:flush

2. Get Zoho API Details

Prior to configuring the extension, you need to configure Zoho for the API connection. You’ll need the following details from your Zoho account:

  • Client ID
  • Client Secret
  • Organization ID

Go to Zoho API Console and login using your account credentials. Next, click “Get Started” or “Add Client” to add a new client to your account.

Now, choose “Server-based Applications” as the client type.

Enter a name for the client (for e.g., Magento Integration) and enter your site’s homepage URL.

In the Authorized Redirect URIs field, enter: https://your-site.com/zoho/connection/success

(Replace your-site.com with your website’s domain)

Click “Create” to save the settings.

In your Zoho Inventory account, copy the Organization ID displayed under your profile.

3. Extension Configuration

Log into your Magento 2 admin panel and navigate to Stores > Configuration.

In the left panel under Meetanshi, select Zoho Inventory Integration. In configuration, you can find the following settings:

  • Enable Zoho Inventory Integration: Enable the button to integrate Magento 2 and Zoho Inventory.
  • Connection Status: It displays the Magento-Zoho Inventory connection status.
  • Connection Mode: You can choose from the following two modes:
  • Sandbox (for testing)
  • Production (for live)
  • Sandbox Client ID: Enter the Cliend ID you received from Zoho account (see previous section)
  • Sandbox Client Secret: Enter the Client Secret you received from Zoho account (see previous section)

 

  • Domain Region: Select your Zoho Inventory account’s domain region for proper server communication.
  • Data Center Region: Select the Data Center Region to make sure that your data is stored and is being processed in the right location.

    • Zoho Inventory Organization ID: Enter the organization ID you got from your profile.
    • Zoho Inventory User Account Email: Enter the email address that is associated with your Zoho Inventory user/admin account.
    • Redirect URL: Enter the redirect URL as https://yoursite.com/zoho/connection/succes. Make sure to replace yoursite.com with your Magento 2 store’s actual URL.

 

Click “Save” to connect your Magento 2 store with Zoho. The connection status will change to Connected. You can disconnect the integration using the Disconnect button.

4. Select Website to Sync

Select the website you want to synchronize with Zoho Inventory.

5. Synchronization Settings

The extension allows you to sync accounts, products, orders, and invoices with Zoho Inventory. You can choose options for each of these data.

For each data sync, you can choose from the following sync mode: 

  • Immediate: The data is synced immediately from Magento 2 to Zoho Inventory
  • Cron Job: The data is synced regularly at a specific interval. For e.g., daily, weekly, or monthly

Here’s what the synced customers looks like in Zoho Inventory:

Here’s what the synced products look like in Zoho Inventory:

For the orders synchronization, you can also select order status to sync. The orders with the selected statuses will only be synced with Zoho Inventory.

In Zoho Inventory, you will need to set up manual order numbers preferences. This is important to sync order numbers between Magento 2 and Zoho Inventory.

  • Go to Zoho account > Inventory > click the + icon on top right side to create a new sales order.
  • Click on the settings icon.
  • In the "Configure Sales Order Preferences” window, choose “Enter Sales Order Number Manually.”
  • Click “Save

Here’s what the synced orders look like in Zoho Inventory:

Here’s what the synced invoices look like in Zoho Inventory:

6. Developer Options

Developer Options provides advanced settings that will help you configure, troubleshoot, and debug the integration.

  • Generate Debug Log: Enable the option to get detailed logs of the integration process of Magento 2 Zoho Inventory.

7. Tax Mapping

Move to Zoho Inventory Integration  > Tax Mapping to map Magento 2 tax classes with Zoho. First of all, click the “Add All Tax Code” button to add all the Magento 2 tax codes to the list in the grid and then, click “Synchronize” to sync each tax code with Zoho API.

8. View Sync Queue & History

If your store already has customers, products, orders, invoices and want all of them to sync with Zoho after the extension installation, move to Zoho Inventory Integration > Sync Queue. Click “Add Customers”, “Add Products”, “Add Orders”, “Add Invoices”, one by one in the same order as mentioned to add all here in the sync queue.

 

Click on the  “Synchronization” button to sync them gradually with Zoho.

History Logs

Once synchronized, the status of each entity is shown with the details at Zoho Inventory Integration > History Logs. If the data is synchronized correctly, the status will be successful, else if there's a problem during data sync, it will show error status.