How to Set Up Cash on Delivery on Shopify (2026 Guide)

EasySell
2026-04-13T07:26:13+01:00

Over 60% of ecommerce orders in India are still paid cash on delivery. In Pakistan, it's higher. In parts of the Middle East, COD accounts for more than half of all online transactions. If you're selling in any of these markets without COD enabled, you're invisible to most buyers.

You can set up cash on delivery on Shopify in about five minutes. But the default setup leaves gaps that cost merchants real money — no way to charge a COD fee, no fraud prevention, no order verification. This guide covers both: the basic Shopify COD setup and the fixes that keep cash on delivery profitable instead of painful.

How to Set Up COD on Shopify (5 Steps)

To set up cash on delivery on Shopify, go to Settings → Payments → Manual payment methods → Cash on Delivery (COD). Shopify supports COD as a manual payment method — no app required for the basics.

1. Go to Settings → Payments in your Shopify admin.

2. Scroll to Manual payment methods.

3. Click Add manual payment method and select Cash on Delivery (COD).

4. Add payment instructions your customers will see at checkout — something like "Pay cash when your order is delivered. Please have the exact amount ready."

5. Click Activate.

That's it for the basic setup. COD now appears as a payment option during checkout. But this is where most guides stop — and where most problems start.

Configure Shipping Zones for COD Regions

COD only works in regions where your courier actually collects cash. If you ship internationally but only offer COD domestically, you need your shipping zones set correctly. Otherwise, a customer in a country you can't collect cash from will select COD and you'll have an undeliverable order.

Go to Settings → Shipping and delivery. Create separate shipping zones for COD-eligible regions and non-COD regions. This doesn't restrict COD by itself — Shopify shows COD to all customers regardless of location — but it gives you the foundation for apps that can restrict COD by zone.

One common issue: merchants set up COD, then discover it appears for every customer worldwide. Shopify's native COD has no geographic restrictions. If you need to hide COD from certain countries or postal codes, you'll need a third-party app.

Add a COD Fee to Cover Extra Costs

COD orders cost more to process than prepaid orders. Your courier charges a cash collection fee (typically 1-3% of order value). You handle more returns. RTO rates on COD orders average 25-35%, compared to 4-8% for prepaid. Absorbing all of that erodes your margins fast.

Shopify doesn't have a native COD fee option. You can't add an extra charge for choosing cash on delivery without an app. Most COD merchants add a small fee — ₹50-100 in India, 10-20 SAR in Saudi Arabia — to offset the higher cost of COD fulfillment.

Apps like EasySell let you add a COD fee directly on the order form, so customers see the extra charge before they place the order. This is also a useful nudge toward prepaid — when customers see that paying online saves them the fee, a meaningful percentage will switch.

Set Up Order Verification to Block Fake Orders

Fake and prank orders account for 8-10% of COD orders. Someone enters a wrong phone number, a competitor places garbage orders, or a bored teenager fills out your form with a fake address. Each fake order costs you the shipping fee, the courier's return fee, and the product handling — all for zero revenue.

Shopify's built-in COD setup has no verification. Zero fraud prevention. Every order goes straight to fulfillment. For low-volume stores, you can manually call each customer to confirm. But once you're processing 50+ COD orders per day, manual confirmation breaks down.

The two most effective automated verification methods:

OTP verification — Customer enters their phone number, receives a one-time code via SMS or WhatsApp, and must enter it to complete the order. Eliminates orders with fake phone numbers instantly.

WhatsApp confirmation — Customer receives an automated WhatsApp message after placing the order and must reply to confirm. Brands that implement WhatsApp confirmation within 5 minutes of order placement see RTO rates drop from 30-35% to 18-22%.

Both methods require a third-party app. EasySell includes built-in OTP verification via SMS and WhatsApp, so you can add verification without installing a separate app. For a deeper comparison of verification methods, see our guide on IVR vs SMS vs WhatsApp for COD verification.

How to Restrict COD for High-Risk Orders

Not every order should qualify for COD. A ₹50,000 order from a first-time customer with no order history is a different risk profile than a ₹500 repeat purchase. Smart COD merchants set rules to block fake orders by phone number, email, or IP.

Common restrictions that reduce RTO without killing conversion:

Maximum order value — Cap COD at a threshold (e.g., ₹10,000) and require prepaid above it. Your highest-value COD orders carry the most RTO risk.

Minimum order value — Some merchants require a minimum for COD to filter out low-commitment test orders.

Blocklists — Block repeat offenders by phone number, email, or IP address. If someone's returned their last three COD orders, they shouldn't get a fourth.

Geographic restrictions — Hide COD for regions where your courier doesn't collect cash, or where RTO rates are historically high.

None of these are available in Shopify's native COD. You'll need an app that supports conditional COD logic.

Offer Partial Payment to Reduce RTO

Full COD means zero customer commitment until the courier shows up. The customer has nothing at stake, which is exactly why RTO rates are so high. Partial payment changes the math.

Instead of full COD, offer customers the option to pay a small deposit online — 10-20% of the order value — and pay the rest on delivery. The customer has skin in the game. They've already committed money, so they're far more likely to accept the delivery.

This approach works particularly well for higher-value items where full prepaid feels risky to the customer but full COD feels risky to you. It splits the risk. We covered the full math in how a ₹50 deposit dropped one store's RTO from 35% to 12%.

Shopify doesn't support partial payments natively. EasySell's partial payment feature lets customers choose between full prepaid, partial deposit, or full COD on the same order form — the deposit is processed through Shopify checkout while the remainder is collected on delivery.

Optimize Your COD Order Form for Mobile

In COD-heavy markets, the majority of your customers are on mobile. India's ecommerce traffic is over 75% mobile. If your order form is clunky on a 6-inch screen, you're losing buyers at the last step.

Key optimizations for mobile COD forms:

Minimize fields — Every extra field drops completion rate. Only ask for what you need: name, phone, address, and payment method. Remove optional fields entirely.

Auto-detect city from postal code — Saves the customer from typing their city and reduces address errors that cause failed deliveries.

Phone number as the primary identifier — In COD markets, phone number matters more than email. Make it the first field, not an afterthought.

One-page layout — Multi-step checkouts increase drop-off. For COD orders especially, a single-page form that shows all fields at once converts better.

Track COD Performance Separately

COD orders and prepaid orders have completely different economics. Lumping them together in your analytics hides the real picture. Track these metrics separately for COD:

RTO rate — What percentage of COD orders come back undelivered? If it's above 25%, your verification or targeting needs work.

Actual collection rate — Of orders that were delivered, how much cash was actually collected? Courier discrepancies add up.

COD vs. prepaid conversion rate — If COD converts at 4% and prepaid at 1.5%, you know COD is doing the heavy lifting. If the gap narrows after you add a COD fee, the fee might be too high.

Average days to remittance — How long does your courier take to deposit collected cash in your account? This directly affects your cash flow.

Shopify's built-in reports don't separate COD from prepaid automatically. Tag your COD orders (most COD apps do this) and build filtered reports.

Start With the Basics, Then Layer Protection

If you're enabling COD for the first time: start with Shopify's native setup. Activate it, process a few orders, and see what happens. You'll quickly discover which problems are real for your store — maybe it's fake orders, maybe it's high RTO in certain regions, maybe it's the cash flow delay.

Once you know your specific pain points, add the layers that fix them: a COD fee, OTP verification, order value limits, partial payments. Each one reduces your COD risk without eliminating the sales that COD brings in. The goal isn't to make COD perfect — it's to make it profitable.