Skip to content

RTO Reduction SOP: The Step-by-Step Operating Procedure (2026)

By Ravikant Tyagi · 10 min read

This is not another article about why RTO hurts. This is the procedure: the checklist your team runs daily, the exact words your confirmation message uses, the pin-code table that decides when COD gets switched off, and the Monday ritual that keeps the number honest. Print it. Hand it to whoever packs your orders.

For the reasoning, the ₹ math and the causes behind these steps, read the full RTO reduction playbook first. This page is the how, built from the operations chair by Ravikant Tyagi, Distribution Head at Eureka Forbes and Supply Chain and Operations Leader at Atomberg.

Executive summary

Seven SOPs, run in order of the parcel's journey. Scrub the address before dispatch. Confirm every COD order by WhatsApp then one IVR call, 2-attempt rule, then hold or cancel. Force prepaid above your value ceiling and in red pin codes. Nudge prepaid at checkout and after the order with UPI-first and a sized token. Clear every NDR inside 24 hours with a named owner. Pick the lower-RTO courier per zone, not the cheapest. Review five numbers every Monday against fixed thresholds. Shipway's FY25 data puts COD RTO at 26 percent against under 2 percent for prepaid, so most of this SOP is really one instruction: stop shipping unverified cash orders to risky pin codes.

FindValidateUnit EconomicsFulfilmentScale

SOP 1 · Pre-dispatch address scrub

Run this on every order before a label is printed. If a field fails, the order is flagged, not shipped.

#Field to checkAuto-flag ruleAction if flagged
1Pin codeNot 6 digits, or not in courier serviceability listHold. Re-confirm pin on WhatsApp before dispatch
2Phone numberNot 10 digits, starts below 6, or repeated digits (9999999999)Hold. Request alternate number
3Address lengthUnder 15 characters, or no house or flat numberHold. Ask for full address line
4LandmarkBlank (treat as compulsory in India)Request a landmark by WhatsApp
5City or state vs pinCity does not match the pin code masterAuto-correct city and state from pin
6Duplicate orderSame phone or address ordered in last 24hCall once to confirm it is not a mis-tap

A flagged address costs one WhatsApp message to fix before dispatch, or roughly ₹150 in two-way freight to discover after.

SOP 2 · COD confirmation, script and timing

Every COD order gets confirmed before it ships. Two channels, two attempts, then a decision. Use these exact messages.

Step 1 · WhatsApp, within 1 hour of order

"Hi [Name], this is [Brand]. Confirming your order for [Product], COD ₹[Amount], to [short address]. Reply YES to confirm and we ship today. Reply NO to cancel. The rider also accepts UPI at the door."

Step 2 · IVR or human call, if no reply in 6 hours

"Hello, calling from [Brand] about your order for [Product], cash on delivery ₹[Amount]. Press 1 to confirm, press 2 to cancel. To confirm on WhatsApp, reply YES to our message."

AttemptChannelTimingIf no response
1WhatsApp with YES or NO buttonsWithin 1 hour of orderWait 6 working hours, go to attempt 2
2IVR or human call6 to 24 hours after orderHold order, do not ship
CutoffAuto-cancel or force-prepaid link48 hours, no confirmationCancel COD, send prepaid link instead

The rule is non-negotiable: an unconfirmed COD order does not ship. Hold it 48 hours, then cancel or convert to prepaid. Shipping unverified cash to a stranger is a ₹340 donation to your courier.

SOP 3 · Force-prepaid and confirmation-gate table

Two triggers decide the gate: order value and pin-code risk. Build the pin-code buckets after 60 to 90 days of your own orders (RTO per pin, sorted). Until then, use a courier risk score. Then apply this table exactly.

ConditionGreen pin (RTO under 15%)Amber pin (15 to 30%)Red pin (over 30%)
Order under ₹700COD allowed, confirm by WhatsAppWhatsApp + IVR confirmPrepaid only
₹700 to ₹1,500WhatsApp confirmPartial prepaid token ₹50 to ₹100Prepaid only
Over ₹1,500Partial token or WhatsApp confirmPrepaid onlyPrepaid only
First-time buyer over ₹2,000Partial tokenPrepaid onlyPrepaid only
Phone with 2 past refusalsPrepaid onlyPrepaid onlyPrepaid only

Red pin codes are real and named. Shipway's FY25 report puts Patna at 35 percent RTO and Vadodara at 18 percent, so your own map will look similar. Reference cities and the full risk logic sit in the COD vs prepaid strategy guide.

SOP 4 · Prepaid nudge sequence

Every COD order you convert to prepaid before dispatch removes the entire RTO risk on that order. Run this sequence.

