The big picture
The delivery note is paperwork. The invoice is what moves stock.
A delivery order (delivery note, challan, DN) records what physically left your premises against a sales order. This module adds the logistics around it: which carrier took it, under what consignment number, how many packages, how heavy, where it is now, and who signed for it.
A delivery note does not move stock. It never has. The invoice is the single stock-out point on the sell side. Dispatching a note rolls the shipped quantities onto the sales order's delivered counters and prints a document for the driver — your on-hand figure does not change until the invoice is raised. Trainees lose an hour to this; do not be one of them.
Where the screens live
Deliveries
Every delivery note, filterable by status, carrier and invoice.
/sales/deliveriesCarriers
A supplier with the Carrier role ticked. Tab on the suppliers list.
/purchases/suppliersE-way bills
Raised from an invoice; the note links to it.
/sales/eway-billsUpdate shipment
Add the LR after the truck has gone. Detail screen.
tap a deliveryOnly the three routes above are URLs; the note's form and detail open by tapping through. Permissions: canViewSales to see, canManageSalesOrders to create, dispatch and close, canCreateInvoice to bill from a note.
The carrier master
A carrier is a supplier you pay freight to — not a new kind of record.
Transporters live in the supplier master with a Carrier role ticked. That is deliberate: a carrier sends you bills, and bills belong on a supplier. Nothing new to learn, and their freight lands in Vendor Bills with no extra plumbing.
Suppliers → open or create the transporter → Role card → tick Carrier. A supplier can be both Vendor and Carrier. Then fill the block that appears:
| Field | What it is for |
|---|---|
| Default mode | Pre-selects road / rail / air / ship / courier on a new note. |
| TRANSIN / GSTIN | The transporter ID an e-way bill needs. Validated: "Enter a valid 15-character GSTIN / TRANSIN". |
| Tracking URL template | Turns an LR number into a working link. Must contain the literal {tracking} — e.g. https://www.delhivery.com/track/package/{tracking}. |
| Service notes | Free text for the desk — cut-off times, which depot, who to ring. |
The Carriers tab on the suppliers list hides itself until at least one supplier is marked as a carrier. If you cannot find it, nothing has been ticked yet.
"The carrier dropdown on my delivery note is empty." The fix is on the supplier, not the delivery note — tick Carrier. The note itself will tell you: "No carriers yet — tick Carrier on a supplier".
Raising a delivery note
Always against a sales order — there is no free-standing delivery.
Sales → Deliveries → New Delivery Order. You are asked for the sales order first, and only orders that are live with something still undelivered are offered. Then:
- Tick the lines going out and type the quantity for each (Select all / Clear help on a long order).
- Check the ship-to address. It is prefilled from the customer's shipping address and is a snapshot — editing it here does not change the customer master, which is what you want when one consignment goes to a site office.
- Fill the Shipment card (§03) — all of it optional at this stage.
- Save as draft, or Save & dispatch.
| It refuses | Meaning |
|---|---|
| "Pick at least one line with a quantity to deliver." | Nothing ticked, or every quantity is zero. |
| "Line "…": can't deliver more than the remaining N." | Someone else shipped part of this order since you opened it. |
| "Line "…": only N is left to deliver on SO-… — another delivery may have gone out since this one was opened." | The same race, caught at save time against the live order. Reload. |
The shipment block
Everything optional — the LR number usually arrives after the truck does.
The card says so itself: "Who is carrying it and under which document. All optional — the LR number can be added after the truck leaves." That is the design. Do not hold a dispatch waiting for paperwork.
| Field | Notes |
|---|---|
| Carrier | From the supplier master (§01). |
| Mode | Road, rail, air, ship, courier, own vehicle, customer pickup. |
| Vehicle no. | e.g. GJ 01 AB 1234. |
| Transporter (free text) | Only for own vehicle or a one-off tempo with no account. If they are a real carrier, put them in the master. |
| LR / consignment no. | LR, AWB or docket — the number the customer will quote at you. |
| LR date, E-way bill no. | The 12-digit NIC number sits here on the note. |
| Tracking link | Filled from the carrier's template the moment there is an LR number. |
| Packages, Gross weight | Weight has its unit picker inside the field — kg / g / mt / lb. "2" can mean 2 tonnes. |
| Expected delivery | Recorded on the note. Nothing chases it yet — see §08. |
| Freight payer, Freight estimate | Paid / to-pay / billed to customer, and the quoted figure. |
From e-way bill
If an e-way bill was already filed against this order's invoice, From e-way bill copies its transport block — transporter, vehicle, LR, mode and number — in one press. It matches the carrier by TRANSIN, not by name, so a carrier whose TRANSIN is missing will not be matched even if the name is identical.
Gross weight only auto-fills when every picked line's item has a weight on file — all or nothing — and once you type over it, it is never recalculated.
Tracking link stops auto-filling the moment you edit it by hand.
Clearing a field really clears it. The shipment block is written whole, and a block where every field is blank is stored as no shipment at all — the card then disappears from the detail screen and the PDF.
Dispatching
The moment the note becomes real — and the quality gate that can stop it.
Save & dispatch does four things in order: raises any pre-dispatch quality inspections, rolls the shipped quantities onto the sales order, stamps the note dispatched, and writes a dispatched event.
"A blocking pre-dispatch inspection is open on this delivery. Clear it, then dispatch from the delivery note." Clear the inspection in Quality, then come back and dispatch — the draft is still there, holding its number.
If the goods are short, over-committed or otherwise odd, you get a "Dispatch anyway?" confirmation listing the warnings, with Back and Dispatch anyway. It is a warning, not a block.
You will see: "… The delivery note was saved as a draft — press Save & dispatch again to retry it, or open it from the delivery orders list." Press it again on the same draft. Starting a new note mints a second DN number for one consignment, which is the mess this message exists to prevent.
Delivered, returned, cancelled
A small state machine, and one transition people always look for that isn't there.
| Action | From | What it does |
|---|---|---|
| Mark delivered | dispatched | Closes the note. "Only a dispatched delivery can be marked delivered." |
| Mark returned | dispatched | Goods came back. Reverses the delivered quantities on the sales order. Reason required. |
| Cancel delivery | draft, dispatched or delivered | Reason required. Blocked if an invoice was raised from it: "An invoice was raised against this delivery. Cancel that invoice first, then the delivery." |
Only the shipment block and the ship-to, through Update shipment. Lines and quantities are frozen — there is no Edit button on a dispatched note and looking for one is wasted time. A note can never be deleted, by anyone.
Tracking & the list
Answering "where is my order?" without ringing the transporter.
The detail screen shows Track <LR no> once there is a carrier with a template and an LR number. Two things must both be true, which is why a missing link is nearly always a missing {tracking} placeholder on the carrier (§01).
The Deliveries list carries the columns a dispatch desk actually needs — DO #, date, customer, sales order, carrier, LR no, lines, qty, status and invoice — plus a carrier filter, the tabs All · Draft · Dispatched · Delivered · Returned · Not invoiced · Cancelled, and CSV export. Search covers "DO #, customer, sales order, LR, e-way…", so a customer quoting an LR number can be found from that number alone.
Every dispatch, delivery, return and cancellation writes a timestamped event against the note, and the latest one shows on the list. The full timeline UI — and the "picked up / in transit / out for delivery" buttons — are D1 (§08). The data is already being kept, so nothing is lost in the meantime.
Invoicing what went out
The challan is the source; the invoice is where stock finally moves.
A delivered note that nothing has billed shows "Delivered but not invoiced. Raise the bill for what went out on this challan." — press Create invoice and a draft invoice is raised from the note's own lines and linked back to it. Finalising that invoice is what decrements stock (§00).
The list's Not invoiced tab is the working queue for this. A month-end habit of emptying it is the difference between a clean ledger and a hunt.
What is not here yet
Said plainly, so you can plan around it.
This release is the transport layer on the note. Still to come:
- Proof of delivery — receiver name, signature capture and photos.
- The event timeline on screen, with quick buttons for picked up / in transit / out for delivery / attempted. Events are already being written (§06); only the UI is missing.
- Alerts — dispatched / delivered / overdue notifications, and the customer dispatch email. Expected delivery drives nothing today: nothing goes overdue on its own, so a late consignment is still found by eye.
- Freight actuals — carrier bills linked to consignments, a freight-outward account, and the Freight recovery and Carrier performance reports. Only the estimate exists now.
A public customer-facing tracking page, carrier API integrations (Delhivery, Shiprocket and the like), and packing slips or labels. Track through the carrier's own link (§06).
Quick reference
The page to keep open while your desk learns it.
| Concept | Where / what |
|---|---|
| Routes | /sales/deliveries · /purchases/suppliers · /sales/eway-bills |
| Make a carrier | Supplier → Role card → tick Carrier |
| Tracking template | Must contain {tracking}, and the note needs an LR number |
| Statuses | draft → dispatched → delivered, plus returned and cancelled |
| Refused | delivered → returned (use a sales return), editing a dispatched note's lines, deleting any note |
| Editable after dispatch | Shipment block + ship-to, via Update shipment |
| Events | dispatched · picked_up · in_transit · out_for_delivery · delivery_attempted · delivered · returned · note (four written today) |
| Modes | road · rail · air · ship · courier · own_vehicle · customer_pickup |
| Freight payer | paid · to_pay · customer_billed |
| Permissions | canViewSales to see · canManageSalesOrders to act · canCreateInvoice to bill |
The note is the paperwork; the invoice is the stock. Dispatch tells the sales order what has gone and gives the driver something to carry — nothing else. Everything in this guide that surprises people (why on-hand didn't move, why a delivered note can't be returned, why cancelling is blocked by an invoice) follows from that one sentence.