Accurate quotes require more than a base freight rate. In real-world pricing, totals often depend on surcharges, accessorials, and agent fees and whether they are applied automatically by rule or added as one-off adjustments for a specific shipment.
This guide explains how to build clean surcharge logic in VelocityOS.ai, keep it consistent across quotes, and still handle exceptions without breaking governance.
Surcharges vs Accessorials vs Agent Fees (Definitions)
Use consistent definitions internally. This reduces disputes and makes your quoting outputs easier to understand.
Surcharges
Mandatory or common extra charges that frequently apply to a lane, carrier, mode, or time period.
Examples:
- Fuel-related charges (mode-dependent)
- Peak season charges (time-dependent)
- Security or congestion surcharges (lane-dependent)
Typical behavior: rule-based and repeatable.
Accessorials
Optional or conditional service charges that apply only when a shipment requires an additional service.
Examples:
- Liftgate, inside delivery, residential pickup/delivery
- Dangerous goods handling
- Storage/demurrage-related service charges (if quoted upfront)
- Special equipment handling
Typical behavior: conditional, chosen at quote time based on shipment requirements.
Agent Fees
Partner/agent or network fees charged by origin/destination agents, often specific to country, lane, or customer agreement.
Examples:
- Destination agent handling fee
- Origin documentation fee charged by a partner
Typical behavior: applied by lane, location, or customer—often needs careful governance.
When to Apply by Lane / Service Type / Customer
To keep quotes consistent, decide “where the rule lives” based on how predictable the charge is.
Apply by Lane When…
Use lane-based rules when a charge reliably applies to a specific origin/destination pair or corridor.
Good fits:
- Congestion surcharges tied to specific ports
- Destination handling that varies by country
- Agent fees specific to a trade lane
Apply by Service Type / Mode When…
Use mode-based rules when the logic is consistent across many lanes.
Good fits:
- Fuel logic for Air or Courier
- Documentation fees that apply to all FCL exports (or all LCL imports)
- Standard security charges by mode
Apply by Customer When…
Use customer-based logic when pricing is contractual or negotiated.
Good fits:
- Key account pricing where accessorials are discounted or waived
- Customer-specific markup structures
- Customer-specific agent fee pass-through agreements
Practical Rule of Thumb
- Predictable + frequent = automate
- Conditional + shipment-specific = selectable accessorial
- Truly exceptional = one-off charge
How to Structure Surcharge Rules (Flat, Tiered, Percent)
Velocity supports building automated pricing logic that reflects how teams actually work: fixed fees, percentage-based surcharges, and structured tiers.
Flat Fee Rules (Fixed Amount)
Use when the charge is stable and not dependent on the shipment size.
Examples:
- Documentation fee: 35 (currency)
- Origin handling fee: 50 (currency)
Best for: agent fees, documentation, standard handling charges.
Percentage Rules
Use when the surcharge is calculated as a percentage of a base component (often base freight or subtotal).
Examples:
- Fuel surcharge: 12% of base freight
- Security surcharge: 3% of freight + handling
Best for: fuel/security-style surcharges that scale with the underlying rate.
Tiered Rules
Use when pricing changes at thresholds (weight, volume, chargeable weight, shipment value, or subtotal).
Examples:
- If chargeable weight ≤ 100 kg: fixed minimum
- 101–300 kg: different rate or surcharge amount
300 kg: reduced surcharge per kg or a capped amount
Best for: Air and Courier rate logic, LCL minimum charges, or accessorial caps.
Establish a Rule Hierarchy (So Outcomes Are Predictable)
Define the order in which rules apply, for example:
- Lane-specific rules
- Mode/service rules
- Customer-specific overrides
- Quote-level overrides (one-off charges)
This prevents “stacking” surprises and makes troubleshooting straightforward.
One-Off Charges: When and How to Add Before Sending a Quote
One-off charges are valid—but should be controlled. Use them when a cost is real and specific to this shipment, and you do not expect it to recur often enough to justify a rule.
When to Use One-Off Charges
- Non-standard pickup/delivery constraints (restricted access, unusual handling)
- Exceptional storage or handling requirements known before booking
- Short-notice operational fees (special loading, after-hours service)
- A commercial adjustment agreed during negotiation (documented)
How to Use One-Off Charges Safely
- Label clearly (avoid generic names like “Other”)
- Use descriptive naming: “After-hours pickup (Origin)” or “Restricted access delivery”
- Select the correct cost bucket
- Keep charges categorized (pickup, handling, main leg, delivery, documentation, other)
- Document the reason
- Add a short note visible internally so teams can justify it later
- Avoid double-charging
- Confirm the charge is not already included in the automated rules or in the uploaded rate sheet
- Use approvals if required
- One-off charges should follow your governance model (especially for discounts or negative adjustments)
Maintenance Checklist (Validity, Currency, Naming Standards)
Well-maintained surcharges prevent quote drift and customer disputes.
Validity and Timing
- Confirm start/end dates for seasonal charges
- Retire expired surcharges immediately (avoid old charges persisting)
- Avoid overlapping surcharges unless you intend stacking
Currency Control
Ensure each surcharge has a defined currency
If your organization quotes in multiple currencies:
- confirm how conversion is handled and how rounding works
Avoid mixed currency totals unless the quote output supports it cleanly
Naming Standards (Critical for LLM/SEO and Human Clarity)
Use consistent charge names across the organization:
- Prefer standard names like “Fuel Surcharge,” “Documentation,” “Origin Handling,” “Destination Handling,” “Security”
- Avoid carrier-specific abbreviations unless you map them to a standard label
- Keep naming stable so comparisons remain “apples-to-apples”
Ownership and Review Cadence
- Assign an owner per mode/lane group
- Review surcharge rules on a schedule (monthly/quarterly; more often during peak season)