StageNudgeMechanics
Checkout, payment pageUPI intent on top, COD last behind one extra tapMake prepaid the path of least resistance
Checkout incentiveFlat ₹50 or 5% off for paying onlineSize the discount below your COD penalty (about ₹70)
Checkout, high valuePartial prepaid token ₹50 to ₹100 on CODBalance payable at door; refusals collapse on token-paid orders
Post-order, 0 to 2 hoursWhatsApp payment link: "Pay now, skip the doorstep cash hunt"Optional sweetener: priority dispatch
Post-order, high valueManual call offering prepaid + small discountOnly on orders above 2x your median AOV

Sizing rule: if COD costs about ₹70 more per order, any spend up to ₹60 converting it to prepaid is profit. On sub-₹1,000 orders a flat ₹50 beats a percentage because it reads bigger.

SOP 5 · NDR first response, the 24-hour rule

An NDR is a failed delivery attempt waiting in the courier hub; it converts to RTO in 24 to 72 hours if nobody acts. Shipway's data shows deliveries dragged beyond 5 days hit 35 percent RTO versus 22 percent for 1 to 2 day deliveries, so speed is the whole game. One named owner clears the queue every morning.

SOP Preview · NDR First Response

Within 4 working hours of any NDR: auto-WhatsApp the customer with three buttons, Reattempt tomorrow, Update address, Cancel. No reply in 4 hours, call from your own number: "Your [Product] is with the courier in [City] and came back undelivered. I want it reaching you tomorrow." Read the address back line by line, confirm the time window, state the COD amount and that the rider accepts UPI. Update the corrected address in the courier panel before triggering the reattempt, never in your chat alone. Escalate any parcel on its second failed attempt to a human daily before the auto-RTO timer fires. Confirmed refusal, mark RTO today; stop spending attempts on a dead order.

Source Scratch to ₹5 Lac/month · Phase Fulfilment · SOP NDR First Response

Who does what: the ops owner clears the panel and calls; the founder sees only the count of NDRs older than 24 hours in the Monday review. Deeper decoding of courier remarks and fake-attempt disputes lives in the NDR management guide.

SOP 6 · Courier lane selection by zone

Do not pick the cheapest courier. Pick the one with the lower RTO in that zone. The ₹8 you save on freight vanishes the first time weak coverage triggers one extra return.

StepActionThreshold
1Pull delivery success rate per courier per zone, monthlyNeed 30+ shipments per courier per zone to trust it
2Rank couriers within each zone by success rate, not priceIgnore price gaps under ₹15
3Set allocation rules: best courier as default per zoneEvery aggregator supports rule-based routing
4Route high-value orders to your most reliable courierOver ₹1,500 or fragile
5Move volume away from any courier faking attempts in a zoneFake-attempt rate 2x the zone average

This is free money in a settings screen. Aggregator coverage and remittance differences are compared in Shiprocket vs NimbusPost vs Delhivery.

SOP 7 · The weekly RTO review ritual

Ten minutes, one sheet, every Monday. Same owner, same numbers, same thresholds. This ritual keeps every SOP above honest.

MetricHow to pull itThresholdOwner
COD RTO rateCOD RTO shipments ÷ COD shipped, last 7 daysAct if over 25%; freeze ad scaling if over 30%Founder
Confirmation rateCOD orders confirmed ÷ COD orders placedUnder 70% means the script or timing is brokenOps owner
NDR save rateRescued orders ÷ NDRs flaggedTarget 30%+; below 20% means slow responseOps owner
Worst 10 pin codesRTO per pin, sorted, last 60 daysAny pin over 30% moves to prepaid-onlyOps owner
Worst courier per zoneSuccess rate per courier per zoneReallocate if 10 points below the zone bestFounder

What one saved RTO is worth

Run the Margin Waterfall™ on a ₹599 COD order to size the prize. Each RTO you prevent is not a saved sale, it is a saved loss plus a captured contribution.

Operator Framework

Margin Waterfall™: selling price minus COGS, packaging, shipping, COD fee, RTO loss, then CAC. Each prevented RTO stops a ₹340 cash burn (two-way freight, dead packaging, repack, the CAC already spent), and if the order now delivers it adds back roughly ₹124 of contribution. So one rescued order swings your P&L by close to ₹460, not ₹599. At 500 COD orders a month, cutting RTO from 30 to 20 percent prevents 50 returns, worth about ₹17,000 a month before the recovered contribution.

Source Scratch to ₹5 Lac/month · Phase Unit Economics · Framework Margin Waterfall™ · Created by Ravikant Tyagi, 2026
Founder Mistake

A founder writes all seven SOPs, prints them, then runs them only when the RTO report looks ugly. Confirmation calls happen some days, not others. The NDR panel gets cleared twice a week. Within a month the number drifts back to 30 percent, and he concludes "SOPs do not work." They do. He never ran them. An SOP skipped on a busy day is not an SOP, it is a suggestion, and RTO is a daily counter that only rewards a daily habit. Assign one named owner with a fixed 4-hour NDR SLA and a Monday review, or do not bother printing the sheet.

Operator Note · Ravikant Tyagi

