Back to Blog

COD address verification risk scoring

COD address verification and risk scoring means giving every cash-on-delivery order a simple point score from its address, the buyer's history and the order itself, then choosing an action for each score band before you ship. This guide builds a 100-point score you can run in a spreadsheet, shows how to calibrate it on past orders, and explains why blocking COD is often the wrong response.

S
ShopMate Team · Nov 04, 2026 · 30 mins read
COD address verification risk scoring

COD address verification and risk scoring means giving every cash-on-delivery order a simple point score from its address, the buyer's history and the order itself, then choosing an action for each score band before you ship. This guide builds a 100-point score you can run in a spreadsheet, shows how to calibrate it on past orders, and explains why blocking COD is often the wrong response.

It is for small stores that ship COD and cannot afford a paid prediction service. The score is a screening aid, not a verdict on any customer, and every weight here is an assumption to be replaced with your own data. We cover the failure modes the score targets, the factors and point values, bands, calibration, a backtest with worked arithmetic, precision and recall, break-even logic, message templates, fairness and privacy points, and a weekly routine. Sources were read on 14 October 2026.

Quick answer: For COD address verification and risk scoring, give each order points for weak address quality, invalid contact details, prior returns, risky order traits and weak delivery areas, subtract points for earlier successful deliveries, group the total into four bands, and attach an action to each band: ship, confirm, call or nudge to prepaid. Backtest the bands on past orders, and block COD only where the return rate exceeds your break-even rate.

What a COD score is for, and what it is not

Cash on delivery, described neutrally on Wikipedia's cash on delivery article, moves payment risk from the buyer to the seller. If the parcel is refused or cannot be delivered, the courier brings it back, and the seller has paid freight both ways. Shiprocket's support article on non-delivery reports describes how a courier flags an order it could not deliver and how the seller can retry or return it to origin.

A risk score tries to estimate, before dispatch, how likely an order is to fail. It does not identify fraud, it does not judge a person, and it will be wrong for some orders in both directions. A high score does not mean the buyer is dishonest; it means that orders with similar traits have failed more often in your own history. A low score does not guarantee delivery.

That framing matters for how you act on it. The action attached to a score should be proportionate and reversible: ask for confirmation, offer a prepaid option, or make a call. Refusing COD outright should be the last step, applied only where your data shows it pays. ShopMate's guides on RTO cost calculation, COD rules by cart value, category and pincode, and the decision to offer COD at all give the economic background; this guide supplies the per-order screen.

Where failed COD orders come from

A score is only useful if its factors match real failure causes. Shiprocket's article on processing an NDR (read on 14 October 2026) names three example reasons for a non-delivery report: the customer is not contactable, the address is wrong or incomplete, and the customer asked for future delivery. It states that courier partners make three delivery attempts before the order is marked RTO, and it lets the seller reattempt with a corrected address or number, contact the buyer by SMS link, missed call or a call from the panel, or send the order back. The article does not claim the list is complete, and other couriers have their own rules, so read the policy of each courier you use.

Two further causes never appear in an address check: the buyer changes their mind, and the buyer is simply not at home with cash. A score cannot see intent, but it can see the traces that correlate with it. The table links each cause to the factor group in this guide.

Failure causeWhat it looks like in your dataFactor group that can catch itCheapest fix
Address wrong or incompletePIN and city disagree, no house number, no landmarkAddress qualityAsk the buyer to correct it before dispatch
Buyer not contactableInvalid or unreachable number, one number reused across many namesContact detailsOTP or message confirmation at order time
Buyer refused on deliveryEarlier refusals on the same phone or addressHistoryPrepaid offer or confirmation call
Impulse or "try and return" orderSeveral sizes of one item, heavy discount, high valueOrder traitsConfirmation message, prepaid nudge
Area hard to reachCourier flags the pincode as extended or out of delivery areaDelivery areaCheck serviceability, choose another courier, or ask for a DIGIPIN or map pin

Principles for a score you can trust

