Adoment
All posts
Playbook21 June 202614 min read

From spreadsheet chaos to self-running ops: a WhatsApp + Razorpay + Sheets playbook

A concrete, build-it-today walkthrough of turning the most common Indian SMB workflow, payment in, customer notified, record kept, into something that runs itself. No code, no relay servers.

Most ops problems don't need a grand strategy. They need one specific, painful, repetitive task to stop being done by hand. So this post is deliberately concrete. We're going to take the single most common workflow in Indian small business, a customer pays, you confirm it on WhatsApp, you keep a record, and turn it into something that runs itself while you sleep.

By the end you'll have a blueprint you can build today, plus the variations that make it genuinely production-grade.

The before: how this usually works

Right now, in thousands of businesses, this is the actual process:

  1. 01A payment lands. Someone notices it, maybe right away, maybe hours later when they finally check the dashboard.
  2. 02They copy the customer's details into a WhatsApp message and send a confirmation by hand.
  3. 03They open a spreadsheet and type in the amount, the date, the customer, the order.
  4. 04They do this a few dozen or a few hundred times a day, occasionally fat-finger something, and occasionally leave a customer waiting hours for a confirmation that should've taken seconds.

None of this work is hard. That's exactly why it's worth automating. It's pure repetition, it's easy to get wrong, and it scales linearly with the business. Every new customer is just more of this same manual work.

The after: the workflow in plain language

Here's the whole thing in one sentence. When Razorpay captures a payment, send the customer a WhatsApp confirmation and append a row to a Google Sheet. Three systems, one trigger, two actions. Let's build it node by node.

Step 1. Trigger: the Razorpay payment event

The workflow kicks off the instant Razorpay captures a payment. This is a webhook trigger, so Razorpay pushes the event to Adoment the moment it happens. No polling, no delay. The trigger carries everything about the payment: the amount, the customer's contact details, the order reference, the payment ID.

Because the trigger is a real webhook, the customer's confirmation can land before they've even put their phone back in their pocket.

Step 2. Action: the WhatsApp confirmation

Next, send the confirmation. Using the values the trigger carries, the message basically writes itself:

Hi {{trigger.customer.name}}, we've received your payment of ₹{{trigger.payment.amount}} for order {{trigger.order.id}}. Thank you! Your order is now being processed.

No copy-paste, no switching apps, no waiting for someone to be free. The references pull live values straight from the payment event, so every message is correct by construction.

Step 3. Action: append to Google Sheets

Finally, keep the record. A Google Sheets node appends a row with the date, customer, amount, order ID, and payment ID. The same data you used to type by hand, now written automatically and identically every single time. Your spreadsheet quietly turns into a ledger you can trust instead of a chore full of typos.

Making it production-grade

The three-step version is already a big upgrade. But a few additions turn it from a neat demo into something you'd actually bet the business on.

Handle the failure cases

  • If the WhatsApp send fails, say a bad number or a provider hiccup, the workflow should retry with backoff instead of silently dropping the confirmation.
  • If the same payment event shows up twice (webhooks do get redelivered), the workflow shouldn't message the customer twice or write a duplicate row.
  • If a step fails for good, it should show up in your run logs so a human can jump in, not just vanish without a trace.

The nice thing is that on a platform that already does retries and logging for you, none of this is extra work you have to remember. It just happens. Which is sort of the whole reason to not build this stuff yourself from scratch.

Add the branches that match real life

Real operations have conditions, and your workflow can too:

  • Above a certain order value, also create a lead in your CRM so sales follows up on the big customers.
  • If the payment is a subscription renewal rather than a one-off, send a different message and update the customer's plan.
  • If it's a repeat buyer, branch into a loyalty flow: a discount code, a thank-you, a nudge toward the next purchase.

Each branch is a few more nodes, not a few more weeks. The cost of adding a bit of intelligence stays low, so you actually do it instead of leaving it on the someday list forever.

What you actually gained

Step back and look at what changed. The same outcome, customer confirmed and record kept, now happens in seconds instead of minutes, identically every time, with no human in the loop and no spreadsheet typos. The work that used to scale linearly with the business now scales for free. And the person who used to do it by hand is free to do something only a human can.

The point was never really that the task got faster. It's that it stopped being a task at all. Nobody on the team is doing it anymore.

If there's one habit worth picking up, it's this. Look for the repetitive thing that spans a few different systems and quietly eats your team's hours. Try to say what it does in one plain sentence. Then build it once and leave it alone. This payment-in, customer-notified, record-kept playbook is just the one most Indian businesses end up needing first. The funny part is that once you've shipped it, you start noticing the next ten candidates everywhere, because you've trained your eye for them.

Razorpay, WhatsApp and Google Sheets are all native in Adoment, so realistically this is an afternoon's work, and after that it just runs.

Written by Rishabh Gupta

Ready to put your operations on autopilot?

Book a 30-minute walkthrough and we'll wire up your first workflow with you.

Book a demo