Skip to content

Rates hierarchy: default, customer & supplier rates

How rate cards are organised — customer-assigned cards, cards that apply to all customers, which card wins a lane, and where supplier (buy-side) rates fit.

Every price in the portal comes from a rate card. Who a card prices is set on the card itself: the customers assigned to it, and its Applies to all customers tick. This page explains the hierarchy the pricing engine walks, and where supplier rates fit in.

Assign one or more customers to a card (Rates → Rate Cards → open the card → Customers) and it becomes that customer’s customer rate. For each pair of zones it tries, the engine looks at the customer’s own assigned cards before the all-customer cards — see Which card wins below.

Use customer rates for negotiated agreements: a customer-specific pallet schedule, contracted per-kg rates, special lanes, project pricing.

A card with Applies to all customers ticked (in the card’s edit drawer, under the customers picker) is a default (global) rate: it prices customers it is not assigned to. Untick it for a card that should only price the customers listed on it.

Two controls shape this fallback:

  • Global fallback toggle (Settings → Rate Card Settings): set per customer, ON by default. Switch it OFF and that customer’s bookings price only from their assigned cards — a lane with no match returns “no rate” instead of silently falling through to shared pricing. Use this for customers whose agreement must never be priced off the house rates.
  • Operator visibility: the booking form shows a “Using global rate card” warning whenever the price came from a default card rather than one of the customer’s own, so the operator can verify before booking.

The engine walks the zone pairs most specific first — a suburb or town zone before the broad metro or state zone that contains it — and, within each pair, the customer’s own cards before the all-customer cards. Then it prefers a card matching the chosen transport configuration and charge method, then the lowest base rate, then the oldest card, so the outcome is deterministic.

Customer and default rates are both sell rates — what you charge your customers. Supplier rates — what a carrier or subcontractor charges you (buy rates) — are not yet part of the pricing engine. The system already records which companies are suppliers, and manifests support subcontractor assignment, but no supplier price is stored or applied anywhere today.

The planned direction is to reuse the same rate-card machinery — zones, lanes, charge methods, tiers, service levels — with cards assigned to suppliers instead of customers. A booking could then carry both a sell price (from the customer/default hierarchy) and a buy cost (from the supplier’s card), enabling buy-vs-sell margin per job and supplier cost comparison per lane. Until that ships, treat every rate in the portal as a sell rate; supplier cost agreements need to be tracked outside the system.

TierWhat it isWhen it applies
Customer rateCard with customers assignedTried before default cards for the same zone pair
Default rateCard with Applies to all customers tickedFallback for everyone — unless the customer’s Global fallback is OFF
Supplier rateBuy-side card assigned to a supplierPlanned — not in the engine yet
  • Rate cards & pricing — how a single card prices a lane: zones, charge methods, tiers, add-ons.
  • Rate card settings — the per-customer Global fallback toggle and tenant-wide pricing defaults.