Four design principles keep a hand-built score honest.

  • Few factors, clear points. Eight to twelve rules that a staff member can apply in a minute beat a complex model nobody understands.
  • Your data, not folklore. Start with reasonable weights, then adjust them from your own order history.
  • Actions, not labels. Every band must trigger a step the team can actually perform.
  • Review and decay. Check the score against results weekly and retire rules that do not predict.

The cost of mistakes is asymmetric and differs by store. Wikipedia's article on type I and type II errors explains the two ways a screen can be wrong. Flagging a good order wastes goodwill and may lose a sale; missing a bad order costs freight. Your break-even rate, calculated later, sets how much of each error you can afford.

Factor group 1: address quality (up to 35 points)

Address quality is the factor you can assess without any history, so it carries the largest share. The Postal Index Number system is explained on Wikipedia's PIN code article, and India Post's page on DIGIPIN (read on 14 October 2026) states that DIGIPIN is a geo-coded addressing system developed by the Department of Posts with IIT Hyderabad, that each code covers roughly a 4 metre by 4 metre square, that a PIN code covers a broader area such as a locality, and that DIGIPIN complements rather than replaces the postal address. The point for a seller is that a six-digit code alone rarely guides a rider to a door.

CheckHow to test itPoints (assumed)
PIN code does not match the city or state enteredCompare against a PIN directory or your courier's serviceability response15
No house, flat or plot numberLook for a digit or a recognised pattern in the first address line8
No landmarkLandmark field empty4
Address is very short or only a localityFewer than about 25 characters in total5
Repeated characters or obvious fillerPattern check such as the same letter five times3
Maximum for the group 35

The points sum to 15 + 8 + 4 + 5 + 3 = 35. Your checkout should collect the address in separate fields (house, street, locality, landmark, city, state, PIN) so that these tests are possible. ShopMate's pincode serviceability check helps with the first test, because an unserviceable or out-of-area pincode needs a different response from a weak address.

What automated address validation can and cannot tell you

Paid address validation services exist. Google's Address Validation API documentation on understanding the response (read on 14 October 2026) lists a verdict with fields such as addressComplete, hasUnconfirmedComponents, inputGranularity and validationGranularity, and says a validation granularity of premise or sub-premise usually indicates a quality address that is likely deliverable. Its overview page describes the service in general terms. Test any such tool on a sample of your past failed orders and keep it only if its verdicts line up with the orders that actually failed.

The concept behind such tools is address geocoding, which converts a text address into coordinates. Even a perfect geocode does not tell you whether the buyer will be at home or will accept the parcel, so treat a validation result as one input to your score, not a replacement for it. If you add such a tool, map its verdict to points in the same table: for example, an incomplete verdict adds 8 points, and unresolved components add 4.

Factor group 2: contact details (up to 15 points)

A buyer who cannot be reached cannot receive a parcel. Shiprocket's article on processing an NDR, cited above, lists "customer not contactable" as a case where the seller must supply an active number before a reattempt. Check the number at checkout rather than after the failure.

  • Number fails a basic format check (10 points). Indian mobile numbers are ten digits when written without the country code; Wikipedia's article on telephone numbers in India explains the numbering structure. A number like 0000000000 or 1234567890 is an obvious fail.
  • Same number with several different names or addresses in a short period (5 points). This can indicate testing or a reseller, or simply a family sharing a number, so keep the weight small.

The strongest contact check is an OTP at checkout, a one-time password sent to the number, which Wikipedia's one-time password article describes. A number verified by OTP can remove these points altogether. Where no OTP step is in place, a WhatsApp or SMS confirmation after the order serves a similar purpose, with the consent points covered in our WhatsApp order-confirmation guide.

Factor group 3: history (from minus 15 to plus 20 points)

