Appearance
Going live
You've connected WHMCS to Zoho and run payments in test mode. This guide is the final check before you accept real money: confirm everything is in place, prove the full flow works, then flip Test Mode to live.
First, test in test mode
Before going anywhere near live, keep Test Mode set to Yes and run a complete payment.
- Open an invoice in the client area and click Pay Now.
- Complete the payment inside the Zoho widget.
- Confirm the invoice reaches Paid, and that the transaction details and fee are recorded.
- If you use Payment Links, test one and confirm the webhook marks the invoice Paid too.
Watch the Gateway Log
Keep Utilities → Logs → Gateway Log open while you test. It's the fastest way to see whether verification and webhooks are succeeding.
The go-live checklist
Tick each of these before switching to live:
- [ ] License Key entered and active — payments are blocked while it's inactive (see Licensing)
- [ ] Data Center set to match your Zoho account (
INorUS) - [ ] Client ID, Client Secret, and a valid Refresh Token in place
- [ ] Account ID and Widget API Key entered — the widget loads correctly
- [ ] Webhook added in Zoho for Payment completed and Payment Link paid, with the Webhook Secret matching the gateway config
- [ ] Valid SSL certificate on your domain so the webhook endpoint is reachable
- [ ] A test-mode payment completed and reached Paid, fee recorded
Use live credentials for live
If your Zoho account uses different credentials for test and live, make sure the live Client ID / Secret, refresh token, and Widget API Key are the ones in the config before you switch. Re-generate the refresh token if you change the OAuth app.
Switch to live
When every box is ticked, set Test Mode to No under Setup → Payment Gateways → Zoho Payments and Save Changes.
Setup → Payment Gateways → Zoho Payments
After you go live
Make a small real payment yourself and confirm the invoice is marked Paid with the correct fee. Refund it in Zoho afterwards if you like. Keep an eye on the Gateway Log for the first few live payments so you catch any issue early.
If something looks off
Start with the troubleshooting page — it maps the common symptoms (widget not loading, token errors, webhook not processing) to their fixes.