Skip to content

Create a booking

Step-by-step walkthrough of the Create Booking form — customer, addresses, cargo, rate calculation, save.

The Create Booking form turns a request into a real job (connote) in the system. This page walks through it field-by-field.

In the sidebar, click Create Booking under Pickup & Delivery.

The form is grouped into sections:

Select the customer this booking is for. The customer record drives rate-card eligibility, default payment terms, and notification routing.

Changing or clearing the customer. Click the × at the right of the customer box to clear it, then search for the right one. You can also type a new name over the old one. If the booking is already priced or has an address, Onyx asks before clearing.

When the customer is cleared or changed:

  • the freight rate and any charges that came from the old customer’s rate card are removed;
  • charges that apply only to the old customer are removed;
  • addresses, freight details and the addons you added yourself are kept, and are priced again on the new customer’s rate card.

When the customer can’t be changed. On an existing booking, the customer box is locked (🔒) if the booking:

  • has been sent to iDrv4 — iDrv4 would keep the old customer, because Onyx does not re-send a booking. Cancel it and rebook it for the right customer.
  • is on an invoice — the invoice is addressed to the old customer. Cancel that invoice first.

Hover over the lock to see which reason applies.

Pick how the job runs: Pickup, Pickup and Delivery, Delivery Only, or Local Start.

  • Local Start — the job is booked with its start site only. The start site needs a real address: it cannot be marked TBA, because iDrv4 cannot take a local start without one. Every stop after the start is decided on the road — the driver adds those stops from the app, and they show on the connote labelled added by driver. There is no automatic rate for a Local Start job; enter it manually.
  • Hourly Hire (job type) also uses the Local Start tab, plus optional Pickup and Delivery tabs, each with its own Add Pickup / Add Delivery button.
  • Pickup address — start typing the address; the autocomplete will offer matches. Once selected, the suburb, state, and postcode populate automatically.
  • Pickup contact — name and phone of the person at the pickup site.
  • Pickup window — optional time bounds. If left blank, the driver will use the default for the customer.
  • Add Pickup — add another pickup stop. Each stop keeps its own date and time, and each one reaches iDrv4 at its own time.

Don’t have the full address yet? opens Suburb / State / Postcode fields for whatever is known, and a TBA tick for “address not yet known — book now, add the real address later”.

  • If you type a suburb that disagrees with the one the autocomplete picked, your suburb wins — the stored address line, map position and zone are brought into line with it.
  • A TBA delivery is forwarded to iDrv4 with no location; the real address is filled in later. Reopening the booking keeps the TBA leg.
  • Picking a street (rather than a full address) from the autocomplete no longer writes the street name twice. If an older booking was rejected by iDrv4 with “Delivery address is invalid”, re-pick the address from the autocomplete — retyping it does not repair the stored text.

Same fields as Pickup, for the destination site, with Add Delivery for further drops.

The card marked lane destination is always the last drop. A delivery added with Add Delivery is listed above it and visited before it, whatever its time says. If a stop is timed earlier than the one visited ahead of it — or a time window ends before it starts — a yellow note on the Delivery tab names the stops. A stop with no date of its own is read on the delivery date. The note is a reminder only: check the order and times, and you can still save.

Add one row per item type:

  • Packaging (Pallet, Carton, Crate, Bundle, Loose Item, Skid)
  • Quantity
  • Dimensions (length × width × height in cm)
  • Weight (kg)
  • Stack — may another pallet go on top of this, and how many high in total
  • DG — a switch that opens the dangerous-goods panel for that row

Use + Add item to add more rows. The system computes chargeable weight as max(actual weight, dimensional weight) per item.

Three meaningfully different answers, and the blank one is not a shrug:

  • Blank — nobody established it. Dispatch treats the freight as un-stackable, which is the safe assumption, and says on screen that it is assuming rather than knowing.
  • No — somebody established that it may not be stacked. A different fact, recorded as one.
  • 2 / 3 / 4 high — how many may be stacked in total. The height is the half that does the work; “stackable” on its own cannot be planned with.

