Skip to content

Zoho CRM Connector

This plugin connects your Shopware 6 store with Zoho CRM and bridges the gap between your online store and your sales team. New customers are automatically created as contacts, business customers additionally as an account, orders are mapped as deals in your sales pipeline, and all status changes are logged as activities – in real time, fully automatically and with no manual effort.

Highlights

  • 👤 Automatically create customers as a contact in Zoho CRM
  • 🏢 B2B customers with a company name are created as a Zoho account
  • 💼 Every order automatically creates a deal in your pipeline
  • 🔔 Payment, shipping and cancellation are logged as activities
  • 🔐 Secure OAuth 2.0 connection without manual API keys
  • 📊 Sync dashboard with error log and manual sync button

❓ FAQ

What is Zoho CRM?

Zoho CRM is a widely used CRM and sales platform. Its official Zoho CRM REST API lets you create and update contacts, accounts, deals and activities automatically. To use it you need an active Zoho CRM account.

Which data is synchronized with Zoho CRM?

New customers are created as a contact, and for business customers (B2B) additionally as an account. Every order becomes a deal in the configured pipeline. Status changes such as payment, shipping or cancellation are logged as activities on the corresponding deal.

How is the connection to Zoho established?

The connection uses OAuth 2.0 – secure and without manual API keys. In the Zoho API Console you create an OAuth client, store the client ID and secret in the plugin, and authorize access once. The matching Zoho region (EU, COM, IN, AU) can be selected.

Does synchronization run automatically?

Yes. Transfer runs event-based in real time via the Shopware event/flow infrastructure. In the plugin settings you decide which Shopware events (e.g. registration, order placement, payment) are sent to Zoho CRM.

What does bidirectional synchronization mean?

Changes in Zoho CRM – such as marking a deal as "won" – can optionally flow back into Shopware and, for example, update the customer group. This reverse direction can be switched off.

What happens if a transfer fails?

Every transfer is logged with its status in the sync dashboard. Failed transfers appear in the error log and can be retried manually.

Is the plugin GDPR compliant?

All transferred data stays in your own Zoho instance. The connection uses only the official Zoho OAuth access authorized by you.

What are the requirements?

The plugin requires the CNK Foundation plugin (version 3.0.4 or later) and Shopware 6.7. On the Zoho side you need an active CRM account and an OAuth client (client ID & secret).

🔧 Installation

  • Requirement: CNK Foundation plugin (version 3.0.4 or later)
  • Requirement: active Zoho CRM account with an OAuth client
  • Install via the Shopware Plugin Manager or with Composer
  • Activate the plugin: bin/console plugin:install --activate CnkPlatformZohoCrm
  • Configure it in the Shopware administration

⚙️ Configuration

OAuth access

Setting Description
Zoho region Data center of your Zoho account: EU (.eu), COM (.com), IN (.in), AU (.com.au)
Client ID Client ID of the OAuth client from the Zoho API Console
Client secret Corresponding secret of the OAuth client
Connect to Zoho Button that starts the OAuth 2.0 authorization flow and confirms the connection in the admin

Create the OAuth client in the Zoho API Console (api-console.zoho.eu) as a "Server-based Application". The redirect URL shown in the plugin must be registered there as an authorized redirect.

Deal & pipeline mapping

Setting Description Default
Target pipeline Dropdown of the pipelines/layouts available in Zoho default pipeline
Start stage Stage in which new deals are created first stage
Deal title pattern Pattern for the deal title (e.g. Order {orderNumber}) Order {orderNumber}
Deal value Use the order total as the deal value On

Event selection

Setting Description Default
Create contact Transfer new customers as a contact (+ account for B2B) On
Order → deal Create a deal when an order is placed On
Payment Log payment as an activity On
Shipping Log shipping as an activity On
Cancellation Log cancellation as an activity On
Bidirectional Mirror the deal status from Zoho back to Shopware Off

🔄 Synchronizations in detail

Contact & account synchronization

On the selected trigger (e.g. registration or first order) the customer is created in Zoho CRM:

  1. The customer is created as a contact with name, email and phone number
  2. If a company is set (B2B), an account is created as well and the contact is linked
  3. Already transferred customers are recognized by the stored Zoho ID and updated (no duplicate)

Deal creation

Every order creates a deal in the configured pipeline:

  1. The deal is assigned to the corresponding contact/account
  2. Title and value are set according to the configuration
  3. The Zoho deal ID is stored on the Shopware order to prevent duplicates

Status activities

Order status changes are logged as activities on the deal – such as "payment received", "shipped" or "cancelled". This gives the sales team the complete history directly in Zoho CRM.

Bidirectional synchronization (optional)

When the reverse direction is enabled, regular syncs evaluate changes in Zoho. Example: when a deal is marked as "won", the customer group of the corresponding Shopware customer can be updated automatically.

📊 Sync dashboard

The sync dashboard in the administration provides:

  • Overview of all synchronized records (contacts, accounts, deals, activities)
  • Status per transfer (successful / failed)
  • Error log with the detailed message from the Zoho API
  • Manual sync button to retry individual or failed transfers

🛒 Typical use cases

B2B sales

Business customers are managed as an account with linked contacts in Zoho. Every order lands as a deal in the pipeline and gives sales immediate insight into purchasing behavior.

Wholesale & mid-market

Recurring orders create traceable deals including an activity history. The sales team can run targeted cross- and up-selling.

Lead nurturing

New registrations are created as contacts and can be qualified further in Zoho even before the first order is placed.

⭐ Benefits for merchants

  • No manual transfer of customers and orders into the CRM
  • Sales team works consistently in Zoho CRM – with real-time store data
  • Secure OAuth 2.0 connection without manual API keys
  • Full traceability thanks to Zoho IDs in Shopware
  • GDPR compliant: data stays in your own Zoho instance

🧩 Feature set

  • Create customers as a contact and – for B2B – as an account
  • Create deals from orders in the configurable pipeline
  • Log payment, shipping and cancellation as activities
  • Optional bidirectional synchronization (deal status → customer group)
  • Sync dashboard with error log and manual retry
  • Secure OAuth 2.0 connection incl. Zoho region selection
  • Freely configurable event selection
  • Error logging via Shopware logging

📚 Documentation

Additional documentation and screenshots will follow with upcoming versions of the plugin.

Technical Zoho CRM API documentation: https://www.zoho.com/crm/developer/docs/api/v6/