The teams that beat RTO were never the ones with the fanciest tool. They were the ones where the same person cleared the same panel at the same time every morning, before anything else. I have watched a 90-minute daily NDR-calling habit recover more cash than a quarter of ad optimization. Systems beat willpower, so turn these SOPs into calendar events with an owner's name on them. What gets scheduled gets done; what gets remembered gets skipped.

Execution checklist

Execution Checklist
  • Turn on the 6-field address scrub at checkout: pin, phone, address length, landmark, city-pin match, duplicate flag.
  • Set the COD confirmation flow: WhatsApp in 1 hour, IVR at 6 hours, hold at 48 hours. Unconfirmed orders do not ship.
  • Build your pin-code ledger after 60 to 90 days and enforce the force-prepaid table by value and risk.
  • Put UPI first at checkout, COD last, with a flat ₹50 prepaid nudge and a token on high-value COD.
  • Assign one named owner to clear every NDR within 4 working hours, daily.
  • Pull courier success rate per zone monthly and set allocation rules by reliability, not price.
  • Run the 5-metric Monday review with fixed thresholds and named owners.
  • Add an RTO provision line to your unit economics at your real rate, not a hopeful one.

Your next action today

Pick SOP 1 and SOP 2 and turn them on before you close your laptop: the address scrub and the COD confirmation message. Those two stop the most orders from ever becoming RTO, and both are live in under an hour. Assign the NDR owner tomorrow morning. Do not wait to build all seven; a business running two SOPs today beats one planning seven for next month.

If you'd like the complete execution system, calculators, SOPs, templates and operating frameworks behind this process, continue inside D2C Acquisition.Lab.

About the author
Ravikant Tyagi, Founder of D2C Acquisition.Lab
Founder, D2C Acquisition.Lab
  • Former Distribution Head at Eureka Forbes (₹3,500 crore consumer business).
  • Former Supply Chain & Operations Leader at Atomberg Technologies during its growth from ₹400 crore to ₹1,200 crore.
  • Creator of the Scratch to ₹5 Lac/month Operating System. Fractional COO to funded consumer startups.
D2C OperationsUnit EconomicsProduct ValidationSupply ChainEcommerce LogisticsFounder Execution Systems

Want the whole system, not just the theory?

Scratch to ₹5 Lac/month: 9 live calculators (margin, RTO, break-even), 50+ SOPs, and a 90-day plan built for Indian D2C.

₹1,999₹4,99960% off
Start building today
  • One-time payment
  • No recurring fees
  • Instant access

FAQ

Common questions

Send WhatsApp within an hour: "Confirming your order for [Product], COD ₹[Amount], to [address]. Reply YES to ship today, NO to cancel. Rider accepts UPI at the door." If no reply in 6 hours, call or fire an IVR: "Press 1 to confirm, 2 to cancel." Two attempts, then hold the order at 48 hours and either cancel or send a prepaid link. The rule is simple: an unconfirmed COD order never ships.

Force prepaid in three cases: any pin code where your 60 to 90 day RTO exceeds 30 percent, orders above ₹1,500 in medium-risk pin codes, and first-time buyers ordering above ₹2,000. Also block COD for any phone number with two past refusals. Everywhere else keep COD on, but gate it behind WhatsApp confirmation or a ₹50 to ₹100 partial prepaid token depending on order value and pin-code risk.

An NDR is a failed delivery attempt sitting in the courier hub; it converts to RTO in 24 to 72 hours if nobody acts. The 24-hour rule means a named owner clears every NDR within roughly 4 working hours, and never lets one sit past 24. Auto-WhatsApp the buyer with reattempt, update-address and cancel buttons, then call within 4 hours, fix the address in the courier panel, and trigger the reattempt. Speed decides your save rate.

Rank couriers by delivery success rate per zone, not by price, using at least 30 shipments per courier per zone before you trust the number. Set your aggregator's allocation rules so the highest-success courier is the default in each zone, route high-value or fragile orders to your most reliable option, and move volume away from any courier faking delivery attempts at twice the zone average. The ₹8 saved on cheap freight is lost on one extra return.

Shipway's FY25 data puts the average COD RTO at about 26 percent, against under 2 percent for prepaid. A brand running address scrubbing, COD confirmation, pin-code rules and daily NDR follow-up should target under 15 percent on COD. Below roughly 10 to 12 percent, tightening COD further usually rejects more genuine orders than it saves, so shift focus to growing prepaid share and lowering CAC instead.

Five numbers, every Monday, ten minutes: COD RTO rate for the last 7 days, COD confirmation rate, NDR save rate, your worst 10 pin codes by RTO, and worst courier per zone. Fixed thresholds trigger action: freeze ad scaling if RTO tops 30 percent, fix the script if confirmation falls below 70 percent, move any pin over 30 percent to prepaid-only, and reallocate any courier 10 points below the zone best.