For most Indian D2C stores, the best COD confirmation setup is WhatsApp first and an AI voice call for anyone who doesn't reply, both before the courier pickup. WhatsApp is cheapest per message. An IVR call handles simple "press 1" confirmations. An AI voice call reaches people who ignore messages, understands spoken Hindi and regional languages, and can take an address change in conversation, so more orders end with a clear confirmed or cancelled answer before you ship. This is Edesy's COD verification use case.
This guide compares the three methods on reach, cost per order and what each misses, then shows the combined flow and how to connect it to your store.
Want every COD order confirmed by phone, automatically? See COD order confirmation calls: the customer presses 1 to confirm or 2 to cancel, and the answer is written back to your store. Hindi and English.
Why confirm COD orders at all
Every COD order that is refused at the door, or can't be delivered, comes back as return-to-origin (RTO). You pay forward shipping, return shipping and packaging, and the stock is stuck in transit. A confirmation step before dispatch catches the orders that were placed by mistake, as a test, or with a wrong address. Use our COD and RTO calculator to see what RTO costs you at your own rates, and the shipping rate calculator for the courier charges on both legs.
The three methods compared
| WhatsApp message | IVR call ("press 1") | AI voice call | |
|---|---|---|---|
| How it works | Template message with Confirm / Cancel buttons | Recorded call, keypad reply | Two-way spoken conversation |
| Reaches people who ignore messages | No | Yes | Yes |
| Understands spoken replies | - | No, keypad only | Yes, Hindi, Hinglish and regional languages |
| Handles "change my address" | Only with extra flows | No | Yes, in the same call |
| Answers questions ("when will it arrive?") | Only with a chatbot | No | Yes, simple ones |
| Clear outcome recorded | When they tap a button | When they press a key | Confirmed / cancelled / address change |
| Relative cost per order | Lowest | Low | Low (per answered minute) |
| Best for | First attempt, every order | Simple, high-volume yes/no | Non-responders, high-value orders, address issues |
No single method is best on its own. Each one catches people the previous one misses.
How a keypad confirmation call works on Edesy
The "press 1" column above is what Edesy's COD order confirmation calls do, connected to your store:
- Your store sends the new COD order by webhook. Prepaid and already-confirmed orders are skipped.
- We wait a short delay (2 minutes by default) and call inside your calling hours (9 am to 9 pm IST by default). Orders placed at night are called the next morning.
- We check the order is still open just before dialling, so cancelled orders aren't called.
- The customer hears the order number and COD amount in Hindi or English and presses 1 to confirm or 2 to cancel.
- The answer is written back as a tag, note, status or cancellation, depending on your platform.
- No answer? Up to three attempts by default (30 minutes, then 2 hours apart), after which the order is marked unreachable.
Every line of the script is editable. A custom store or backend connects today through a signed webhook (custom store API); for Shopify and WooCommerce we set it up for you during the pilot. The full sequence, defaults and outcomes are in how COD confirmation calls work.
The combined flow
- Order placed (COD). Send the WhatsApp confirmation template immediately.
- Wait 2-4 hours, or until your pickup cut-off approaches.
- Not confirmed yet? AI voice call, in the customer's language:
Namaste {{name}} ji, main {{store}} se ek automated call kar rahi hoon. Aapne {{product}} order kiya hai, cash on delivery, {{amount}} rupaye. Kya main aapka order confirm kar doon?
- Capture the outcome as data: confirmed, cancelled, address change (with the new address), call back later.
- Update the order: ship confirmed orders, cancel the cancelled ones, fix addresses, and retry "call back later" once before the cut-off.
- Still no answer after retries? Decide by order value: hold high-value orders, ship low-value ones.
More ready-made scripts are in our Hindi AI calling scripts post.
Connecting it to your store
The flow is the same for Shopify, WooCommerce or a custom store:
- Trigger: a new COD order fires a webhook from your store, or an automation tool (Zapier, Make, n8n) watches for new orders.
- Call: the automation sends the customer's phone number and order details (name, product, amount, address) to the voice agent's API as variables. See the trigger-call API.
- Capture: the agent's data fields record the outcome and any new address after the call.
- Write back: the call result is posted to a webhook, and your automation updates the order status or tags it in the store.
Edesy also has a built-in order-status template to start from. For Shopify-specific options, see Shopify COD verification, and for D2C playbooks, read voice AI for COD verification.
What it costs per order
On Edesy, AI calls are billed per started minute at Rs 4-6 per minute depending on your prepaid top-up, and unanswered calls are free. A COD confirmation usually finishes in under a minute:
- About Rs 4-6 per answered confirmation call
- Only orders that did not confirm on WhatsApp get a call, so the cost per order across all orders is lower
Keypad confirmation calls on Edesy are priced separately: pay as you go from a prepaid wallet, and share your monthly COD volume for pricing.
Compare either cost with the forward and return shipping on one RTO order on your courier. If one call prevents one RTO in every few calls, the maths usually works; our COD and RTO calculator lets you plug in your own numbers.
Practical tips
- Call before the pickup cut-off, inside a daytime calling window.
- Match the language to the region: Hindi-English in the north, the state language elsewhere.
- Keep it under 45 seconds: confirm, handle address changes, done.
- Listen to the first 30 recordings: product names and amounts are where voices trip up.
- Say it is automated and offer a callback from your team for complaints.
Start with yesterday's COD orders
If you want every new COD order called automatically, with the answer written back to your store, start with COD order confirmation calls. To test an AI voice call on yesterday's unconfirmed orders instead, create a free account and upload them as a small campaign.