Key takeaways
- Most COD returns (RTO) start with an order the customer never really meant to receive, or an address the courier can't find.
- Send a WhatsApp message with Confirm and Cancel buttons within minutes of every COD order, before you pack it.
- Cancelled orders never reach the courier. Confirmed orders ship. Orders with no reply get one reminder, then a call or a hold.
- A plain COD confirmation is usually a utility template: ₹0.1150 per message in India on 30 October 2026, before GST.
- Keep offers out of the confirmation message, or Meta may classify it as marketing at ₹0.8631.
Many Indian shoppers prefer cash on delivery, especially on a first order from a brand they don't know. It also brings the most expensive problem in Indian ecommerce: RTO, or return to origin. The parcel goes out, nobody accepts it, and it comes back. You have paid forward shipping, return shipping and packaging, and the stock was locked up for a week or more.
Confirming every COD order on WhatsApp before dispatch is one of the simplest ways to cut that waste. Here is how to do it well.
Why COD orders come back
Prepaid customers have already paid. COD customers have committed nothing, so anything that cools their interest before delivery can become a return. The common causes:
- Impulse orders. Ordered on a whim from an ad or a reel, forgotten by delivery day.
- Duplicate orders. Two orders by mistake, or the same item ordered from two stores.
- Wrong or incomplete addresses. No house number, no landmark or a wrong pincode.
- Unreachable customers. A wrong number, or a phone switched off when the agent calls.
- Fake orders placed with someone else's name and address.
- Cash not ready on delivery day.
A confirmation message deals with the first five directly. A customer who has lost interest taps Cancel before you spend anything on shipping, an address typo shows up while you can still fix it, and a number that never replies is a signal to call first.
How WhatsApp COD confirmation works
Through the official WhatsApp Business API, you send a pre-approved template message with quick-reply buttons. The flow is short:
- The customer places a COD order on your website, app or WhatsApp.
- Within a few minutes, they receive a message with the order number, items, total payable on delivery and delivery address, and two buttons: Confirm order and Cancel order.
- Confirm moves the order into packing. Cancel cancels it, restocks the items and keeps it away from the courier.
- No reply after a set time triggers a reminder, then a call or a hold, depending on your rules.
- Any reply opens a 24-hour customer service window, so your team can chat freely to fix an address or answer a question.
Send it within minutes, while the customer still has their phone in hand. A request that arrives the next morning gets fewer replies and gives them more time to change their mind.
What to send, and when
A sequence that suits most D2C stores. Fit the timing to your dispatch cut-off: if you ship the same day, the reminder must go out before packing starts.
| When | Message | Purpose | Likely category |
|---|---|---|---|
| Within minutes of a COD order | Confirmation request with Confirm and Cancel buttons | Check intent, show the address | Utility |
| A few hours later, no reply | One short reminder with the same buttons | Catch customers who missed the first message | Utility |
| Before dispatch, still no reply | Phone call from your team, or hold the order | Decide whether to ship | No message |
| After Confirm | Thank you, expected dispatch date | Set expectations, reduce "where is my order" chats | Utility |
| After Cancel | Cancellation acknowledged, option to reorder | Close the loop politely | Utility |
| Address looks wrong | Free-form chat asking for a landmark or pincode | Fix the address before the label is created | Service |
Send only one reminder. More messages risk blocks and reports that lower your number's quality rating.
Sample message wording
Keep it short, show exactly what the customer will pay and where the parcel is going, and make the buttons obvious. Variables in double braces are filled in from the order.
Amount to pay on delivery: ₹{{4}}
Delivering to: {{5}}
Please confirm so we can pack and ship it. If anything is wrong, reply here and we'll fix it.
Avoid pressure ("your order will be cancelled") in the first message. Save firmer wording for the reminder, and only if you really cancel unconfirmed orders.
Rules for orders that don't reply
Some customers won't reply to either message. A silent repeat customer and a silent first-time customer carry very different risk, so treat them differently:
- Repeat customers with a good delivery history: ship as normal. The confirmation is a courtesy for them.
- First-time customers: call once before dispatch. A two-minute call is cheaper than a returned parcel.
- High-value orders, or several units of one item: hold until the customer confirms, by message or call.
- Pincodes with a history of returns: hold or call, and consider asking for a small advance or prepaid payment.
Auto-cancelling every unconfirmed order costs real sales, because some customers don't check WhatsApp for a day. If you do it, wait until your dispatch cut-off and say so in the reminder.
Fixing addresses before dispatch
Address problems are the RTO cause you can most often fix. Show the full address in the confirmation so the customer spots mistakes. When they reply, a 24-hour customer service window opens and your team can chat without a template: ask for a landmark, confirm the pincode, take an alternate number.
Update the address on the order itself before the shipping label is generated; a correction that lives only in the chat never reaches the courier. These free-form replies are service messages: the first 1,000 a month per number are free.
Utility or marketing: category and cost
Meta classifies every template when it approves it. A message about a specific order the customer placed, with no promotional content, is normally utility. Add a discount code, "you may also like" products or a sale banner, and it can become marketing, which costs about seven and a half times as much per message in India.
| Message | Likely category | Meta's India rate, 30 Oct 2026 |
|---|---|---|
| COD confirmation request and reminder | Utility | ₹0.1150 |
| Order confirmed, shipped, delivered | Utility | ₹0.1150 |
| Confirmation with a coupon or product suggestions | Marketing | ₹0.8631 |
| Your team's free-form replies | Service | First 1,000 a month free per number, then ₹0.1150 |
Rates before 18% GST. Meta charges only for delivered messages. Full rate card and calculator: WhatsApp API pricing in India.
For example, 1,000 COD confirmations a month at ₹0.1150 cost ₹115, or about ₹136 with GST, plus a few reminders. One returned parcel usually costs more in two-way shipping than the whole month of confirmations.
Note that from 1 October 2026, Meta also charges for utility messages sent inside an open 24-hour customer service window, which used to be free. A confirmation sent during an open WhatsApp chat is now charged too.
Manual or automated confirmation?
Confirming by hand, from the WhatsApp Business app or by phone, works for a handful of orders a day. It breaks down as orders grow or arrive at night.
| Compared on | Manual (app or phone) | Automated (WhatsApp Business API) |
|---|---|---|
| Speed | Whenever someone is free | Within minutes, at any hour |
| Customer action | Types a reply, which someone must read | Taps Confirm or Cancel |
| Order status | Updated by hand, often late | Can update the order directly |
| Record | Scattered across phones | Stored against the order |
| Cost | Staff time | Meta's per-message charge plus your platform |
Even when you automate, keep a person on the exceptions: no-reply orders, address fixes and questions.
How DoEcomm does it
In DoEcomm, COD confirmation is a step in your order fulfilment pipeline. When a COD order arrives, the customer receives your approved confirmation template with Confirm and Cancel buttons. Prepaid orders skip the step. You choose what each button does: Confirm can move the order to the next stage on its own, and Cancel can cancel the order automatically. Orders, customers and the WhatsApp chat sit in the same workspace, so whoever handles a reply sees the order next to the conversation in the shared team inbox.
The same pipeline sends order confirmed, shipped and delivered updates, and it works for orders from your DoEcomm store or a connected Shopify store. WhatsApp message charges are passed on at Meta's cost, with no margin. Read more about WhatsApp automation, or see how Instagram comments turn into WhatsApp orders.
Store + WhatsApp from ₹1,999/month, first month free. We set up the API, your COD template and your order updates within a week.
Book your setup ↗Frequently asked questions
Is a COD confirmation message a utility or marketing template?
It is usually approved as utility, because it is about a specific order the customer has placed. If you add an offer, a coupon or product suggestions, Meta can classify it as marketing, which costs more. Meta decides the category when it reviews the template.
How much does WhatsApp COD confirmation cost in India?
On 30 October 2026, Meta's India rate for a utility message was ₹0.1150, before 18% GST. A store that sends one confirmation for each of 1,000 COD orders pays about ₹115 a month, or about ₹136 with GST. A reminder to customers who don't reply adds to that.
What should I do if the customer doesn't reply to the COD confirmation?
Send one reminder a few hours later. If there is still no reply, call the customer or hold the order before dispatch. Auto-cancel only orders that carry real risk, such as high-value first orders, and ship trusted repeat customers as usual.
Can customers correct their delivery address on WhatsApp?
Yes. When the customer replies, a 24-hour customer service window opens and your team can ask for a landmark, a pincode or a corrected address in a normal chat. Update the order before the shipping label is created, or the parcel still goes to the old address.
Does COD confirmation stop all RTO?
No. It removes orders the customer never meant to receive and catches bad addresses before dispatch. Parcels can still come back because of courier delays, failed delivery attempts or a customer who changes their mind at the door. Fast dispatch and clear tracking updates help with those.