How to reconcile a courier remittance
A remittance is a lump sum covering parcels delivered across a range of days, minus deductions, plus occasional adjustments. Checking it properly is the least glamorous hour in a COD business and one of the best paid.
Why totals are not enough
The tempting method is to add up what you think you are owed for the period and compare it to what arrived. It will agree often enough to feel like a system — and it hides precisely the cases that matter, because a parcel that was never paid for and a parcel that was slightly overpaid cancel each other out in a total.
Reconciliation has to happen per parcel, keyed on the shipment identifier that travels with the physical parcel. That is the only key that survives the fact that a remittance covers an arbitrary set of dates.
The method
- Export your delivered parcels for the period with their shipment IDs and COD amounts.
- Export the remittance lines with their shipment IDs and settled amounts.
- Join on shipment ID. Not on date, not on customer name, not on amount.
- Sort into four buckets: matched and equal; matched but short; delivered with no remittance line at all; remittance line with no parcel.
- Work the last three. The first bucket needs no attention, and it should be the overwhelming majority.
What each exception usually means
- Matched but short. Either a legitimate deduction you did not model, or a genuine short-pay. Ignore differences of a rupee or two — remittances round, and across thousands of parcels rounding produces a permanent drizzle of tiny shortfalls that will bury the real ones.
- Delivered, no remittance line. Usually just the next cycle. If it persists past the normal settlement window, it is a claim.
- Remittance line, no parcel. Often an adjustment, a claim settlement, or a parcel booked outside your system. Worth identifying rather than dropping — some of these are money coming back to you.
Not every line in a payout is a sale. Courier payouts contain adjustments and balance payments — money being returned to you, not earned. Add the payout up as revenue and your month is overstated by exactly the amount you were refunded. Classify them as recoveries: they restore cash without inflating sales.
When to stop doing this by hand
The method above is entirely doable in a spreadsheet at low volume, and if you ship a few dozen parcels a month you should just do it. It stops being reasonable at the point where the join is thousands of rows a month, the exceptions take a full day, and you find yourself skipping months — which is when short-pays stop being caught at all.
That is the point at which automating it pays for itself in a single caught discrepancy.
Reconcile your last month — install free