History is the most predictive group in most stores, because past behaviour repeats. Use only your own order records, matched by phone number and, where possible, by address. The base rate matters here: most new buyers score zero on history, so a useful rule must separate orders into groups with clearly different failure rates.

  • Earlier RTO or refusal on the same phone or address: +20 for one, capped at +20.
  • Earlier cancelled COD order after dispatch: +10.
  • One earlier delivered COD order with no return: −10.
  • Three or more delivered orders: −15 in total.
  • First order from this phone and address: 0.

The negative points matter: they let a trusted repeat buyer pass quickly, which protects the customers who are worth most to you. Do not use a person's history across stores or buy a blacklist from a third party; keep to your own records and your own purpose.

Factor group 4: order traits (up to 20 points)

Some order shapes fail more often. These are hypotheses to test in your own data, not facts.

TraitWhy it might matterPoints (assumed)
Order value above your high-value COD bandMore cash at risk; buyer may rethink6
Several units of the same item in different sizesPossible "try and return" behaviour in sized goods5
Product category with a high historical RTO rateFrom your own category data5
Order placed late at night with a heavy discount codeImpulse purchases4
Maximum for the group 20

The points sum to 6 + 5 + 5 + 4 = 20. Be cautious with time-of-day rules: a late-night order is normal for shift workers and students. If your backtest shows no link, remove the rule; the calibration example below shows exactly that happening.

Factor group 5: delivery area (up to 10 points)

Some pincodes fail more often, whether from address style, courier coverage or reachability. Rank your own pincodes by return rate over the last six months, using only those with a meaningful number of orders, and give 6 points to the worst-performing tenth and 4 points to pincodes your courier marks as out-of-delivery-area or extended delivery. The total cannot exceed 10.

Beware of small numbers: a pincode with three orders and one return has a 33 per cent rate that says almost nothing. Wikipedia's article on the binomial proportion confidence interval gives the Wilson score interval, which shows how wide the uncertainty is. At the usual 95 per cent level (z = 1.96), the interval for 1 return in 3 orders runs from about 6 per cent to 79 per cent, which is useless. For 12 returns in 40 orders (30 per cent) it runs from about 18 per cent to 45 per cent, and for 30 returns in 100 orders from about 22 per cent to 40 per cent. The intervals were computed from the formula on that page. Only give area points when the lower end of the interval is clearly above your store-wide rate.

Pincode (assumed)OrdersReturnsRaw rateApprox. 95% intervalGive area points?
Pincode P13133%6% to 79%No: too few orders
Pincode P2401230%18% to 45%Watch list; lower end is about the store rate of 18.6%
Pincode P31003030%22% to 40%Yes: the lower end is above 18.6%

Area rules also carry fairness risk, since they can penalise whole neighbourhoods. Use them as one small input, and give every band a path to prepaid so that an honest buyer in a flagged area can still order. Our guide on how pincode serviceability relates to RTO explains why areas differ.

Putting the score together

The five groups sum to 35 + 15 + 20 + 20 + 10 = 100 positive points, with up to 15 points removed for good history. The final score is the total, never below 0 and never above 100. A spreadsheet works: one row per order, one column per rule, a final column with the sum, and a band column.

Here are three assumed orders to show the arithmetic.

OrderWhat the data showsPointsScore
AComplete address with landmark, valid number, three earlier delivered orders, normal value0 + 0 − 15 + 0 + 00 (floored)
BFirst order; no landmark (4); short address (5); order above value band (6)9 + 0 + 0 + 6 + 015
CPIN mismatch (15); no house number (8); number fails format (10); earlier RTO on this phone (20); several sizes (5); high-RTO category (5); worst-decile pincode (6)23 + 10 + 20 + 10 + 669

Order A totals −15 and is floored at 0. Order B is 4 + 5 + 6 = 15. Order C is 15 + 8 + 10 + 20 + 5 + 5 + 6 = 69. The three orders land in different bands, and the actions differ accordingly.

Template: the scoring sheet layout

This layout works in any spreadsheet. Keep the weights in a separate tab so that changing one weight does not require editing formulas.

