COD vs PREPAID Orders via API Best Practices for Indian eCommerce

API Integration
COD vs PREPAID Orders via API

Here's a situation every Indian eCommerce seller knows too well.

A customer places an order. COD. You ship it. The courier attempts delivery twice. Nobody picks up the phone. The parcel comes back, marked RTO. You have paid for forward shipping, return shipping, packaging, and warehouse handling, and earned exactly zero rupees from that order.

Now multiply that by 30-40% of your total COD orders. That's not a logistics problem. That's a business model problem, and it starts at the moment the order enters your system.

This guide is about how to handle COD and PREPAID orders correctly from the API level, using the ILS Portal Orders API Integrate.

The Real Scale of COD in Indian eCommerce

Before getting into best practices, the numbers deserve a moment of attention.

In 2025, 60-65% of Indian eCommerce orders are placed as COD, even as UPI and digital payments continue to rise. That's not a small edge case you can ignore. It's the majority of your business. And the gap in RTO rates between the two payment types is staggering. COD orders in India see a 30-40% RTO rate. Prepaid orders see only 5-7%.

That difference, 35% RTO vs 6% RTO, comes down almost entirely to how well you manage each payment type from the moment the order is created. A customer who has already paid online is committed. A customer who placed a COD order on impulse at midnight has much less skin in the game.

This is where the ILS Portal Orders API becomes more than just an automation tool. It becomes your primary lever for managing risk, reducing returns, and protecting your margins.

What Does payment_type Actually Do in the ILS API?

The ILS Orders API has a required field called payment_type. It accepts exactly two values, COD or PREPAID. But this single field does much more than label an order. It determines the entire downstream workflow for that shipment inside the ILS Panel.

When you send a COD order, the courier is instructed to collect the exact invoice amount at the customer's doorstep. COD remittance tracking is activated. The order is treated as higher-risk throughout the fulfillment workflow. When you send a PREPAID order, no cash collection is required at delivery. The courier processes it as a standard delivery. The risk profile is lower, and processing is typically faster.

There's one critical rule that most developers discover only after their first integration error: you can upgrade a COD order to PREPAID, but you cannot downgrade a PREPAID order to COD. If a customer pays online after placing a COD order, you can update the payment type to PREPAID. If a customer wants to switch from PREPAID to COD, you must cancel the original order and create a new one.

For the complete technical details on how to set the payment_type field and the full list of request parameters, see the ILS Portal API documentation.

COD vs PREPAID: Side-by-Side Comparison

Aspect COD PREPAID
Cash collection at delivery Yes — courier collects Not required
Average RTO rate (India) 30–40% 5–7%
Cash flow Delayed — after courier remittance Immediate — at checkout
Courier handling fee Higher — includes COD charge Standard delivery fee only
Verification recommended Always — before dispatch Optional for high-value orders
Upgrade via API allowed COD → PREPAID  PREPAID → COD 
Tags best practice COD, UNVERIFIED, city tier PREPAID, PRIORITY, payment method
Tracking priority After verification is complete Immediately after packing
Order notes best practice Verification status and call log Payment gateway transaction ID
Remittance tracking Through courier → ILS → account Through payment gateway directly

Upgrading COD to PREPAID via API

This is a feature of Indian Logistics Services (ILS Portal) that most businesses haven't taken advantage of, and it's genuinely one of the most powerful tools for reducing RTO.

When a customer who originally placed a COD order decides to pay online through a WhatsApp payment link, a post-order SMS, or a checkout recovery flow, you can upgrade the order to PREPAID without cancelling and recreating it. Call the Update Order endpoint with the new payment type, updated notes, and refreshed tags.

This is only possible while the order is still in ready-to-ship status and has not been dispatched, cancelled, or had tracking pushed. The moment the courier picks up the parcel, the payment type cannot be changed.

Research shows that nudges like WhatsApp payment links with a small cashback offer can convert 12–15% of COD orders to PREPAID and reduce overall RTO by 20–22%. If you're processing 300 COD orders a month, that's 36–45 fewer high-risk shipments every month with the API upgrade handling the technical side seamlessly.

For the exact field names and how to structure the update request, refer to the ILS Portal API documentation.

