Cash on delivery can help an e-commerce business convert customers who do not want to prepay, but it also creates a second accounting problem: the cash collected by a delivery network must eventually be matched to the order and the amount that reaches your bank account.
That matching process is COD reconciliation. It is not just checking whether a courier has paid you. It means proving, order by order, that delivered COD shipments, expected remittances, deductions and actual bank credits agree.
What COD reconciliation should prove
For every COD shipment, your records should answer four questions:
- Was the order actually delivered?
- How much COD was collected?
- When should the courier remit it?
- How much did you actually receive, after legitimate deductions?
A useful reconciliation key is the AWB or shipment number, linked to your internal order ID. Using only customer name or phone number makes duplicate orders and partial shipments much harder to identify.
The basic COD reconciliation workflow
Step 1: Export your order data
Start with your e-commerce platform or ERP. Keep order ID, order date, customer, COD amount, courier, AWB, shipment status and any refund or cancellation information.
Step 2: Export courier reports
Download the courier or aggregator reports covering delivery status and COD remittance. Do not assume a delivered shipment and a paid shipment are the same accounting event.
Step 3: Match by AWB
Use AWB as the primary shipment key, with order ID as a secondary check. If the same order can be split into multiple shipments, reconcile at shipment level first.
Step 4: Calculate the expected remittance
Start with the COD amount and subtract only deductions that are supported by the courier’s rate card or statement. Keep freight, COD fees, RTO charges, adjustments and other deductions in separate columns.
Step 5: Match the bank credit
Compare the expected remittance with the actual bank transaction. Record the settlement reference and settlement date so the same payment is not matched twice.
A simple reconciliation sheet
| Field | Example purpose |
|---|---|
| Order ID | Connects payment to the store order |
| AWB | Unique courier shipment reference |
| COD amount | Amount expected from customer |
| Delivery date | Starts the settlement tracking clock |
| Expected remittance | Amount expected after documented deductions |
| Bank credit | Amount actually received |
| Difference | Flags short or unmatched settlements |
| Settlement reference | Prevents duplicate matching |
Why “delivered” does not mean “reconciled”
A shipment can be delivered while its remittance is still in the normal settlement cycle. Conversely, a payment can arrive in a bank statement without an obvious order-level reference. Your process should therefore distinguish between pending, matched, short-paid, overpaid and exception.
Current industry reconciliation workflows commonly track delivery date, expected remittance, received remittance and ageing at AWB level. citeturn0search16turn0search18
Common COD reconciliation errors
- Using order date instead of delivery date: settlement normally follows the logistics event, not the day the customer placed the order.
- Ignoring RTOs: returned shipments can create reverse charges and revenue reversals that need separate treatment.
- Combining all courier deductions: this makes it difficult to challenge an unexpected fee.
- Matching only on amount: two ₹999 settlements can belong to completely different orders.
- Closing the month too early: recent deliveries may still be awaiting remittance.
- Keeping one spreadsheet for every courier: inconsistent column names make cross-courier analysis difficult.
How to handle a missing or short remittance
- Confirm the shipment was delivered.
- Check the courier’s expected settlement status.
- Check whether the amount was included in a later consolidated payout.
- Review the statement for documented deductions.
- Match the bank credit using settlement reference, date and amount.
- If the difference remains unexplained, open a courier dispute with the AWB and supporting records.
How often should you reconcile?
Daily reconciliation is useful for high-volume sellers because exceptions are easier to investigate while shipment and payment records are still fresh. Smaller sellers can reconcile several times per week or as part of their weekly accounts process. The important thing is to avoid allowing unmatched COD orders to age indefinitely.
When spreadsheets stop being practical
A spreadsheet can work when you have one store, one courier and modest order volume. Complexity grows quickly when you add several couriers, multiple marketplaces, split shipments, COD adjustments, RTOs and different settlement reports.
At that point, a logistics or finance workflow should standardise the data and automatically flag records where delivered COD value does not have a corresponding remittance.
Bottom line
COD reconciliation is simply the discipline of following cash from customer payment → courier collection → expected remittance → bank credit. Use AWB as the shipment-level key, separate legitimate deductions from unexplained differences, and maintain an ageing list of unresolved settlements. That turns COD from a cash-flow blind spot into a controllable finance process.