ColumnContentExample
AOrder ID (no names or phone numbers in the shared copy)ORD-10452
B to FAddress flags: PIN mismatch, no house number, no landmark, short address, filler (1 or 0)0, 0, 1, 1, 0
G to HContact flags: format fail, shared number (1 or 0)0, 0
I to LHistory flags: earlier RTO, cancelled after dispatch, one delivered order, three or more delivered0, 0, 0, 0
M to POrder flags: high value, sizes, high-RTO category, night plus discount1, 0, 0, 0
QArea points (0, 4 or 6, capped at 10 with other area rules)0
RTotal score: sumproduct of flags and the weights tab, floored at 0, capped at 10015
SBand: lookup against the cut-offs tabGreen
T to VAction taken, who took it, date and timeShipped, packing, 14 Oct 10:05
WOutcome when known: delivered, RTO, cancelledDelivered

Bands and actions

BandScoreActionWho does it
Green0–19Ship as CODPacking team
Amber20–39Send one confirmation message and ship on confirmation or after your silence ruleSupport
Orange40–59Confirmation plus a prepaid offer; call before shipping if no replySupport
Red60–100Offer prepaid; if the buyer insists on COD, call and ship only after a verbal confirmation of the addressSenior support

A prepaid offer works best as a simple payment link and a clear benefit. Razorpay's documentation on payment links (read on 14 October 2026) says you can set due dates after which links expire and send automated SMS reminders. ShopMate integrates Razorpay for UPI, cards, net banking, EMI and wallets, with settlement to your own Razorpay account; see the guide to Razorpay setup for your online store for the account side.

Any discount for paying online should be shown honestly. The Consumer Affairs department's CCPA guidelines page (read on 14 October 2026) lists the Guidelines for Prevention and Regulation of Dark Patterns, 2023 and an advisory dated 5 June 2025 on self-audit by e-commerce platforms for detecting dark patterns; the page itself does not define the patterns, so read the guideline document before writing urgency or fee messages. As a plain rule, state any COD fee or limit before the payment step, and do not invent a "last chance" message.

Messages sent on WhatsApp require opt-in under WhatsApp's business policy, which says you may contact people only if you have received opt-in permission from the recipient confirming that they wish to receive subsequent messages, and that the business is responsible for the method of opt-in. Where you do not have opt-in, use SMS or a phone call.

Illustrative scenario: a Jaipur apparel seller scores one week of orders

This scenario is invented to show the routine; none of the figures describe a real business. A Jaipur seller of block-printed kurtas receives 60 COD orders in a week. Her sheet scores them as 31 green, 15 amber, 9 orange and 5 red.

  1. Monday morning, green orders. The 31 green orders go straight to packing. No messages are sent, because the history and address checks found nothing unusual.
  2. Amber orders. A support colleague sends the confirmation message from the template below to 15 buyers by SMS (no WhatsApp opt-in was collected for these). Eleven reply within the day and ship; two have wrong PIN codes that are corrected; two do not reply and are shipped after her silence rule of 24 hours, with a note in column U.
  3. Orange orders. Of 9 orders, 3 pay through the prepaid link. Four confirm and stay COD. Two do not respond to a message, so a call is made; one buyer cancels, which saves freight.
  4. Red orders. Of 5 orders, 1 pays prepaid. For the other 4 the senior colleague calls; 3 confirm the full address verbally, and one number is switched off. That order is held for a day and then cancelled with a note in column U.

Check the counts: 31 + 15 + 9 + 5 = 60 orders. Amber outcomes 11 + 2 + 2 = 15. Orange outcomes 3 + 4 + 1 + 1 = 9 (three prepaid, four confirmed COD, one cancelled after a call, and one whose call outcome is still pending). Red outcomes 1 + 3 + 1 = 5. The seller records every action in the sheet, so that three weeks later, when the parcels have either been delivered or returned, she can compare outcomes with the bands.

Calibrate the weights from your own orders

