An NDR is not a status update. It is the courier telling you, “we could not deliver this; tell us what to do before we send it back.” How fast and how specifically you answer decides whether the parcel reaches the customer or comes home as an RTO.
This playbook goes reason by reason: what each failed-delivery reason usually means, what to say on the follow-up call, and what to do in Shiprocket or your courier panel. It is written for Indian D2C brands shipping a meaningful share of Cash on Delivery orders.
NDR (Non-Delivery Report): a failed delivery attempt that can still be recovered, if someone fixes what the courier needs and asks for a reattempt.
RTO (Return to Origin): what an NDR becomes when nobody saves it: the parcel travels back to your warehouse, and you pay for both trips.
01Why NDR management is a race
Couriers don't try forever. As reported by Shiprocket's support documentation, most courier partners make a maximum of three delivery attempts before marking an order RTO, and a few mark it RTO after the first attempt; the exact number depends on the courier and the NDR reason (Shiprocket support).
So every NDR comes with a short, unknown clock. The brands that recover the most treat the NDR queue like a support inbox with a deadline: every new NDR gets a human or an AI call the same day, and every reattempt request carries the specific thing the courier needs, not just “please reattempt”.
What each RTO costs you depends on your shipping rates and product; you can put your own numbers into the RTO calculator, and the COD & RTO benchmarks page collects the published figures for India.
02The playbook: every NDR reason, what to say, what to do
The reason the courier gives is a starting point, not a verdict. Your call is where you find out what actually happened.
| NDR reason | What to say on the follow-up call | What to do in Shiprocket / the courier panel |
|---|---|---|
| Customer not available / not at home | “Namaste! Kal aapka parcel deliver nahi ho paaya. Kis din aur kis time aap ghar par honge?” | Reattempt with the date the customer gave. If they will be away, pick the first day they are back from the reattempt calendar. |
| Address incomplete or incorrect | “Courier ko address poora nahi mila. Aap flat number, gali aur paas ka koi landmark bata dijiye.” | Reattempt with the corrected address and a landmark. Read the new address back to the customer before you submit it. |
| Phone unreachable / not contactable | (On the alternate number, or after a missed call) “Delivery ke liye aapka koi doosra number hai jo courier call kar sake?” | Reattempt with an active number. If no number works after your cadence, stop and let it go RTO rather than paying for blind reattempts. |
| Rescheduled by customer | “Aapne delivery aage karwayi thi. Kaunsa din theek rahega?” | Reattempt with the specific future date the customer chose. |
| Customer refused the parcel | “Aapne parcel lene se mana kiya. Koi dikkat thi? Agar order nahi chahiye to hum cancel kar dete hain.” | Ask once why. If they don't want it, choose RTO immediately: every extra attempt on a refusal is shipping you won't recover. |
| Courier marked “attempted”, but nobody came | “Kya kal koi delivery ke liye aaya tha? Aapke paas courier ka call ya message aaya tha?” | If the customer says nobody came, report a fake attempt with the call recording (or a WhatsApp/SMS where they ask for delivery) as proof, and request the reattempt. |
Lines are short on purpose: one question, then listen. Shiprocket's NDR screen lets you reattempt with an updated address, contact number or a specific delivery date, report a fake attempt, contact the buyer, or send the order back (Shiprocket support).
03The follow-up call, done properly
Open with the parcel, not the problem
“Namaste, main [brand] se bol rahi hoon. Aapka [product] ka parcel kal deliver nahi ho paaya.” The customer should know in one sentence who is calling and why. Then ask the one question that fixes the reason: a day, a landmark, a working number.
Read back anything the courier will use
Addresses and phone numbers are where a fixed NDR fails again. Repeat them back as a question — “Naya address: Flat 302, Sector 15, Gurugram, sahi hai?” — before you submit. A misheard sector number is a second failed attempt.
Ask once whether they still want it
“Kya aap chahenge ki courier ise dobara deliver kare?” A clear no is useful: choose RTO now instead of paying for attempts that will be refused. If you are not sure the customer ever placed the order, say so and cancel; for the pre-dispatch version of this conversation see the COD confirmation call script.
04Retry cadence: when to call, when to message, when to stop
- Call first, the same day the NDR arrives. A conversation fixes an address or a date in one go; a message usually needs a back-and-forth.
- If there's no answer, send a WhatsApp or SMS with what you need (“Reply with a delivery day or a landmark”), so the customer can reply when they're free.
- Call once more, at a different time of day (morning if you called in the evening).
- Then decide, don't drift. If nobody reached by then, or the customer refused, choose RTO yourself instead of letting blind reattempts run out the courier's attempts.
This is the same pattern as unanswered pre-delivery calls; the customer not answering the delivery call guide covers that side in depth.
05Reduce NDRs before they happen
- Confirm COD orders on a call before dispatch. Many NDRs (refusals, fake orders, wrong addresses) are visible the moment someone actually talks to the customer.
- Collect a landmark and an alternate number at checkout, and pass them to the courier.
- Track NDR reasons by pin code and courier. If one courier's “customer not available” NDRs are mostly disputed by customers, that is a courier problem, not a customer one.
06How Callfox handles NDRs
Callfox connects to Shiprocket and calls the customer after a failed delivery, in Hindi, Hinglish or English. On the call it finds out whether they still want the parcel and captures what the courier needs: a re-delivery date, an address note or landmark, or an alternate phone number. The decision goes back to the courier where its API allows, and every call has a recording and transcript in your dashboard. Calls cost ₹6.40–6.87 per started minute, and new stores get 30 free minutes.
07NDR questions brands ask
What is NDR in ecommerce?
NDR (Non-Delivery Report) is the courier's notice that a delivery attempt failed. The order is still recoverable: the brand can ask for a reattempt with a corrected address, phone or date, or send it back.
What is the difference between NDR and RTO?
An NDR is a failed delivery attempt that can still be saved. RTO (Return to Origin) is what it becomes when the brand chooses to send it back or the courier's attempts run out, and the parcel travels back to the warehouse at the brand's cost.
How many delivery attempts does a courier make before RTO?
As reported by Shiprocket's support documentation, most courier partners make a maximum of three attempts before marking an order RTO, and a few mark RTO after the first attempt. The exact number depends on the courier and the NDR reason.
How do I reduce NDR?
Prevent the causes before dispatch (confirm COD orders and the address on a call, collect a landmark and an alternate number), and when an NDR does come in, reach the customer quickly, fix what the courier needs, and request the reattempt with a date.
What proof does Shiprocket accept for a fake delivery attempt?
As described in Shiprocket's support documentation, a seller can raise a fake-attempt report with an audio recording of the buyer requesting a reattempt, or a screenshot of a WhatsApp or SMS message where the buyer asks for it.
Answer every NDR the same day.
Callfox calls your failed deliveries in Hindi, Hinglish or English, gets a real delivery day or address fix, and sends it on. 30 free minutes to start.