This page is a working template pack, not a think piece. Every message below is written to pass Meta's template review, labelled with the correct pricing category, and ready to paste into any WhatsApp Business API platform, InboxWA included. Copy them as they are, map the {{1}}-style variables to your store's order fields, and you can have a full COD confirmation flow live this week.
Why do COD orders need a WhatsApp confirmation message?
Because a COD order costs the buyer nothing to place and costs you ₹100-150 when it fails. India's COD return-to-origin rate sits at 25-35%, and most of it traces to three fixable causes: impulse orders the buyer never really wanted, wrong or incomplete addresses, and doorstep refusals. A confirmation message with one-tap Confirm and Cancel buttons filters the first, an address check fixes the second, and a prepaid nudge shrinks the third.
WhatsApp is the right channel for this because your customer is already on it: India has 596 million-plus WhatsApp users (Statista, 2024), and a templated message with interactive buttons gets an answer in minutes, where verification IVR calls go unanswered and SMS goes unread. InboxWA's automated COD verification flow cuts RTO by 30-45% for the D2C stores running it; the step-by-step playbook lives in our COD verification guide.
Utility or marketing: which category do COD templates use?
Order confirmations, address checks and dispatch updates for an order the customer initiated are utility templates: ₹0.1150 per message on Meta's January 2026 India rate card, plus 18% GST. The moment a template carries a discount, coupon or cross-sell, Meta prices it as marketing at ₹0.8560 per message, roughly 7.4 times more. That is why this pack keeps the incentive-led COD-to-prepaid nudges as separate, honestly labelled marketing templates with an opt-out line.
Two practical rules. First, never smuggle promotional copy into a utility submission; Meta's reviewers reclassify or reject it, and repeat offences hurt your account standing. Second, remember the per-message price above is only Meta's share: BSPs that mark up Meta fees add 10-30% on top of every single confirmation you send. InboxWA charges zero markup on Meta fees, so the maths on this page is at Meta's exact published rates; you can rebuild it for your own volumes in the WhatsApp API pricing calculator.
The template pack: 10 COD confirmation messages ready to paste
Conventions used below: {{1}}, {{2}} and so on are variables you map to order fields; quick-reply button labels must stay within 25 characters; "Pay online" and "Track shipment" are URL buttons pointing at your Razorpay payment link or tracking page. Submit each message as its own template with a snake_case name (cod_confirm_v1, cod_address_check_v1) so you can iterate on copy without breaking live flows.
1. COD order confirmation (Confirm / Cancel)
Category: utility · Send: within 5 minutes of order placement. This single template does most of the RTO filtering.
Hi {{1}}, thanks for ordering from {{2}}.
Order {{3}} | Amount: ₹{{4}} (Cash on Delivery)
Items: {{5}}
Please confirm your order so we can pack and dispatch it today.
Buttons: [Confirm order] [Cancel order] (quick replies)
2. COD confirmation with a Pay Online option
Category: utility · Send: within 5 minutes, instead of template 1, when you generate a payment link per order. No discount language, so it stays utility.
Hi {{1}}, your COD order {{2}} of ₹{{3}} is on hold for confirmation.
Deliver to: {{4}}
Tap Confirm to ship it as COD, or pay online now and skip handling cash at the door.
Buttons: [Confirm COD] [Cancel order] (quick replies) · [Pay online] (URL button)
3. Delivery address verification
Category: utility · Send: immediately after confirmation, at least for pincodes your courier flags as high-RTO. Incomplete addresses are the second biggest RTO cause.
Hi {{1}}, one quick check before we ship order {{2}}.
We have your delivery address as:
{{3}}, {{4}} - {{5}}
Is it correct and complete (house number, landmark, pincode)?
Buttons: [Address correct] [Update address] (quick replies)
4. COD-to-prepaid nudge with incentive
Category: marketing (the discount makes it promotional) · Send: 30-60 minutes after COD confirmation, only to contacts with marketing opt-in, and always with an opt-out line.
Hi {{1}}, your order {{2}} (₹{{3}}) is confirmed for Cash on Delivery.
Pay online within the next {{4}} hours and get ₹{{5}} off instantly, plus priority dispatch. No cash needed at the door.
Reply STOP to stop receiving offers.
Buttons: [Pay online and save] (URL button) · [Keep COD] (quick reply)
5. COD-to-prepaid nudge without a discount (stays utility)
Category: utility · Send: shortly after confirmation when you cannot fund a discount. Convenience framing only; any offer language flips it to marketing.
Hi {{1}}, order {{2}} for ₹{{3}} is set for Cash on Delivery.
Prefer not to keep cash ready? You can pay securely online now and we will mark your order prepaid. Same delivery date.
Buttons: [Pay online] (URL button) · [Keep COD] (quick reply)
6. Reconfirmation follow-up (before auto-cancel)
Category: utility · Send: 20-24 hours after template 1 if there is no response. State the cancellation window plainly; urgency here is factual, not promotional.
Hi {{1}}, we are still holding order {{2}} (₹{{3}}) for you.
Unconfirmed COD orders are automatically cancelled after {{4}} hours. One tap and it ships today.
Buttons: [Confirm order] [Cancel order] (quick replies)
7. Dispatch confirmation with tracking
Category: utility · Send: at courier handover. Restating the exact COD amount here prevents doorstep disputes and part-payment arguments.
Good news, {{1}}. Order {{2}} has been dispatched via {{3}}.
Tracking ID: {{4}}
Expected delivery: {{5}}
Amount to pay on delivery: ₹{{6}}
Buttons: [Track shipment] (URL button)
8. Out for delivery (keep cash ready)
Category: utility · Send: on the morning of delivery. This one message cuts "customer not available" and doorstep-refusal failures sharply.
Hi {{1}}, your order {{2}} is out for delivery today.
Please keep ₹{{3}} ready. Our delivery partner from {{4}} may call you before arriving.
Buttons: [I am available] [Reschedule] (quick replies)
9. Hinglish COD confirmation
Category: utility · Send: within 5 minutes, for audiences that skew Tier 2/3. Submit under language: English, with natural sample values, and it approves normally.
Namaste {{1}} ji, {{2}} par aapka order {{3}} mil gaya hai.
Order amount: ₹{{4}} (Cash on Delivery)
Confirm karte hi hum aaj hi dispatch kar denge. Bas ek tap kijiye:
Buttons: [Order confirm karein] [Cancel karein] (quick replies)
10. Hinglish COD-to-prepaid nudge with incentive
Category: marketing · Send: 30-60 minutes after confirmation. The Hinglish version of template 4; keep the opt-out line in every send.
{{1}} ji, aapka order {{2}} (₹{{3}}) COD par confirm ho gaya hai.
Abhi online payment kijiye aur ₹{{4}} ki turant chhoot paaiye. Door par cash rakhne ki zaroorat nahi.
Offers band karne ke liye STOP likhein.
Buttons: [Online pay karein] (URL button) · [COD hi rakhein] (quick reply)
What does a COD confirmation flow cost per order?
About 41 paise. A three-touch utility flow (confirmation, follow-up, dispatch update) costs 3 x ₹0.1150 = ₹0.345 plus 18% GST at Meta's exact January 2026 rates. Against that, one avoided RTO saves ₹100-150 in forward and return shipping, so the flow is profitable if it rescues even one order in roughly 250. Here is the monthly maths at two volumes:
| Line item | 1,000 COD orders/mo | 5,000 COD orders/mo |
|---|---|---|
| Utility messages sent (3 per order) | 3,000 | 15,000 |
| Message cost at ₹0.1150 + 18% GST | ₹407 | ₹2,036 |
| RTO orders before, at 30% RTO | 300 | 1,500 |
| RTO orders avoided, at a 35% reduction | 105 | 525 |
| Logistics saved at ₹120 per avoided RTO | ₹12,600 | ₹63,000 |
| Net monthly saving | ₹12,193 | ₹60,964 |
Assumes a 30% baseline RTO, a 35% reduction (mid-range of the 30-45% InboxWA flows achieve), ₹120 average two-way logistics cost per RTO, and Meta's Jan 2026 utility rate with zero platform markup. Marketing nudges (templates 4 and 10) bill at ₹0.8560 and are excluded; send them only where prepaid conversion justifies it. Run your own numbers in the WhatsApp RTO savings calculator.
How do you get these templates approved by Meta in under 24 hours?
Meta's template review typically completes in under 24 hours, and the rejections that stretch it are almost always self-inflicted. Utility submissions fail when promotional language creeps in; marketing submissions fail on missing opt-outs and spammy formatting. The checklist:
- Name templates in snake_case with a version suffix (cod_confirm_v2, cod_address_check_v1). You cannot edit an approved template's category, so versioning keeps live flows safe while you iterate.
- Choose the category honestly. Order ID, amount, address and tracking are utility. A discount, a coupon code or "limited time" language is marketing, whatever you tick in the form.
- Give realistic sample values for every variable ("Ravi", "ORD-4521", "1,299"). Reviewers reject templates whose intent they cannot infer from samples.
- Mind the buttons. Quick-reply labels stay within 25 characters; use URL buttons for payment links and tracking; never use URL shorteners like bit.ly, a common rejection trigger.
- Skip ALL CAPS, exclamation chains and "FREE!!!" in any category, and submit Hinglish in Latin script under English.
Once approved, pace your sends. Order-triggered utility messages rarely touch rate limits, but if you also broadcast campaigns from the same number, use a dispatcher that respects Meta's limits and watches your quality rating; the discipline is covered in our bulk messaging playbook.
How do you automate the whole flow without writing code?
Templates are the copy; the flow is the product. In InboxWA, COD verification is a pre-built, no-code automation: a Shopify order with payment method COD fires template 1, a timer sends template 6 to non-responders after 20 hours, Confirm and Cancel taps update the order status and your CRM, and dispatch webhooks trigger templates 7 and 8 automatically. The complete recipe, with flow diagram, sits on the COD verification and RTO solution page.
Free-text replies are the part most flow builders drop. When a customer types "bhaiya address change karna hai" instead of tapping a button, InboxWA's AI reads it, answers in Hinglish or English, and collects the corrected address, with a confidence gate that hands the thread to a human agent, with context, whenever it is unsure. The same engine runs abandoned cart recovery, which pairs naturally with COD verification since both trigger off Shopify events. Plans start at ₹999/month ex-GST (full details on the pricing page), and the 7-day free trial of Growth features needs no card.
Start with three templates
Ship templates 1, 3 and 7 first: confirmation, address check, dispatch update. That is the 41-paise core that removes fake orders and address failures, and it is all utility category, so there is no marketing pricing and no opt-out overhead.
Add the prepaid nudges (4 and 10) later, once the core flow is stable and you can measure conversion against the ₹0.8560 marketing rate. At a 25-35% RTO baseline, the whole stack pays for itself on the first avoided return.
Frequently asked questions
Should a WhatsApp COD confirmation template be utility or marketing?
A plain confirmation of an order the customer just placed is a utility template, billed at ₹0.1150 plus GST in India as of Meta's January 2026 rate card. The moment you add a discount, coupon or upsell, Meta classifies the template as marketing at ₹0.8560 per message, so keep incentive-led COD-to-prepaid nudges in a separate marketing template with an opt-out line.
How much does a WhatsApp COD verification flow cost per order?
A three-touch utility flow (confirmation, follow-up, dispatch update) costs 3 x ₹0.1150 = ₹0.345 plus 18% GST, roughly 41 paise per order at Meta's exact rates. One avoided RTO typically saves ₹100-150 in two-way logistics, so the flow pays for itself if it rescues even one order in roughly 250. On platforms that mark up Meta fees, add 10-30% to every message.
Do WhatsApp order confirmations actually reduce COD RTO?
Yes. India's COD return-to-origin rate runs at 25-35%, driven by impulse orders, wrong addresses and doorstep refusals. An automated WhatsApp confirmation flow filters fake and impulse orders before dispatch, fixes addresses and converts a share of orders to prepaid; InboxWA's COD verification flow cuts RTO by 30-45% for D2C stores.
How long does Meta take to approve a COD confirmation template?
Meta's template review is typically completed in under 24 hours. Approvals go faster when you pick the correct category, keep utility templates strictly transactional (order ID, amount, address), provide realistic sample values for every variable, and avoid ALL CAPS, URL shorteners and promotional phrases in utility submissions.
Can I send COD confirmation messages in Hinglish?
Yes. Meta approves Hinglish templates written in Latin script; submit them under English and keep the sample values natural. Hinglish confirmations routinely outperform formal English for Tier 2 and Tier 3 pincodes, and InboxWA's AI handles the free-text replies that follow in both Hinglish and English.
Do customers need to opt in before I send an order confirmation on WhatsApp?
Yes. Meta requires opt-in for business-initiated messages, and a clearly worded WhatsApp-updates checkbox or notice at checkout is the standard way to collect it for order notifications. InboxWA stores every opt-in in a consent ledger and is DPDP Act aligned, with data hosted in India.
Cut COD RTO before your next dispatch run
Pre-built COD verification flow, Hinglish AI for free-text replies, zero markup on Meta fees. Live in under 10 minutes.