Also Read: https://ilsportal.io/blogs/what-is-a-shipping-api

Tagging Strategy for COD and PREPAID Orders

The tags[] field is one of the most underused features in the ILS Orders API, and it costs nothing extra to implement. You can add up to 50 tags per order, each up to 64 characters, and every tag is filterable inside the ILS Panel.

Here's a practical tagging framework for Indian eCommerce operations:


Tags for COD Orders:

Tag When to Use
COD Every COD order — mandatory
UNVERIFIED Before verification call is completed
VERIFIED After customer confirms the order
HIGH-VALUE-COD Orders above ₹2,000 — extra scrutiny
NEW-CUSTOMER First-time buyer — higher RTO risk
REPEAT-CUSTOMER Customer has successfully received before
TIER1 / TIER2 / TIER3 City tier for courier routing decisions
CONVERTED COD orders successfully upgraded to PREPAID

Tags for PREPAID Orders:

Tag When to Use
PREPAID Every prepaid order — mandatory
PRIORITY Release for packing before COD orders
UPI / CARD / WALLET Payment method — useful for analytics
HIGH-VALUE Orders above ₹5,000 — handle with care
GIFTING Orders with gift notes — special packaging

When to Push Tracking for Each Payment Type

Once a courier assigns an AWB number, you push it into the ILS Panel via the Update Order endpoint. The technical process is identical for COD and PREPAID, but the timing is completely different.

For PREPAID orders, push tracking immediately after the courier assigns the AWB. The customer has already paid and is actively waiting. Getting the tracking number into your system quickly means you can send real-time updates and reduce "Where is my order?" calls to your support team.

For COD orders, push tracking only after your verification workflow is complete and the VERIFIED tag has been applied. Dispatching an unverified COD order and then discovering the customer is unreachable is an avoidable loss, and once tracking is pushed, the Update Order window closes.

Also Read: https://ilsportal.io/blogs/cash-on-delivery-courier-service

Build Smarter COD and PREPAID Workflows Today

COD is not a problem to be eliminated, it's a reality of Indian eCommerce that, when managed correctly from the API level, becomes a powerful tool for reaching customers who wouldn't otherwise buy online. The key is treating COD and PREPAID as two distinct workflows from the moment each order enters your system.

Indian Logistics Services (ILS Portal) gives you everything you need to build this distinction into your operations. The payment_type field, tags[], order_notes, partial fulfillment tracking, and the COD-to-PREPAID upgrade capability all work together inside the ILS Orders API.

Frequently Asked Questions

What is the difference between COD and PREPAID in the ILS Portal API?

In the ILS Portal API, setting payment_type to COD instructs the courier to collect the order value from the customer at delivery and remit it back to you.

Can I upgrade a COD order to PREPAID via the API?

Yes. As long as the order is still in ready-to-ship status and has not been dispatched or had tracking pushed, you can call the Update Order endpoint to change payment_type to PREPAID.

How does COD remittance tracking work through the ILS Portal?

When a courier successfully delivers a COD order and collects the payment, the ILS Panel tracks the remittance cycle, from courier collection through to settlement back into your account.

Can I filter COD and PREPAID orders separately inside the ILS Panel? 

Yes, the tags[] field makes this easy. Tag every COD order with COD and every PREPAID order with PREPAID at creation, and you have a one-click filter for each group inside the ILS Panel.

Is there a COD handling fee difference between couriers?

Yes, most Indian courier partners charge a COD handling fee (typically ₹20–₹50 per shipment) on top of the standard delivery charge. This fee varies by courier and is one of the reasons PREPAID orders have a lower total logistics cost per shipment. ILS Portal connects you to 13+ courier partners, including Delhivery, Bluedart, DTDC, XpressBees, and Ekart, allowing you to compare COD handling fees across courier partners and route orders to the most cost-effective option.

What happens if both my verification attempts for a COD order fail?

If a COD order remains unverified after two attempts, the safest action is to delete the order via the API's Delete Order endpoint, provided the order is still in pending status and has not been dispatched. This saves the entire shipping cost on what would very likely become an RTO. The Delete endpoint removes the order cleanly from the ILS Panel. See the API documentation for the exact conditions under which an order can be deleted.

ad