The starting weights in this guide are guesses. To replace guesses with evidence, compare the failure rate of orders that trigger a rule with the rate of orders that do not. Divide the first by the second to get a lift: a lift near 1 means the rule tells you nothing, and a lift well above 1 means it deserves points. The same idea of testing a rule against past outcomes underlies backtesting.

The table shows an assumed calibration on the same 1,000 COD orders used in the backtest below, with 186 RTO orders in total.

Rule (assumed data)Orders with ruleRTO with ruleRate with ruleRTO without ruleRate without ruleLift
PIN does not match city401845.0%168 of 96017.5%2.57
No landmark3007525.0%111 of 70015.9%1.57
Earlier RTO on phone602745.0%159 of 94016.9%2.66
Order above value band2005025.0%136 of 80017.0%1.47
Late night with heavy discount1202218.3%164 of 88018.6%0.98

Check each split adds to 186: 18 + 168 = 186; 75 + 111 = 186; 27 + 159 = 186; 50 + 136 = 186; 22 + 164 = 186. A rough way to convert lift into points is 10 × (lift − 1), rounded: that gives about 16 for a PIN mismatch (10 × 1.57 = 15.7), 6 for no landmark (5.7), 17 for earlier RTO (16.6) and 5 for high value (4.7). The first draft weights were 15, 4, 20 and 6, so the main change is to raise the landmark rule from 4 to 6 and trim the history rule if you prefer round numbers. The late-night rule, at a lift of 0.98, should be retired: it separates nothing.

Two warnings apply: rules overlap (a short address often lacks a landmark, so check lifts among orders that trigger only one rule), and overfitting can make a score look excellent on a few hundred past orders and fail on new ones, so tune on older months and test on a held-out month.

Backtest the score before you use it

Do not switch on a score you have not tested. Export your last six months of COD orders with outcome (delivered, RTO, cancelled), apply the rules, and group the results by band. A useful score shows a clear rise in RTO rate from green to red. If the bands do not separate, your weights or factors need work.

The table shows an assumed result for 1,000 past COD orders.

BandOrdersRTO rate (assumed)RTO ordersDelivered orders
Green (0–19)5008%40460
Amber (20–39)25020%50200
Orange (40–59)15032%48102
Red (60–100)10048%4852
Total1,00018.6%186814

The arithmetic: 500 × 0.08 = 40, 250 × 0.20 = 50, 150 × 0.32 = 48, 100 × 0.48 = 48; the RTO total is 186, which is 18.6 per cent of 1,000. The score separates the bands well on these invented numbers, with the red band six times as likely to fail as the green band (48 ÷ 8). Real data is rarely this neat, so repeat the test on a second period: the pattern holds when the bands rank the same way on orders the score has not seen.

Where to set the cut-off: precision and recall

Choosing which bands trigger a control is a trade-off, which Wikipedia describes in its articles on the confusion matrix and precision and recall. Precision is the share of flagged orders that really fail; recall is the share of all failures that you flag. Using the backtest, suppose you act on orange and red orders only (score 40 or more).

 Failed (RTO)DeliveredTotal
Flagged (40 or more)96154250
Not flagged (under 40)90660750
Total1868141,000

The cells come from the backtest: flagged and failed is 48 + 48 = 96; flagged and delivered is 102 + 52 = 154; not flagged and failed is 40 + 50 = 90; not flagged and delivered is 460 + 200 = 660. Precision is 96 ÷ 250 = 38.4 per cent and recall is 96 ÷ 186 = 51.6 per cent. If you act from amber upward (score 20 or more), you flag 500 orders, of which 146 fail: precision 146 ÷ 500 = 29.2 per cent and recall 146 ÷ 186 = 78.5 per cent. Moving the cut-off down catches more failures but touches many more good buyers.

Break-even: when is blocking COD worth it?

A high return rate does not by itself justify refusing COD. What matters is the expected value of a COD order in that band, a concept described in Wikipedia's expected value article. Let C be the contribution you earn on a delivered order, and L the loss on a returned one (outbound and return freight, packing, payment handling). The expected value per order at RTO rate r is (1 − r) × C − r × L, which is zero when r = C ÷ (C + L).

