Industries
Restaurants & Food
Take restaurant orders, table bookings and payments in one WhatsApp chat. Auto-reply to common questions and cut support costs with ChatMitra.
Real Estate
Use WhatsApp automation to capture property leads, qualify them automatically, and follow up fast. See how real estate agents close more with ChatMitra.
Travel & Tourism
Use the WhatsApp Business API to capture travel leads, send itineraries, confirm bookings, and keep travellers updated. See how agencies grow with ChatMitra.
Banking & Finance
Run secure KYC, send account alerts and payment notifications on WhatsApp. Cut support load and stay within Meta's rules with ChatMitra.
Beauty & Cosmetics
Sell your catalog, recover carts and win repeat orders on WhatsApp. Auto-reply to product questions and send launches to opted-in customers with ChatMitra.
Education
Answer admission enquiries, fee and timetable questions, and keep parents updated — all on WhatsApp. Cut admin load and costs with ChatMitra.
EduTech
Capture course leads, qualify them and onboard learners on WhatsApp. Automate replies and cut lead-qualification cost with ChatMitra's no-code chatbot.
Events & Webinars
Handle event registrations, reminders and RSVPs in one WhatsApp chat. Cut no-shows, automate FAQs and keep attendees updated with ChatMitra.
Freelancers & Consultants
Capture leads, send proposals and chase invoices in one chat. WhatsApp automation for freelancers and consultants with ChatMitra — from ₹0.20 a chat.
Health & Wellness
Book appointments, send reminders and answer client questions in one WhatsApp chat. Auto-reply to routine queries and cut support costs with ChatMitra.
Home Decor
Share your home decor catalog, take orders and send delivery updates on WhatsApp. Automate FAQs and cut support costs with ChatMitra.
IT Services
Use the WhatsApp Business API to qualify leads, run support over chat, and wire WhatsApp into your stack with webhooks. How IT companies scale with ChatMitra.
Marketing Agencies
Use WhatsApp automation to capture leads, run campaigns and manage multiple client brands from one account. How agencies scale on WhatsApp with ChatMitra.
Offline & Retail
Turn shop footfall into a WhatsApp list. Share catalogs, add a QR-to-chat at the counter and bring buyers back — with ChatMitra from ₹0.20 per chat.
Spas & Salons
Use the WhatsApp Business API to take spa and salon bookings, cut no-shows with automated reminders, and rebook regulars. How salons grow with ChatMitra.
Automotive
Use the WhatsApp Business API for automotive dealerships to qualify buyers, book test drives and send service reminders — automated, on one chat, with ChatMitra.
All Industries
Browse every industry guide
Industry Guides

RTO in Ecommerce: How to Reduce It with WhatsApp

What RTO means in ecommerce, why COD orders come back, what each return costs, how to measure your RTO rate, and a WhatsApp playbook to cut it.

Nirav Chauhan
Written byNirav Chauhan
Read time 19 min
Posted on
RTO in Ecommerce: How to Reduce It with WhatsApp
Summarise this post with:

Short on time? Read this first

  • RTO (return to origin) is a parcel the courier could not deliver and sends back to the seller. The seller usually pays freight both ways and earns nothing from the sale.
  • Most RTO is decided before the parcel leaves: impulse cash-on-delivery orders, wrong or incomplete addresses and buyers who can't be reached. Shipway's FY25 data put RTO at nearly 26% of non-prepaid orders against under 2% of prepaid ones.
  • WhatsApp helps at three checkpoints: confirm the order and address before dispatch, prepare the buyer on delivery day, and rescue the parcel within hours of a failed attempt.
  • The maths favours asking. A utility template costs ₹0.1150 in India, so saving a handful of parcels a month pays for a confirmation message on every COD order.
