Skip to content

Addon charges

Surcharges, fees, discounts, and taxes (fuel levy, tailgate, GST) applied on top of the base freight rate.

Addon charges are everything applied on top of the net freight rate — surcharges, fees, discounts, and taxes. They’re what turns a base rate into the final quote. Manage them under Rates → Addons; per-card overrides live on a card’s Addon Charges tab. The addon list is filtered by tenant region: an AU tenant sees the AU addons — GST is the AU tax.

Rates are stored net (ex-GST, ex-fuel). At quote time the engine prices the freight, then runs the add-ons in order — surcharges and discounts first, tax (GST) last — to reach the grand total. See Rate cards & pricing for the full flow.

The Type column groups add-ons:

TypePurpose
SurchargeAdds cost (fuel levy, tailgate, residential, hand-unload…)
FeeA fixed charge for a service
DiscountReduces the price
TaxGST

The Value is interpreted by the add-on’s value type:

  • Percentage — a % of the amount it applies on (fuel levy, GST).
  • Fixed amount — a flat dollar amount (e.g. a tailgate fee).
  • External Source — a live feed (e.g. the JAT fuel levy) that fetches the current value, with a fallback used if the feed is unavailable.
TriggerWhen it applies
MandatoryAlways (e.g. GST)
AutomaticWhen its toggle/condition is on (e.g. tailgate when the booking is tailgate)
ManualOnly when the operator adds it to the booking

A rate card can also override an addon’s trigger: an addon that is Manual globally can be Mandatory on a specific card — the mechanism behind a card’s fuel levy auto-applying.

An add-on’s value can be set at several levels; the most specific wins:

per-booking one-off → rate entry (this lane) → customer → rate card → global default.

  • Rate entry (lane) — a rate card’s per-lane Addons/Discounts: override an add-on’s value on that lane, add a custom lane-only add-on, or exclude an inherited one.
  • Rate card — the card’s Addon Charges tab; applies to all its lanes.
  • Per-booking one-off — the pencil on an add-on line in Create Booking, for that booking only.

All levels flow into the booking price, and each add-on line shows its source (· this lane / · rate card / · global / · 1-off). A per-card/lane value also beats an External Source feed — a fixed Fuel Levy is used instead of the live API rate.

  • Fuel levy is customer-specific and lives on the rate card. Each customer’s card carries its own %, which auto-applies. To give a customer a custom levy, edit the override on their card. For a spot/quote customer with no card rate, an operator adds the Fuel Levy (JAT) add-on to apply the live market rate.
  • GST (10%) is a mandatory tax applied on the taxable base, after other add-ons. A lane GST override (e.g. 12% on a rate entry) beats the global 10% — the lane value is what’s charged on that lane.

The Handling Options buttons on the Create Booking Pickup and Delivery tabs are add-ons — they are not hard-coded. Each tab shows exactly the add-ons assigned to its form target:

TabForm target
Pickup handling optionscreate_booking_pickup
Delivery handling optionscreate_booking_delivery

You control which options appear on each tab through the add-on’s form targets (the “where it appears” setting):

  • Show an option on a tab — assign its add-on to that tab’s form target.
  • Show the same option on both tabs — assign the one add-on to both targets (an add-on can belong to many form targets).
  • Standardise the set — assign the add-ons you want to both targets and remove the rest from each. The two tabs then present an identical list.

Pickup and Delivery drift apart only because different add-ons were assigned to each target (e.g. Dangerous Goods on Pickup only, Residential on Delivery only) — realign the assignments to fix it, no code change needed. If an option you want doesn’t exist yet (e.g. Extra Crew/Jockey, Authority to Leave), create the add-on first, then assign it to both targets.

For the full list of form targets across the system (bookings, admin quotes, the public widget, invoices), see the Unified Addons guide.

  1. Click Add addon (or Edit on a row).
  2. Set the type, value type + value, and trigger.
  3. Set the scope (global, or a card/customer override) and display order.
  4. Assign its form targets (where it appears — e.g. both booking Pickup and Delivery for a shared handling option).
  5. Save — it applies to new quotes and bookings.