It feeds the load plan on the dispatch board. Leaving it blank costs nothing but deck space.

Turning the DG switch on opens a panel under that row: DG Class, Type (packed or bulk), UN #, and Subsidiary risks — a picker for the other classes the item also presents, listed back on the button once chosen.

DG is captured per freight row, so one pallet on a consignment can be dangerous while the rest is not. The class and type are forwarded to iDrv4, the type selects which DG levy add-on applies to the price, and the class drives segregation when the freight is loaded. See Dangerous goods.

Handling options (Tailgate, Dangerous Goods, etc.) are addon-driven buttons on the Pickup and Delivery tabs — which buttons appear is add-on configuration, not a fixed list, and there are no Express/Insurance ticks. Selecting one applies its add-on to the price. Express is a service level (next section), not an option.

Pick the service level (e.g., Standard, Express). Multiple levels can be quoted in parallel from the Quotes page; on a booking you commit to one.

Pick the Job Type (FTL, LTL, Hourly Hire, Towhaul, Empty Run). It drives the pricing:

  • Charge By is constrained by Job Type — FTL → Load or Per Tonne; LTL → Pallet, Chargeable Weight, or Per KG (actual weight); Hourly Hire → Hourly (time); Towhaul → Load; Empty Run is non-priced (no charge). The Charge By picker only shows the methods valid for the chosen job type, and the price matches only on a rate card of that method.
  • Loads (FTL) — the Loads field defaults to the total packaging quantity and tracks it as you change Qty (a 20ft container Qty 3 → 3 loads). If you type a Loads value yourself, it sticks — Qty changes stop overriding it. FTL total = rate × Loads.
  • Per Tonne (FTL) — enter the tonnage, or tick use freight packages weight to derive it from the items. The footer shows Total Tonnes.
  • Per KG (LTL) — charges on the actual (dead) weight; the footer shows Total Dead Weight.
  • Hourly (Hourly Hire) — Hours defaults to the card’s minimum hours, and the rate is keyed by the vehicle type behind the chosen transport configuration.

Click Calculate Rate. The system:

  1. Resolves the pickup and delivery zones from the suburb/postcode.
  2. Looks up the rate entry that matches the customer, zone pair, service level, and charging type.
  3. Computes the price (with tiers, surcharges, and service-level multipliers applied).

The breakdown appears with base rate, add-ons (fuel levy, GST, surcharges), subtotal, and total. Each add-on line shows where its value came from — · this lane (a rate entry’s Addons/Discounts), · rate card, · global, or · 1-off. A lane’s custom add-on or value override (e.g. GST 12%, a lane-specific Fuel Levy) now appears here; the pencil on a line sets a per-booking 1-off value. Exactly one GST and one of each add-on appears.

You can also add manual cost lines (surcharges) to the breakdown. Each has a pencil to change its amount — on a new booking and on a reopened one — and an × to remove it. A manual percentage line added before there is a rate shows as pending rate and is still saved. Manual lines re-render when the booking is reopened.

A mandatory GST line has no remove button; to book with no GST, use its 0% control (“Set to 0% — no GST on this booking”), which records that nobody is charged GST on purpose.

If the price came from a global card rather than one of the customer’s own, the form shows a “Using global rate card — verify the price” warning — see Rates hierarchy for how the fallback works.

If no rate is found, the system falls back to a candidate-rate browser — you’ll see a small table of matching rate-card rows; click Select Rate to pick one manually.

Click Save. A new connote is created with a unique number, the status set to Pending, and it appears at the top of the Jobs list.

The booking is also checked against the published booking policy. Normally those checks only observe. If an administrator has switched the policy to enforce:

  • an error refuses the save, with the reason shown;
  • a warning opens “This booking needs a reason” — give a reason for each warning and Accept and save, or Go back and fix it. The reason is recorded against the booking.

See Validation policies.