On this page 0

    RTO in ecommerce means “return to origin”: a parcel the courier couldn’t deliver and sends back to the seller. The buyer refused it, wasn’t reachable, or gave an address the courier couldn’t find. For the seller it’s the worst outcome an order can have, because you pay to ship the parcel out and back and still don’t make the sale. Most RTO is preventable, and much of it is decided before the parcel leaves your warehouse.

    This guide explains what RTO is and why it happens, what it really costs, and how to measure it properly. It then covers the practical steps that lower it, with WhatsApp at the three moments where one message can change the outcome. It’s written for Indian D2C and marketplace sellers, where cash on delivery (COD) makes RTO a daily problem, but the same playbook applies anywhere buyers pay at the door.

    Key takeaways

    • RTO is mostly a COD problem. In Shipway's FY25 data, nearly 26% of non-prepaid orders came back, against under 2% of prepaid ones.
    • Fix it in three places: before dispatch (confirm and check the address), on delivery day (make sure someone is home with payment ready) and after a failed attempt (act within 24 hours).
    • Cancelling an unwanted order before dispatch costs almost nothing. Shipping it and bringing it back costs two freight legs.
    • Measure RTO by payment method, pincode, courier and product, or you won't know which fix is working.

    What RTO means in ecommerce

    RTO is logistics shorthand. Shiprocket’s help centre puts it simply: “An RTO (Return To Origin) happens when a shipment can’t be delivered and gets sent back to you.” Delhivery defines it as “a Sale order that was undelivered and was returned to the client warehouse.”

    The important word is undelivered. RTO isn’t a customer return. In a return, the buyer received the product, used or inspected it, and asked to send it back. In an RTO, the buyer never took the parcel. That difference matters because the causes, and the fixes, are completely different.

    TermWhat happenedBuyer has the product?Who usually pays
    CancellationOrder stopped before it shippedNoAlmost nothing: no freight
    NDR (non-delivery report)A delivery attempt failed. The parcel is still with the courierNoNothing yet. This is the rescue window
    RTO (return to origin)Attempts ended or the order was cancelled in transit, and the parcel goes backNoSeller: forward and return freight
    Customer returnBuyer received it, then sent it backYes, until pickupDepends on your return policy

    When you track a parcel, you’ll usually see the RTO journey in stages: RTO initiated (the courier has stopped trying), RTO in transit (on its way back) and RTO delivered (back at your warehouse). “RTO delivered” confuses new sellers. It means delivered to you, not to the customer.

    How many delivery attempts before RTO?

    It depends on the courier. Shiprocket’s support page says: “We provide a maximum of three attempts to deliver your order”, adding that “most courier partners make three attempts before the order is marked RTO. However, few couriers mark RTO after the 1st attempt.”

    Each failed attempt normally generates an NDR. Shiprocket asks sellers to act “at the earliest or within 24 hours”, for example by requesting a reattempt or updating the phone number or address. If nobody acts, it says it will “try to take action on your behalf and request the courier partner to reattempt”. In other words, the NDR is your second chance, and it has a short fuse. Treat it as urgent, not as a report to read on Friday.

    Why orders come back: the real causes

    Shiprocket lists the usual reasons as incorrect address, recipient unavailable, customer refusal, COD issues and remote areas. In practice they fall into four groups, and each needs a different fix.

    CauseWhat it looks likeTypical signalBest fixWhen
    Low intentImpulse COD order, buyer changes mind, orders the same item elsewhere, or a prank or fake orderNo reply to confirmation; first-time buyer; high-risk pincodeConfirm before dispatch; partial COD; prepaid nudgeBefore dispatch
    Address problemsMissing house number or landmark, wrong pincode, “near temple” as the whole addressShort address field; pincode doesn’t match cityAsk for the full address and landmark on WhatsAppBefore dispatch
    AvailabilityBuyer at work, phone switched off, doesn’t pick up the courier’s call from an unknown numberNDR reason “not reachable” or “not available”Delivery-day heads-up; let the buyer pick a reattempt dateDelivery day, NDR
    Payment at the doorBuyer has no cash, amount differs from what they expected, delivery agent can’t take UPINDR reason “cash not ready” or “refused”State the exact COD amount before delivery; say how they can payDelivery day

    Two more causes sit on the seller’s side. Slow delivery gives buyers time to cool off: in Shipway’s FY25 data, orders attempted within 1–2 days had a 22% RTO rate, rising to 27% at 3–5 days and 35% after more than 5 days. And expectation gaps, such as a product that looks different from the photo or a size chart that misleads, lead to doorstep refusals that no message can fully prevent.

    What an RTO really costs

    Sellers often count only the return freight. Add everything up and each RTO costs far more than it seems.

    • Forward freight, already paid.
    • Return freight, charged when the parcel comes back. Shiprocket says the seller covers the return cost, and that “heavier items and farther zones mean higher RTO charges”.
    • Packaging and labour, spent twice: once to pack it, once to inspect and restock it.
    • Damaged or unsellable stock. Some parcels come back crushed, opened or past their season.
    • Blocked inventory. A parcel in transit for a week or two is stock you can’t sell to someone who wants it.
    • Lost margin on the sale you didn’t make, and the ad spend that brought the buyer in.

    On COD orders, aggregators usually reverse the COD collection charge (Shiprocket’s passbook lists “COD Charge Reversed”). That’s a small offset, not a refund of the freight.

    A worked example

    Here’s a simple way to size the problem. The rates below are assumptions for illustration. Replace them with your own rate card.

    ItemAssumption
    COD orders shipped per month2,000
    RTO rate on COD25% (close to Shipway’s national figure for non-prepaid orders)
    Forward plus return freight, packaging and handling per RTO₹150
    RTOs per month500
    Monthly cost of RTO₹75,000, before damaged stock and lost ad spend

    Now compare the cost of asking every COD buyer to confirm on WhatsApp. A COD confirmation is a utility template, which costs ₹0.1150 per delivered message in India on Meta’s rate card from 1 October 2026. For 2,000 orders that’s ₹230 in Meta charges. On ChatMitra’s Starter or Pro plan, add ₹0.20 per conversation, another ₹400. The total is about ₹630 a month, which is less than the cost of five RTOs. If confirmation, address checks and fast NDR handling save even a small share of those 500 parcels, the messages pay for themselves many times over.

    To estimate your own saving, don’t assume every cancelled order would have been an RTO. Some buyers who tap Cancel would have accepted the parcel anyway, and some who confirm will still refuse at the door. The fair comparison is the COD RTO rate for a month before you start against a month after, for orders shipped in each period, with the cost per RTO from your own rate card. Count the cancellations separately: each one is a parcel you didn’t pack, ship or bring back, and that’s where most of the saving shows up. Watch conversion too. A confirmation step, an advance payment or a COD limit can put off a few genuine buyers, and the goal is more delivered orders, not just fewer returned ones.

    How to measure your RTO rate

    The basic formula is simple:

    RTO rate = orders that ended as RTO ÷ orders shipped, for the same period

    Use orders shipped, not orders placed, so cancellations before dispatch don’t flatter the number. Count an order in the period it was shipped, and wait until the parcels from that period have resolved. RTOs trail dispatch by one to three weeks, so last week’s rate always looks better than it will be.

    Then split it. One blended number hides the fix.

    CutWhy it mattersWhat you might do
    Payment method (COD vs prepaid)Shipway’s FY25 data showed nearly 26% vs under 2%Push the COD share down, or protect COD with confirmation
    Pincode or cityShipway found city RTO ranging from 18% (Vadodara) to 35% (Patna)Restrict COD or require an advance in the worst pincodes
    CourierSome couriers attempt faster or handle NDRs better in some zonesAllocate by pincode performance, not just price
    Product and order valueIn Shipway’s data, orders of ₹500–1,000 had the highest RTO, at 28%Tighten checks for risky products and price bands
    Traffic sourceSome ad campaigns bring impulse buyersJudge campaigns on delivered revenue, not orders
    Customer historyRepeat refusers are a small group with outsized impactAsk repeat refusers to prepay

    Track four supporting numbers alongside it: the COD confirmation rate (share who tap Confirm), the NDR rate (share of shipments with at least one failed attempt), the NDR save rate (NDRs that end delivered) and first-attempt delivery (share delivered on the first try).

    Where WhatsApp fits: three checkpoints

    SMS gets ignored and phone calls from unknown numbers go unanswered. WhatsApp works for RTO because the buyer sees the store’s name, can reply with one tap, and can type an address or a question in their own words. That makes it good at the three moments that decide delivery.

    Infographic titled 4 Ways WhatsApp Automation Helps Reduce RTO: confirm orders instantly, share payment links for COD, send real-time delivery updates, and share product details and support, beside a phone showing an order confirmation with a Track Order button and a Pay Now message
    Four ways WhatsApp messages help a parcel get delivered: confirm, offer a payment link, update, and answer questions.

    Checkpoint 1: before dispatch

    This is where the biggest savings are, because cancelling costs nothing and a fixed address costs nothing.

    Confirm every COD order. Send a utility template within minutes of the order with the order number, the amount payable on delivery, the city and pincode, and buttons to confirm or cancel. The wording and button options are in our order confirmation message guide. The rules that matter here:

    • Hold unconfirmed orders. Decide how long, perhaps until the next dispatch cut-off, and what happens after: one reminder, then a call, then cancel. Apply the rule consistently. A confirmation step that doesn’t change what ships is just a nice message.
    • Treat Cancel as a win. Every cancel before dispatch is an RTO you didn’t pay for.
    • Keep offers out. A discount or “pay online and save” line turns the template into marketing, at ₹0.8631 instead of ₹0.1150 per message.

    Check the address. If the address looks thin (no house number, no landmark, or a pincode that doesn’t match the city), ask for the details before dispatch. For example:

    Hi {{name}}, we’re packing order {{order_number}} for {{city}} {{pincode}}. Your address looks incomplete. Please reply with your house or flat number, street and a nearby landmark so the courier can find you first time.

    In India, a newer option is DIGIPIN, the Department of Posts’ digital address code. The government describes it as “an open-source, interoperable, geo-coded, grid-based digital address system” developed with IIT Hyderabad and NRSC, ISRO. It gives each roughly 4 m × 4 m square a 10-character code, and India Post says your postal address stays the same. It launched publicly in May 2025. If you ship to rural or hard-to-find addresses, ask your courier whether it accepts DIGIPIN, and consider asking buyers in those areas for one alongside the normal address.

    Ask for an advance where risk is high. Partial COD collects a small part of the order online and the rest at the door. You don’t have to apply it everywhere. Use it for the pincodes, price bands or first-time buyers where your data shows the worst RTO. A plain request to pay for the customer’s own order can go as a utility template. Adding “and get free shipping” makes it marketing. Our payment link guide has wording for both.

    Checkpoint 2: shipping and delivery day

    Once the parcel is moving, the goal is simple: make sure the buyer expects it, is available and has the payment ready.

    • Shipped, with tracking. A shipping confirmation with a tracking button lets the buyer plan. It also reminds them the parcel exists, which matters when delivery takes a week.
    • Delay notice. If the parcel is stuck, say so before the buyer asks, with a new estimate. Silence invites cancellation at the door.
    • Out for delivery. The single most useful RTO message: the parcel arrives today, the exact COD amount, and a note that the delivery partner may call from an unknown number. For example:

    Order {{order_number}} is out for delivery today. Please keep {{cod_amount}} ready. The delivery partner may call from an unknown number, so please keep your phone nearby. Not at home today? Tap Reschedule.

    “Out for delivery” depends on your courier’s tracking events. If your WhatsApp tool doesn’t receive them (see where ChatMitra fits below), send this from your shipping platform or through an API.

    Checkpoint 3: after a failed attempt

    The NDR window is where speed wins. The buyer usually still wants the parcel; they were out, their phone was off, or the courier couldn’t find the house. A message within hours, instead of a courier call they miss again, gives them an easy way to fix it:

    We tried to deliver order {{order_number}} today but couldn’t reach you ({{ndr_reason}}). When should we try again? Tap a day below, or reply with a corrected address and landmark.

    Give buttons for the next two or three days, plus “Update address” and “Cancel order”. Then update the courier or aggregator panel straight away. A reattempt request that sits in the inbox until tomorrow has missed the point. If the reply is a refusal, cancel cleanly and ask one short question about why. That answer is the most useful RTO data you’ll get.

    Handling NDRs by reason

    Couriers attach a reason to each failed attempt. The wording varies by courier, but most reasons fall into a handful of types, and each needs a slightly different message and action. A generic “we missed you” works less well than a reply that shows you read the reason.

    “Customer not available” or “door locked.” The buyer wanted the parcel but wasn’t there. Offer a choice of days rather than asking an open question, and ask whether someone else, such as a neighbour, family member or security desk, can accept it. If they pick a day, request the reattempt for that date in your courier panel, not just “reattempt”.

    “Customer not reachable” or “phone switched off.” The courier couldn’t call. WhatsApp often reaches the buyer when a call doesn’t, because the message waits until they’re back online. Ask them to confirm the best number for the delivery partner, and update the phone number on the shipment if they give a new one.

    “Address incomplete” or “address not found.” Ask for the missing piece specifically: flat or house number, building name, street, landmark. A shared location pin helps too. WhatsApp lets customers send their location in the chat, and the delivery partner can use it even when the written address is vague. Pass the corrected address to the courier the same day.

    “Cash not ready” or “customer wants to pay online.” The buyer is willing but wasn’t prepared. Restate the exact amount, suggest a reattempt date, and if you can collect payment online before the next attempt, offer that too. Some buyers prefer paying in advance once they know the parcel is real.

    “Customer refused.” Don’t argue. Ask one neutral question (“Could you tell us what went wrong, so we can fix it?”) with a few quick-reply options: ordered by mistake, found it cheaper, took too long, wanted to open the parcel first, something else. Then let the parcel return. The pattern across a month of answers tells you whether the fix is confirmation, speed, product pages or pricing.

    “Out of delivery area” or “ODA.” This isn’t the buyer’s fault. It usually means the pincode is outside the courier’s regular network. Tell the buyer honestly, offer pickup from a nearby hub if the courier supports it, and add the pincode to your serviceability rules so the next order routes to a courier that covers it.

    When the courier, not the buyer, is the problem

    Not every NDR is accurate. Sellers regularly see “customer not available” or “customer refused” on parcels where the buyer says nobody came to the door. The WhatsApp thread helps here in two ways.

    First, it gives you evidence. A buyer’s reply saying “I was home all day and nobody called” arrives with a timestamp in your inbox. That’s a far stronger basis for a complaint to your courier or aggregator than a phone call nobody recorded.

    Second, it shows you patterns. Tag these replies (for example “disputed NDR”) and review them weekly by courier and pincode. If one courier’s “not available” reasons are disputed far more often than another’s in the same area, that’s a reason to move volume, whatever the per-parcel price.

    Keep the tone with the buyer neutral. Apologise for the inconvenience, arrange the reattempt, and handle the courier dispute separately. The customer doesn’t need to hear about it.

    A daily routine for your team

    RTO reduction fails most often because nobody owns it. A simple routine makes it someone’s job:

    • Morning: review orders that haven’t confirmed since yesterday. Send the one reminder your rule allows, then call or cancel the rest before the dispatch cut-off.
    • Before dispatch: check that every COD order being packed is confirmed and has a complete address. Release the Shopify holds for those that are.
    • Midday and late afternoon: pull the day’s NDRs from the courier panel, message each buyer, and update the panel as replies arrive. Aim to act on every NDR within 24 hours, which is what Shiprocket asks sellers to do.
    • End of day: tag refusals and disputed NDRs with a reason so the weekly review has data.
    • Weekly: look at RTO by segment for orders shipped two to three weeks ago, and pick one thing to change.

    In a small store this is one person’s hour a day. In a larger one, split it: one person owns confirmations, another owns NDRs. Either way, quick replies for the ten messages you send most often keep it fast and consistent.

    Levers beyond WhatsApp

    Messages work best alongside a few operational choices. These are the ones that move RTO most.

    LeverHow it helpsTrade-off
    Restrict COD by pincodeRemoves COD where RTO is worstLost orders in those areas; review quarterly
    COD limit by order valueCaps exposure on expensive, high-risk ordersSome buyers won’t prepay above the limit
    Partial CODAdvance payment filters out low-intent ordersConversion drops. Test on risky segments first
    Prepaid incentiveShifts buyers to the payment method with the lowest RTOMargin cost, and marketing category on WhatsApp
    Transparent COD feeDiscourages casual COD ordersMust be shown before checkout, never sprung at the door
    Faster dispatchShipway’s data ties slower attempts to more RTOWarehouse cut-offs and courier choice
    Courier allocation by zoneUses the courier that delivers best in each pincodeNeeds your own data by courier
    Better product pagesFewer “not what I expected” refusalsPhotos, size charts and honest descriptions take work
    Shopify fulfilment holds and tagsUnconfirmed orders physically can’t shipYour team must release holds promptly

    On that last row: Shopify lets you mark an order “on hold” so its fulfilment waits, and its Flow reference notes that “Orders with the On hold status aren’t fulfilled until the status is removed.” Pair a hold on every new COD order with a release on confirmation, and your warehouse can’t ship an unconfirmed parcel by accident.

    A caution on blocking customers. Refusing COD to a buyer who refused before is reasonable. Keep the rule factual (past refusals, not guesses about who someone is), apply it consistently, and offer prepaid instead of shutting the door.

    A 30-day plan to cut RTO

    1. Week 1: measure. Pull the last 90 days of shipped orders. Calculate RTO by payment method, pincode, courier, product and order value. Pick the three worst segments.
    2. Week 1: fix the basics. Make the checkout address form ask for house number, street, landmark and pincode as separate fields. Collect WhatsApp opt-in for order updates at checkout (our opt-in guide explains what counts).
    3. Week 2: switch on COD confirmation. Get a utility template approved, send it on every COD order, hold unconfirmed orders until your cut-off, and agree what the team does with each reply.
    4. Week 2: add the address check for orders with incomplete addresses.
    5. Week 3: add delivery-day messages, starting with out-for-delivery, and set up a same-day routine for NDRs: message, reply, update the courier panel.
    6. Week 3: try one policy lever on your worst segment, such as partial COD for one pincode cluster or a COD limit above a price band.
    7. Week 4: compare. Look at RTO for orders shipped in weeks 2–3 against the same weeks last month, by segment. Keep what worked; drop what cost more than it saved.

    Setting it up with ChatMitra

    ChatMitra connects to Shopify and sends your approved templates on store events. Here’s what it covers for RTO, checked against the product’s code:

    Infographic titled Complete Shopify Customer Journey on WhatsApp with ChatMitra, showing three flows: an abandoned cart flow with a cart reminder, a COD flow with a Confirm Order and Pay Now message, and an order update flow with an on-the-way message and Track Order button
    An example of a Shopify customer journey on WhatsApp. The table below lists what ChatMitra handles today.
    RTO stepChatMitraDetail
    COD confirmation on new ordersYesSent when the order’s payment method is Shopify’s “Cash on Delivery (COD)”. A COD app that uses another payment-method name won’t trigger it
    Delay before sendingYes1, 10, 20 or 30 minutes, or 1, 6 or 24 hours after the event
    Address in the messageYesShipping address and order details are available as template variables
    Shipped with trackingYesThe order-fulfilled message can carry the first shipment’s tracking link
    Replies handledIn the shared inboxButton taps and typed addresses arrive in the team inbox. Your team tags, holds, releases or cancels the order in Shopify. Replies don’t write back to Shopify automatically
    Out for delivery, NDR, RTO eventsNoThere are no courier tracking events. Send these from your shipping tool, or through ChatMitra’s REST API (a Pro plan feature) if a developer connects your courier’s webhooks
    Other store platformsThrough the APINo ready-made WooCommerce connector
    Infographic titled From WhatsApp to Shopify, Automatically: a customer messages a store on WhatsApp to order white sneakers, ChatMitra extracts the order details and verifies intent, and a Shopify order is created with the customer details and shipping address
    An illustration of an order moving from a WhatsApp chat into Shopify. See the table above for the steps ChatMitra covers today.

    Two settings help on the inbox side. Build quick replies for the answers your team sends every day (“Address updated, thank you”, “We’ve asked the courier to try again tomorrow”). And when a customer answers the address question in free text, that reply opens a 24-hour window, so your acknowledgement is a service message rather than another template.

    For the full store-side picture, including catalogues, cart recovery and cost per order, see WhatsApp for ecommerce. To connect a store, start with the Shopify integration.

    Mistakes that keep RTO high

    1. Confirming but shipping anyway. If unconfirmed orders ship on schedule, the message only tells you which parcels will come back.
    2. Mixing an offer into the confirmation. It becomes a marketing template, costs 7.5 times more in India, and WhatsApp’s opt-in guidance suggests a separate opt-in for marketing messages.
    3. Measuring too early. RTOs land weeks after dispatch. Judge last month, not last week.
    4. Letting NDRs wait. A failed attempt answered tomorrow often becomes an RTO.
    5. Blaming customers for address problems your checkout created. One free-text address box invites incomplete addresses.
    6. Treating all COD the same. A repeat buyer in a low-RTO city and a first-time buyer in a high-RTO pincode need different rules.
    7. Hiding the COD fee until the door. Surprises at delivery are refusals waiting to happen.

    Beyond India: COD markets elsewhere

    RTO is an Indian term, but the problem exists wherever buyers pay at the door. Worldpay’s Global Payments Report 2026 (payments-industry research, measured by share of online spending) found that “Southeast Asian markets have the highest rates of cash on delivery globally”. COD made up 23% of ecommerce value in the Philippines, 16% in Vietnam and 15% in Thailand in 2025, against 1.6% worldwide. The same three checkpoints apply there, using the local template languages and rates.

    India is shifting too. Worldpay estimates payment on delivery at about 6% of India’s 2025 online payment value, with digital wallets, driven by UPI, at 68%. Estimates of COD’s share of orders run much higher. The Centre for Social and Economic Progress’s 2026 e-commerce report gives 30–40% of orders in one section and almost 50% in another. For most D2C stores, COD will be part of the mix for years, so it’s better to manage it well than to wish it away.

    Summary

    RTO is expensive because you pay for two journeys and get no sale. Most of it comes from low-intent COD orders, weak addresses and buyers who can’t be reached, all problems that show up before or during delivery. Confirm COD orders and hold the unconfirmed ones, fix addresses before dispatch, prepare buyers on delivery day, and answer NDRs the same day. Measure by segment so you know which of those steps is paying off. Then add policy levers such as partial COD and pincode rules where the data says they’re needed.

    Sources: Shiprocket support: What is RTO, What is NDR, delivery attempts, NDR process time, who pays for RTO, passbook charges. Delhivery help: Courier return / RTO. Shipway ShipNotes FY25, as reported by MediaBrief (29 July 2025). Press Information Bureau: Launch of Know Your DIGIPIN (27 May 2025); India Post DIGIPIN FAQ. Shopify Help Center: manual payments, holding fulfillments, Flow: hold fulfillment. Worldpay Global Payments Report 2026. CSEP India E-Commerce Report 2026. Meta for Developers: pricing and template categorization. Facts checked 28 September 2026. Rupee message prices are Meta's India rates from 1 October 2026 and ChatMitra's published platform fee.

    Clear answers

    Frequently Asked Questions

    RTO stands for return to origin. It is an order the courier could not deliver, for example because the buyer refused it, wasn't reachable or gave a wrong address, so the parcel is sent back to the seller's warehouse. It is different from a customer return, where the buyer received the product and sends it back.

    It means the courier has stopped trying to deliver and is returning the parcel to the sender. Tracking usually shows stages such as RTO initiated, RTO in transit and RTO delivered, the last meaning the parcel is back with the seller. Before that, a failed attempt is normally reported as an NDR (non-delivery report).

    Usually the seller. Shiprocket's support pages, for example, say the seller covers the return cost and that heavier items and farther zones cost more. For cash-on-delivery orders the COD charge is typically reversed, but the forward and return freight, packaging and handling are lost. Check your own courier or aggregator's rate card.

    There is no official benchmark, and rates vary by category, city and payment mix. Shipway's FY25 analysis of D2C shipments found nearly 26% of non-prepaid orders returned against under 2% of prepaid orders. Measure your COD and prepaid RTO rates separately and aim to beat your own previous quarter.

    By reaching the buyer at the moments that decide delivery: a COD confirmation and address check before dispatch, a delivery-day message so the buyer is available with payment ready, and a fast message after a failed attempt so they can choose a reattempt date or fix the address. It works because buyers read WhatsApp and can reply with one tap.

    Partial COD asks the buyer to pay a small part of the order value online at checkout and the rest in cash on delivery. The advance filters out buyers who aren't serious and gives them a reason to accept the parcel. The trade-off is some lost conversions, so test it on high-risk pincodes or order values first.

    Utility, as long as it only confirms the customer's own order: order number, amount, address and Confirm or Cancel buttons. Adding a discount for paying online, a coupon or product suggestions makes Meta treat the template as marketing, which costs ₹0.8631 instead of ₹0.1150 per message in India.

    An NDR (non-delivery report) is raised after a failed delivery attempt, while the parcel can still be saved. RTO is what happens when attempts run out or the order is cancelled, and the parcel heads back to you. Acting on NDRs quickly, ideally within 24 hours, is how you stop them becoming RTOs.

    Nirav Chauhan

    ChatMitra

    Nirav Chauhan writes for the ChatMitra blog about the WhatsApp Business API.

    Ready to try WhatsApp Business API?

    Start free on the Starter plan — free subscription. Pro is ₹999/month with a 15-day trial when you need automation.