Back to Blog

    How to Bill Clients from Your Delhivery Billing Statement

    Turn Delhivery's billing statement CSV into client GST invoices: what each column means, using Delhivery's cost as is, matching waybills to clients by order ID, and handling revised waybills.

    By Courier Billing · · 7 min read

    What is in a Delhivery billing statement

    A statement covers one billing cycle and has one row per shipment, with around sixty columns. Most of them are charge breakdowns that are zero for a normal shipment. These are the ones you need:

    Delhivery statement columns used for client billing
    ColumnWhat it tells you
    waybill_numThe waybill (AWB). One row per shipment.
    pickup_dateFirst pickup scan. Decides which billing month the shipment belongs to.
    order_idYour shipper's own order reference. The best clue to which client booked it.
    zoneDelhivery's billing zone (A, B, C1, C2, D1, D2, E, F, or C and D on express).
    charged_weightChargeable weight in grams, already including volumetric weight.
    package_type / cod_amountPre-paid, COD or Pickup, and the cash to collect on COD.
    statusDelivered, RTO (returned to origin) or DTO (reverse pickup).
    gross_amountDelhivery's charge before GST: freight plus COD, RTO and other fees.
    CGST / SGST / IGST, total_amount18% GST on the gross amount, and the total you owe Delhivery.

    Some text cells are written in an Excel-escaped form such as ="1490…" so Excel keeps the leading digits. Courier Billing strips that wrapper itself, so waybill numbers and dates come through intact.

    Delhivery's cost: read it, don't recalculate it

    With DTDC, a franchise works its cost out from the DSR amount plus fuel and GST. With Delhivery there is nothing to work out: the statement already has the final number per waybill. Courier Billing stores that total as the shipment's cost, so profit is always your client price minus what Delhivery actually billed.

    Worked example · one surface shipment

    A 350 g surface parcel in zone C2: freight ₹38.00 plus a ₹1.00 per-shipment fee gives a gross of ₹39.00. GST at 18% is ₹7.02, so Delhivery's total for this waybill is ₹46.02. That total is the cost Courier Billing compares your client price with.

    Matching waybills to clients

    The hard part of Delhivery billing is that the statement has no client column. What it does have is the shipper's order ID, the contents and the origin centre, and those follow patterns. Courier Billing lets you write rules on them:

    • Order ID starts with, contains or equals a value (for example every order ID starting with a client's short name).
    • Order ID is a plain number of a given length, for clients whose system issues numeric order numbers.
    • Contents or origin centre match a value, for clients who always ship the same goods or from one hub.

    On import, rules assign what they can, and the dialog suggests new rules from the order-ID shapes it has not seen before. The rest can be assigned on Booking Data by search or in bulk.

    When the same waybill comes back

    Delhivery invoices on closure. A parcel picked up late in one cycle can appear in the next, and a returned parcel appears again with its RTO charge. Re-uploading those rows does not create duplicates: Courier Billing revises the cost of the waybill it already has. If the shipment is already on a client invoice, the invoice keeps the price it was billed at and only your profit moves.

    Each statement is also checked against the rate card it implies. Shipments whose charge does not fit that card are flagged, which is the quickest way to spot an overcharge or a weight dispute worth raising with Delhivery.

    From statement to client invoice

    1. Choose Delhivery as a courier during setup (or add it later in Profile → Billing locations).
    2. Upload the statement CSV in Booking Data. On the first upload, save it as your Delhivery account.
    3. Set each client's Delhivery rates by zone, or prefill them from your costs plus a markup.
    4. Review the assignment rules and assign any unmatched waybills.
    5. Generate the client's invoice. CGST and SGST or IGST is picked from the client's state.

    How to set those zone rates, and what to charge for RTO and COD, is in the Delhivery zones, RTO and COD guide. The product page for all of this is Delhivery billing software.

    Frequently asked questions

    Which Delhivery file should I upload?

    The billing statement CSV Delhivery sends for each billing cycle (usually fortnightly). It has one row per waybill with the zone, chargeable weight and every charge. Courier Billing recognises it from the header row, so there is no column mapping.

    Why are some waybills on two statements?

    Delhivery bills a shipment when it closes, not when it is picked up. A return (RTO) or a weight dispute can bring the same waybill back on a later statement with a new charge. Courier Billing updates that waybill's cost instead of adding a duplicate, and invoices already sent keep the price they were billed at.

    The statement has no client name. How do shipments reach the right client?

    Through assignment rules on the order ID, the contents or the origin centre, such as an order ID that starts with a client's prefix. The import suggests rules from the order-ID shapes it sees, and anything unmatched can be assigned by search or in bulk.

    Can one client invoice include DTDC and Delhivery shipments?

    Yes. Both couriers' shipments go into the same billing month, so a client who books with both gets one GST invoice with all their lines.

    Let the app do this math for every CN

    Upload your DTDC booking export and Courier Billing prices each consignment from your own rate card, shows the DTDC cost beside it and builds the GST invoice. Uploads and basic analytics are free forever.