Skip to content

Delivery Orders ​

A delivery order (DO) is the instruction to get finished goods out of the building: pack them, book a carrier, hand them over and track them to the customer's door.

It is the last of the three order records. The Sales Order says what was sold, the Work Order says what was built, and the delivery order says what ships.

The Delivery Orders module

Screenshot not captured yet — this page is written against the live build and will be illustrated once a delivery order can be taken through packing and booking.

Parts of this module are not finished — read this first

Delivery Orders is partly a first-phase build. The list, the record, packing, package types, change requests, manual booking and tracking are real and save to the server. Three things are not yet connected, and the screens give no sign of it:

WhatStatusDo this instead
Book with DHL in PulseNot connected. Nothing is sent to DHL or saved; the "booking" vanishes on reload — but you still get a success toastBook with the carrier yourself, then record it manually
Five tracking action buttons — Notify customer, Contact carrier, Reschedule delivery, Track remaining boxes, Raise claimRender and click, but do nothingContact the customer or carrier yourself. Only Refresh works
Hold dispatch on a change requestDoes not existRaising a CR does not stop a shipment — tell the warehouse directly

Each is called out again on its own page. Everything else in these guides describes behaviour that works.

In this section ​

Getting there ​

Delivery Order in the left sidebar, or go straight to /delivery-orders. Opening one takes you to /delivery-orders/{id}/overview, and each tab has its own address.

Where a delivery order comes from ​

There is no "Create Delivery Order" button in this module

The Delivery Orders list has no create action. A delivery order is generated from a work order and approved on the sales order before it ever appears here.

1

Generate DO on the work order

Once every unit has passed QA, Generate DO sends the delivery order for approval. It sits at Approval Pending.

2

An approver decides it

On the sales order's Delivery tab. Approval moves it to Confirm.

3

Someone presses Create Delivery Order

Also on the sales order's Delivery tab. This is the moment it enters this module, at the Packing stage.

An approved delivery order is not in this list yet

Approval Pending, Confirm and Rejected orders are deliberately kept out of the Delivery Orders list. If somebody says "the delivery order was approved" but you cannot find it here, it is almost certainly sitting at Confirm on the sales order, waiting for Create Delivery Order.

See the Sales Order Delivery tab.

The Five Stages ​

Only five stages appear in this module. Each is a coloured pill in the Stage column.

StagePill colourWhat it meansNext step
PackingAmberBeing packed and weighedPack and weigh
Ready to dispatchPurplePacked; the carrier has to be bookedBook shipment
In transitBlueWith the carrierIn transit
DeliveredGreenArrivedDelivered
CancelledGreyThe delivery will not happenCancelled

"Ready to dispatch" is labelled Book shipment on screen

The stored stage is Ready to dispatch; the pill reads Book shipment, because that is the action waiting for you. Both names mean the same thing — you will see the stored one in filters and in CSV exports, and the action name in the list.

It is also the one row where the Stage pill and the Next step column say the same thing. Everywhere else the two differ, which is the point of having both.

Nothing in this module cancels a delivery order

Cancelled has a pill, a journey heading and an empty state on every tab — but there is no cancel action anywhere in Delivery Orders, and no documented way to reach the stage or to undo it. If you need an order cancelled, that is a conversation with Sales on the sales order, not something you can do here.

Three stages you will never see here ​

StageWhere it lives instead
Approval PendingSales order → Delivery tab
ConfirmSales order → Delivery tab, as Create Delivery Order
RejectedSales order → Delivery tab. The work order can then send a new one

Retired stages ​

Three stages existed before the separate Order Verification step was removed. A one-time migration moved every order still in one of them to Packing:

Draft · Verification · Needs attention

If you find one of these in an old note or screenshot, read it as Packing.

How it fits together ​

StepRecordWhat it means
1Sales OrderWhat the customer bought, and the committed date
2Work OrderThe build instruction; serials, photos and QA
3Generate DOThe delivery order is sent for approval
4Approval → Confirm → CreateThe delivery order is released into this module
5Delivery OrderPacking, booking, tracking, delivery

The Five Tabs ​

TabAddressWhat it is for
Order Overview/overviewThe journey, items, parties, dates and totals
Ready for packing/packingConfirm the parties and carrier, add boxes, weigh in
Book shipment/book-shipmentBook DHL in Pulse, or record a booking made elsewhere
Order Tracking/trackingStatus, the shipment journey, the steps and the piece IDs
Activity/activityWho did what, and when

Each tab has its own address, so a pasted link opens on the right one.

The tabs are a sequence, not a menu

They follow the order the work actually happens in. A tab that is not relevant yet says so rather than showing an empty screen — "Nothing to pack yet", "Booking opens after verification". Full list of those states on each tab's own page.

What you can do ​

ActionWhere
See every delivery in flightThe list
Find one by DO number, sales order, customer or ship-toSearch and filters
Check what is going where, and to whomOrder Overview
Confirm the ship-to, contact and billing with the customerReady for packing
Correct any of those threeRaise CR
Add boxes, pick package types, weigh the shipmentReady for packing
Print 4×6 in box labelsReady for packing
Book DHL from inside PulseBook shipment
Record a booking made on the phone or a carrier siteBook shipment
Watch the carrier's scans, for a DHL or a manual bookingOrder Tracking
Copy the per-box piece IDs for a carrier queryOrder Tracking
Download the delivery challan or packing slipHeader ⋯ Export
See the whole audit trailActivity

Permissions ​

Everything in this module is gated on the delivery_orders module — not sales_orders.

PermissionWhat it allows
viewOpening the list, any order and every tab
editPacking, booking, package types
exportExporting the list to CSV
approveDeciding a delivery order or a packing change request

Which controls each one unlocks ​

Missing permissions hide controls rather than disabling them, so the screen simply looks simpler. This is what goes missing:

WithoutYou lose
viewThe module entirely — the sidebar entry and every address
editConfirm address / contact / billing, Confirm Carrier, Raise CR, + Add package, the Qty / Weight / package-type inputs, Add photos, Mark ready to dispatch, every Book shipment action, the tracking mark actions, and Manage package types
exportExport CSV on the list
approveThe Approve and Reject buttons in the change-request popup

Read-only is a perfectly normal state here

With view alone you can still open every tab, read the packing steps, see the boxes and follow the tracking. The packing tab simply renders its cards without the confirm buttons. If you expected a button and the card looks otherwise complete, it is almost always edit you are missing.

Full Sales Order access does not open this module

A user with every Sales Orders grant and no Delivery Orders grant cannot open this list, and finds the sales order's own Delivery tab closed too. The two are separate modules.

Video demonstrations ​