Skip to content

Shopify

How to reconcile Shopify COD orders with Shiprocket remittances

By the Veritally team · Updated · 6 min read

Quick answer

Export your Shopify orders and your Shiprocket orders report for the same dates, match them by order number, and check that every delivered COD order has a remittance for its full COD amount with a UTR that appears in your bank statement. Anything delivered but unremitted after your remittance cycle, or remitted short, is money to claim.

Key points

  • Match on the Shopify order number; Shiprocket's orders export carries it as the order ID.
  • Only delivered COD parcels are owed to you. RTO parcels collect no cash.
  • Compare the COD amount Shiprocket was told to collect with the Shopify order total: a lower COD amount is a setup problem on your side, not the courier's.
  • Every remittance has a CRF ID and a UTR. The UTR is how you find it in your bank statement.
  • Allow for your remittance cycle and a few days' grace before calling an order unremitted.

Why COD money goes missing

A COD order passes through three hands before it reaches you: your store records the sale, the courier collects the cash at the door, and the courier aggregator (Shiprocket, for most Shopify brands) remits it to your bank in batches. Each batch is a lump sum. If one parcel is left out or paid short, the lump sum hides it.

What to export

ReportWhereWhat it gives you
Shopify orders exportShopify admin, Orders, ExportOrder number, total, payment method, refunds, cancellations
Shiprocket orders reportShiprocket, Orders, export for the same datesAWB, status, delivered date, COD payable, remitted amount, CRF ID, UTR
Bank statementYour bank's net banking, as Excel or CSVCredits with their UTR references

Use the same date range for all three, and include a few weeks after it so late remittances show up.

How to match, step by step

  1. Put both exports side by side and match each Shopify order number to the Shiprocket order ID.
  2. Keep only COD orders that Shiprocket shows as delivered.
  3. For each one, compare the COD payable amount with the amount remitted. Equal means paid in full.
  4. Check the remitted date against your remittance cycle. Delivered, past the cycle plus a few days, and not remitted means unpaid.
  5. Look up each remittance's UTR in your bank statement and check the credited amount matches the remittance total.

The five gaps to look for

GapWhat it looks likeWho to raise it with
Delivered, not remittedStatus delivered, no remitted amount, past the cycleCourier aggregator
Remitted shortRemitted amount below COD payableCourier aggregator
COD amount below the orderCOD payable lower than the Shopify totalYour own store setup
RTO charged on a delivered parcelReturn freight billed on a delivered AWBCourier aggregator
Remittance not in the bankA UTR that never appears in your statementCourier aggregator, then your bank

Doing it every month

Matching by hand works for a few hundred orders. Above that, use a tool that reads the same reports and matches every order for you. Veritally for Shopify reads your Shopify orders live, takes the Shiprocket and bank files you already download, and lists every gap with its evidence and a claim ready to send.

Frequently asked questions

How long does Shiprocket take to remit COD?

It depends on your plan and agreement with Shiprocket. Check the remittance cycle shown in your Shiprocket account, and count from the delivered date, not the order date.

What is a CRF ID?

It is Shiprocket's reference for a COD remittance batch. Many orders share one CRF ID, and the batch has a UTR you can find in your bank statement.

Why is the COD amount on a shipment lower than my Shopify order total?

Usually a store or app setting: a discount, partial payment or shipping charge left out when the shipment was created. The courier collects what it is told to collect, so fix this in your store setup.

Can I do this without sharing my Shiprocket login?

Yes. You download the reports yourself. Veritally never asks for a Shiprocket, Shopify or bank password.

Help us improve Veritally?

Essential storage keeps you signed in. With your OK, Google Analytics counts visits. No ads, and nothing from your reports is ever sent. Cookies