With assumed C = ₹250 and L = ₹200, the break-even rate is 250 ÷ 450 = 55.6 per cent. The expected value per order in each band is:

BandRTO rateWorkingExpected value per order
Green8%0.92 × 250 − 0.08 × 200 = 230 − 16₹214
Amber20%0.80 × 250 − 0.20 × 200 = 200 − 40₹160
Orange32%0.68 × 250 − 0.32 × 200 = 170 − 64₹106
Red48%0.52 × 250 − 0.48 × 200 = 130 − 96₹34

Even the red band earns a positive ₹34 per order on these assumptions, because 48 per cent is below the 55.6 per cent break-even. Across the 1,000 orders the total expected value is 500 × 214 + 250 × 160 + 150 × 106 + 100 × 34 = 107,000 + 40,000 + 15,900 + 3,400 = ₹166,300. Blocking the red band outright would give up ₹3,400 of expected value, unless the confirmation or prepaid steps push the failures down or convert buyers to prepaid. The better move is to apply the cheapest control that lifts value, and to block only where the rate sits above break-even after those steps.

Worked example: does a control pay for itself?

Each control has a cost and an effect. Using the same assumed C = ₹250 and L = ₹200, take the 150 orange orders, each worth ₹106 on average with no control, a total of 150 × 106 = ₹15,900.

Control 1: a confirmation call

Assume a call costs ₹15 of staff time per order, lowers the RTO rate from 32 per cent to 22 per cent, and causes 12 of the 150 buyers to withdraw. The value per remaining order is 0.78 × 250 − 0.22 × 200 = 195 − 44 = ₹151. With 138 orders remaining the value is 138 × 151 = ₹20,838. The call cost is 150 × 15 = ₹2,250, so the net is 20,838 − 2,250 = ₹18,588. The gain over doing nothing is 18,588 − 15,900 = ₹2,688.

Control 2: a prepaid offer for the red band

Take the 100 red orders, worth 100 × 34 = ₹3,400 as COD. Assume 30 buyers switch to prepaid, that prepaid orders fail at 12 per cent with the same C and L, and that you give a ₹20 discount to each. The value per prepaid order is 0.88 × 250 − 0.12 × 200 = 220 − 24 = ₹196, so 30 orders give ₹5,880, less 30 × 20 = ₹600 of discount, which is ₹5,280. The remaining 70 stay COD at ₹34, a total of ₹2,380. The combined value is 5,280 + 2,380 = ₹7,660, compared with ₹3,400 before, a gain of ₹4,260. Where the offer is a "discount", state it plainly and fairly; our guide to nudging COD buyers to prepay covers the incentive maths in more detail.

These results come from invented inputs. The method is what to take away: estimate the control's cost, its effect on the failure rate and its effect on conversion, then compare totals. If the gain is negative, drop the control for that band.

Illustrative scenario: a Pune accessories seller in a festive week

This scenario is invented. A Pune seller of phone accessories normally ships 40 COD orders a day with a score distribution close to the backtest above. During a festive sale the volume triples to 120 a day, and the share of first-time buyers rises from 55 per cent to 80 per cent.

  • What changes in the score. First-time buyers have no history, so they score zero on that group, and more orders land in the amber band simply because address quality varies. The score is not wrong; the mix is different.
  • What the seller checks. On day three she compares the share of orders in each band with a normal week. If amber grows from 25 per cent to 40 per cent, the confirmation workload rises accordingly: 120 × 0.40 = 48 messages a day instead of 40 × 0.25 = 10.
  • What she reviews afterwards. Four weeks after the sale, when outcomes have settled, she re-runs the backtest on the sale period separately. If the RTO rate in each band is higher than in normal weeks, she keeps a separate band cut-off for sale periods rather than polluting the normal weights.

Message and call templates

