Integration · All integrations
Razorpay WhatsApp integration: a payment confirmation on WhatsApp, automatically
When a customer pays you through Razorpay, VartaAPI can send them a WhatsApp message straight away: the amount, the payment ID and anything you put in the payment's notes. You set it up once in the flow builder. No code, and no other app in between.
Plan: Comet and above (it is a chatbot flow) · Updated 7 October 2026
What it does
Razorpay tells VartaAPI every time a payment is captured. VartaAPI checks Razorpay's signature on it (once you have saved the secret, step 5 below), finds the customer's mobile number on the payment, and runs the flow you built for it. Most businesses send one WhatsApp template: "Thank you, we have received ₹1,499. Payment ID pay_…". You can add more steps after it, such as a tag on the contact or a deal in the pipeline.
It only reacts to a captured payment. A failed payment, a refund or a subscription event is received and ignored, so a customer is never thanked for money that did not arrive.
Set it up in five steps
- In VartaAPI, open Flows and make a new flow. For the trigger, choose "another system sends us something (Webhook)", and under "Who is sending it?" choose Razorpay.
- Add a Send template step with an approved utility template, such as a payment receipt. The customer has probably not written to you in the last 24 hours, so WhatsApp only allows a template, not a plain message.
- Save the flow. A webhook address appears, starting https://api.vartaapi.com/hooks/. Copy it.
- In your Razorpay Dashboard, add a new webhook, paste that address, and tick only the payment.captured event. Razorpay's form has a box for a secret: make one up and keep it.
- Back in the flow's trigger, paste the same secret into "Razorpay webhook secret" and save. From now on a message without Razorpay's correct signature is refused.
Then switch the flow on. Make a small test payment to your own number and the message arrives on your phone. The flow's call list shows each payment Razorpay sent and what happened to it.
What you can put in the message
Each of these can fill a blank in your template:
- {{amount_rupees}}: the amount in rupees, for example 1499 or 1499.50 (Razorpay sends paise; VartaAPI converts)
- {{payment_id}}: Razorpay's payment ID, for example pay_P8x…
- {{method}}: how they paid, for example upi or card
- {{email}} and {{contact}}: what the customer gave Razorpay
- {{notes.anything}}: any note you attach to the payment or payment link, for example {{notes.order_id}} or {{notes.plan}}
Razorpay does not send the customer's name with a payment. If you want to greet them by name, add the name as a note when you create the payment link or order, and use {{notes.name}}.
Safe against duplicates and fakes
Razorpay sometimes sends the same event twice. VartaAPI remembers each payment ID and sends the message only once. With the secret saved, a request that does not carry Razorpay's signature is refused, so nobody can trigger your messages by guessing the address.
Each address accepts up to 60 events a minute, more than a small business takes in an hour.
What it costs
A payment receipt is a utility template. Meta charges utility messages at ₹0.115 each in India and bills you directly; VartaAPI adds nothing per message. The flow builder is on Comet (₹999 a month plus GST) and above. See the pricing page for the plans and Meta's current rates.
Questions
Quick answers.
Do I need a developer to connect Razorpay to WhatsApp?
Which Razorpay events send a message?
Will the customer get two messages if Razorpay retries?
Why do I need a template?
Where does the customer's phone number come from?
Can I also email the receipt?
Read next: Webhooks: start WhatsApp messages from any software · The flow builder · WhatsApp API pricing in India
Try it on your own number.
Start on the free plan, connect your WhatsApp number, and upgrade when you need it.