The Zoho Razorpay integration connects your payment collection with invoicing and CRM. For Indian businesses using Razorpay to accept online payments, this integration auto-reconciles payments in Zoho Books, updates deal stages in Zoho CRM, and eliminates the manual work of matching bank statements to invoices.

Razorpay payment checkout integrated with Zoho Books

Why Integrate Zoho with Razorpay

Indian businesses using Zoho Books for invoicing and Razorpay for payment collection face a daily reconciliation task: match each Razorpay settlement to the corresponding invoice, account for Razorpay fees and GST e-invoicing in Zoho Books on fees, and handle partial payments, refunds, and failed transactions. Without integration, this is a manual, error-prone process that consumes 1 to 2 hours daily for a business processing 50+ transactions.

Integration Options

There are three ways to connect Zoho with Razorpay:

MethodBest ForSetup Effort
Zoho FlowSimple automations: payment received triggers CRM update or Books entryLow (30 minutes)
Razorpay webhook + Zoho CreatorCustom logic: validate payment, match to invoice, handle edge casesMedium (2-3 hours)
Zoho Books Payment LinksSend payment links in Zoho Books invoices; Razorpay processes the paymentLow (15 minutes)

Setting Up Zoho Books Payment Links with Razorpay

The simplest integration: connect Razorpay as a payment gateway in Zoho Books. Every invoice you send includes a “Pay Now” button. The customer clicks it, pays via Razorpay (UPI, card, netbanking), and Zoho Books auto-records the payment against that invoice. No manual reconciliation needed.

Configuration steps:

  1. Go to Zoho Books > Settings > Online Payments > Razorpay
  2. Enter your Razorpay Key ID and Key Secret (from Razorpay Dashboard > Settings > API Keys)
  3. Enable payment methods: UPI, credit/debit card, netbanking, wallets
  4. Set auto-charge for recurring invoices (if applicable)
  5. Send an invoice; the customer sees the Pay Now button with Razorpay checkout
Auto-reconciliation of Razorpay payments in Zoho Books

Webhook-Based Integration for Custom Workflows

For businesses that collect payments outside of Zoho Books invoices (subscription payments, e-commerce checkout, custom payment pages), use Razorpay webhooks to push payment events to Zoho.

When a payment is captured in Razorpay, the webhook sends event data (payment ID, amount, email, contact, notes) to a Zoho Creator form or Zoho Flow trigger. The receiving system then:

Handling GST on Razorpay Fees

Razorpay charges a transaction fee (typically 2% for cards, Rs. 3-10 for UPI) plus 18% GST on the fee. For accounting purposes in Zoho Books:

Zoho Books can automate this: when a Razorpay settlement lands in your bank account, create a split entry: payment received (credit to customer), payment gateway fee (debit to expenses), GST on fee (debit to input GST).

Auto-Reconciliation Setup

For daily reconciliation: download the Razorpay settlement report (available via API or dashboard). Import into Zoho Books bank reconciliation. Match each settlement to the corresponding invoice payments. With the webhook integration, most matching happens automatically. Only exceptions (partial payments, refunds, disputes) need manual attention.

For a full overview of all available options, explore our complete guide to Zoho integrations.

Verifying Webhook Signatures Before Trusting Payment Events

A webhook endpoint that accepts any incoming POST request as a genuine payment notification is a security gap, not just an integration detail. Razorpay signs every webhook payload with an HMAC SHA256 signature, sent in a request header, using a webhook secret you configure in the Razorpay dashboard.

The receiving side, whether that is a Zoho Creator custom function or a Zoho Flow webhook trigger, needs to recompute that signature from the raw payload using the same secret and compare it to the one Razorpay sent before acting on the event. If the signatures do not match, the request did not genuinely come from Razorpay and should be discarded rather than processed.

Skipping this check means anyone who discovers your webhook URL, which is not usually a secret in itself, could send a fabricated “payment captured” event and have your CRM mark a deal as paid or your system generate a payment receipt with no money having actually moved. This is a one-time setup step during the webhook integration, not an ongoing maintenance task, but it is the difference between a webhook integration and an open door.

Settlement Timing and Why Reconciliation Dates Do Not Match

A common source of confusion in daily reconciliation: the date a customer pays is not the date the money lands in your bank account. Razorpay does not settle funds instantly. Standard accounts typically settle on a T+2 working day cycle, meaning a payment captured on Monday usually reaches your bank account on Wednesday, with faster settlement available as a paid add-on for businesses that need it.

This gap matters for reconciliation because the payment event, and any CRM or Books update tied to it, should be triggered by the Razorpay payment status, not by watching for the bank credit to appear. If your process waits for the bank statement before marking an invoice paid, customers who paid on time will appear to be late by a couple of working days in every report you generate, which is a reconciliation problem, not a collections problem. Reconcile against the Razorpay settlement report and payment ID, and treat the bank statement only as the final check that the total settled amount matches, not as the trigger for updating invoice status.

Frequently Asked Questions

Can I use Razorpay payment links inside Zoho CRM?
Yes. Generate a Razorpay payment link via API or Zoho Flow when a deal reaches a specific stage. Embed the payment link in a CRM email template. When the customer pays, a webhook updates the deal to “Payment Received.”
Does the integration handle refunds?
Partially. When you initiate a refund in Razorpay, the webhook can trigger a credit note in Zoho Books. Full automation requires a webhook listener (Zoho Creator or Flow) that maps the refund event to a credit note creation in Books.
Can I auto-generate invoices when a Razorpay payment is received?
Yes. Set up a Zoho Flow: trigger on Razorpay payment captured, action creates an invoice in Zoho Books with customer details from the payment metadata. This works well for standard-priced products or subscription payments where the invoice amount is predictable.
Is Razorpay the only payment gateway that works with Zoho?
No. Zoho Books also supports PayPal, Stripe, PayU, and others for online payments. Razorpay is the most popular choice for Indian businesses because of UPI support, INR pricing, and wide domestic adoption. The integration setup is similar for other gateways.