Keep messages short, neutral and specific. These are starting drafts; adapt them to your brand and check any message template rules of the channel you use.

Template 1: address confirmation message (amber)

"Hello, this is [Store name]. We have received your order [Order ID] for cash on delivery. Please confirm the delivery address: [Address as entered]. Reply YES to confirm, or send the correct address with a nearby landmark. Your order will be dispatched after we hear from you."

Template 2: call outline (red)

  1. Introduce yourself and the store, and state the order ID and item.
  2. Ask the buyer to read out the full delivery address, including house number, locality, landmark and PIN, and compare it with the order.
  3. Confirm the amount payable in cash and the expected delivery window.
  4. Ask whether someone will be available to receive and pay on delivery.
  5. Offer the prepaid link if the buyer prefers; do not pressure.
  6. Record the outcome in the sheet: confirmed, corrected, no answer, cancelled.

If the buyer cannot be reached after two attempts at different times, hold the order for your stated period, then cancel and note the reason. Shiprocket's NDR guidance, cited earlier, shows that a courier's reattempt can require recorded buyer confirmation, so keep the evidence of any confirmation you receive; its article names an audio recording or a screenshot of an SMS or WhatsApp message as accepted forms for some actions.

Fairness, privacy and record-keeping

A score uses personal data, so treat it with care. The Digital Personal Data Protection Rules, 2025 were published in the Gazette of India (Extraordinary, CG-DL-E-14112025-267650) on 14 November 2025, and I read the Gazette text on 16 October 2026. Rule 1(4) brings Rules 3, 5 to 16, 22 and 23 into force eighteen months after publication, which is 14 May 2027. Rule 3 requires the notice a business gives to be understandable on its own, in clear and plain language, with an itemised description of the personal data and the specified purpose of processing, plus a link and the means to withdraw consent, exercise rights and complain to the Board. MeitY's data protection framework page is the official starting point for the Act and the Rules.

Keep the principles in mind now. Wikipedia's article on data minimization describes collecting only what is needed for a stated purpose. In practice: collect only what you need for the order, use history from your own records, explain in your privacy notice that you check order details to prevent failed deliveries, secure the score sheet and delete old data on a schedule.

On fairness, algorithmic bias can arise even in simple rule sets when a rule acts as a proxy for something it should not. Avoid factors that stand in for a person's identity, such as a buyer's name, religion or community, and review area rules for unintended effects. Give every flagged buyer a path to proceed, such as paying online. Record the score, the band and the action taken for each order, so you can explain a decision if a customer complains and so you can audit the system.

Mistakes and how to avoid them

  • Treating the score as a verdict. A band describes order traits, not a person. Avoid labels such as "fraud" in your sheet; use "band red, call before dispatch".
  • Blocking COD for the whole red band without a break-even check. As the worked example shows, a band can still earn money; a block gives up that value. Test calls and prepaid offers first.
  • Using area rules on tiny samples. One return in three orders is noise. Require a sufficient number of orders and look at the confidence interval.
  • Changing several weights at once. You cannot tell which change helped. Change one rule, log it with the date, and wait for outcomes.
  • Messaging on WhatsApp without opt-in. The business policy requires it; fall back to SMS or a call.
  • Silent rejection. Cancelling a COD order without telling the buyer or offering prepaid invites complaints. Always tell the buyer what happened and what they can do.

A weekly routine to keep the score honest

  1. Export last week's COD orders with outcomes as they mature; allow time for deliveries and returns to settle.
  2. Recompute RTO rate by band and compare with the backtest.
  3. Check for drift: a new courier, a festive sale or a new product category can change the pattern.
  4. Review misses: high-score orders that delivered and low-score orders that returned. Look for a rule that would have separated them.
  5. Adjust one rule at a time and note the change and date.
  6. Review the cost of the controls: calls, messages and lost orders, against the RTO avoided.

Keep a change log. If you change several rules at once you cannot tell which helped.

