Stop copying orders into Zoho Books by hand. Every order your customers place is typed, checked, and re-typed — or it just flows into Zoho Books on its own, seconds after checkout, with the contact, the items, the invoice, and the payment already in place. This plugin makes it the second one.
Zoho Integration for WooCommerce connects your store to your own Zoho Books organization over a secure OAuth connection — your Zoho password never touches the site. Set it up once with the built-in wizard, and your WooCommerce checkout becomes a direct feed into Zoho's sales, invoicing, and accounting — no CSV exports, no double data entry, no missed orders at month-end.
Compatible with every Zoho data centre (.com, .eu, .in, .com.au, .jp, .ca, .sa, .com.cn) · classic and block (Gutenberg) checkout · WooCommerce HPOS · works with your existing Zoho items via SKU matching.
⚡ Sync WooCommerce orders to Zoho Books automatically
- Export on checkout — the order is in Zoho Books before your customer sees the thank-you page, and you choose exactly which statuses qualify (Processing for paid orders, On hold for bank transfer / COD…)
- Sales order or invoice — your call: create each order as a sales order only, or convert it straight to an invoice, submitted approved or saved as a draft
- Your numbering, your rules — keep your own document series for sales orders, invoices and credit notes, or let Zoho number them
- Discounts and coupons land per line or at document level — the way your accountant expects; shipping ships as its own (taxable) line
- Flexible customer handling: real contact records (created or matched by email), guest checkouts included, or map every order to a single generic contact
- Multi-currency orders converted with Zoho's or WooCommerce's exchange rate — or skipped, your choice
🧾 Invoices, payments, refunds — created automatically
- Zoho invoices created automatically at the order statuses you choose
- Payments registered and invoices marked paid — with per-gateway payment-mode and deposit-account mapping, so card money and COD money land in the right books
- Refund in WooCommerce → credit note in Zoho Books, linked to its invoice and applied. Done.
- Cancel an order → its Zoho documents are voided, not orphaned
- Fulfilment recorded as a sales-order note or a delivery challan, tracking details included
🧮 Taxes, handled properly
- Send WooCommerce's own tax totals so both systems agree to the last decimal — a document-level rounding adjustment keeps them in exact step — or let Zoho Books recompute tax instead
- One-click auto-mapping of your WooCommerce rates to the matching Zoho taxes, zero-rated lines included
- Regional tax fields built in where Zoho requires them — including full India GST support (GSTIN, HSN/SAC, place of supply, CGST+SGST vs IGST resolved automatically)
🔄 Customers and products, in both directions
- Push WooCommerce customers to Zoho contacts the moment they register or change — guests included
- Pull Zoho contacts into WooCommerce on a schedule, with create and conflict policies you control (WooCommerce wins, Zoho wins, or last write wins)
- Product sync both ways with SKU-first matching that never merges two different products, and field-level control over what a push may overwrite
- Inventory sync with a single source of truth — WooCommerce → Zoho as stock adjustments, or Zoho → WooCommerce on a schedule as fast as every 15 minutes, into the Zoho warehouse you choose (Zoho Inventory required; the plugin tells you plainly when it isn't enabled, with the exact steps to turn it on)
🛡 Built for stores that can't afford sync surprises
- Background queue with automatic retries — a slow Zoho server never blocks your checkout
- Failures land in a visible retry queue and resolve themselves the moment a retry succeeds — no stale red badges
- Human-readable logs: plain-language messages ("Zoho would not accept stock tracking — it needs a Zoho Inventory subscription"), with technical details when you want them
- Dashboard with sync status, health, mapped-record counts and recent activity at a glance
- A setup wizard that resumes exactly where you left off — even across the OAuth redirect
- Change organization safely: the plugin warns you, explains what happens to existing links, and cleans up on your say-so
- Manual sync buttons that follow your settings and say exactly which switch to flip when they're off
Every feature listed above is fully functional in this plugin — there is no license unlock, trialware gate, or disabled code path.
🚀 Ready in minutes
- Install and activate the plugin
- Follow the wizard: paste your Zoho API client keys, click Save & Connect, pick your organization
- Place a test order — watch it appear in Zoho Books
Trademark notice
"Zoho" and "Zoho Books" are trademarks of Zoho Corporation Pvt. Ltd. "WooCommerce" is a trademark of Automattic Inc. This plugin is an independent integration developed by ERP7 Solutions and is not affiliated with, endorsed by, or sponsored by Zoho Corporation, Automattic Inc., or WooCommerce.
Requirements
- WordPress 6.5+ · WooCommerce 8.0 or higher · PHP 8.0+
- A Zoho Books organization and a free Zoho API client (Client ID and Secret — the wizard shows you exactly where to create one)
- Ensure WooCommerce is installed and active.
- Upload the plugin to
wp-content/plugins/erp7-order-sync-for-zoho-books and activate it. The release zip contains the compiled admin app; the JavaScript source lives in src/ and builds with npm install && npm run build.
- Open Zoho Sync in the admin menu and follow the onboarding wizard.
Connecting to Zoho
In the
Zoho API Console, create a
Server-based Application and add the redirect URI shown on the Connection tab. Enter your Client ID, Client Secret and data-centre region, click Save & Connect, then choose your organization.
Recommended
Define an encryption key in
wp-config.php so Zoho secrets are encrypted at rest:
define( 'ZBWC_ENCRYPTION_KEY', 'a-long-random-string' );