Checklist: before you apply a COD score

  • My checkout collects the address in structured fields, with a landmark and a phone number.
  • Each rule has a written point value and a test that staff can apply the same way.
  • I have exported at least six months of COD orders with outcomes and tested the bands.
  • I have checked the lift of each rule and retired any rule with a lift near 1.
  • I know my break-even RTO rate from my own freight, packing and contribution figures.
  • Every band has an action and an owner, and no band silently rejects customers.
  • COD fees, limits and confirmation steps are shown before the payment step.
  • WhatsApp messages go only to buyers who opted in; others get a call or SMS.
  • The score sheet is access-controlled, and old data is deleted on schedule.
  • I review results weekly and log every change to a rule.

Frequently asked questions

What is COD address verification?

It is a set of checks on an order's address and contact details before dispatch: whether the PIN code matches the city and state, whether the address has a house number and landmark, and whether the phone number is valid and reachable. Failing checks add risk points or trigger a confirmation, so errors are fixed before freight is spent.

Do I need software to score COD orders?

No. A spreadsheet with one column per rule and a sum column is enough for a store with a few hundred COD orders a month. Software helps once volume grows. Start by hand, learn which rules predict failure in your data, and only then decide whether to automate, or to pay for a validation or scoring service.

Should I stop COD for high-score orders?

Not automatically. Compare the band's RTO rate with your break-even rate: delivered contribution divided by delivered contribution plus the loss on a return. In our worked example the break-even was 55.6 per cent, above the red band's 48 per cent. Use a call or a prepaid offer first and block only where the numbers justify it.

Is it fair to flag customers by pincode?

Used crudely, it can penalise whole areas. Keep the area weight small, base it on enough orders, and always offer a prepaid route so that a genuine buyer in a flagged area can still purchase. Review the effect regularly, and avoid factors that stand in for a person's identity or community.

How often should I update the weights?

Review weekly and change weights only when the data supports it, usually monthly. Change one rule at a time and keep a log. Re-run the backtest after any major change in couriers, products or pricing, because patterns from a different period may not hold. Tune on older months and test on a recent month the weights have not seen.

Can the score replace phone confirmation?

It can reduce the number of calls by showing which orders need one. Green orders can ship without a call, while orange and red orders benefit from a short confirmation. Calls are slow and costly, so use the score to spend them where the expected loss is highest.

How many orders do I need before the score is meaningful?

There is no fixed number, but a few hundred COD orders with recorded outcomes is a sensible minimum for a band-level test, and individual rules need enough triggering orders to measure. Wikipedia's sample size determination article explains why small samples give wide uncertainty. With fewer orders, use the score only as a checklist.

Is it legal to keep a list of buyers who refused COD?

Keeping a record of your own orders for a stated business purpose, such as preventing failed deliveries, is ordinary order record-keeping. Keep the list minimal, limited to your own orders, secure and time-limited, and describe the purpose in your privacy notice in the plain, itemised way Rule 3 of the Digital Personal Data Protection Rules, 2025 sets out for notices.

Set up COD address verification and risk scoring with ShopMate

To run COD address verification and risk scoring, you need order, address, payment and courier outcome data in one place. ShopMate offers a branded storefront with customer accounts, COD collection tracking, a pincode serviceability check, 40+ shipping partners, analytics with CSV export and Razorpay payments, which together hold the order, address, payment and courier outcome data the score needs. Book a demo, read about ShopMate or see the pricing page. For wider context, read our guide to delivering to all pincodes in India and the all-India selling playbook.

Disclaimer: This article is for general information only and is not legal, tax or financial advice. ShopMate is the publisher of this guide and has a commercial interest in the platform it describes. All point values, rates and rupee figures in worked examples are assumptions, not benchmarks, and a score does not predict any individual order. Rules, thresholds, fees and platform terms change, and your situation may differ. Consult a qualified chartered accountant or legal professional before making decisions.

S

Written by ShopMate Team

Published Nov 04, 2026
Share