Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Freight
  3. Load-Board Management Suite v 19.0
  4. Sales Conditions FAQ

Load-Board Management Suite

by Grevlin Global Corp. https://grevlin.com
Odoo

$ 538.13

v 19.0 Third Party
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Discuss (mail)
• Fleet (fleet)
• Inventory (stock)
• Invoicing (account)
• Project (project)
• Website (website)
Community Apps Dependencies Show
• Advanced Map View - Grevlin Visualisation Suite
• Asset Geo Tracking - Grevlin Visualisation Suite
• Universal Scale Reader
Lines of code 17615
Technical Name grev_od_freight_manager
LicenseOPL-1
Websitehttps://grevlin.com
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Discuss (mail)
• Fleet (fleet)
• Inventory (stock)
• Invoicing (account)
• Project (project)
• Website (website)
Community Apps Dependencies Show
• Advanced Map View - Grevlin Visualisation Suite
• Asset Geo Tracking - Grevlin Visualisation Suite
• Universal Scale Reader
Lines of code 17615
Technical Name grev_od_freight_manager
LicenseOPL-1
Websitehttps://grevlin.com
  • Description
  • Documentation
  • License
🚚 LOAD-BOARD MANAGEMENT SUITE

Load-Board Management Suite — Multi-tenant Freight Dispatch

A production-grade freight load-board platform for Odoo 19. Run carriers, cooperatives, fleet owners and brokerages on one dispatch board with live GPS maps, portals, dual mobile REST API and optional SaaS billing.

✓ Odoo 19 Community & Enterprise ✓ REST API v1 included ✓ SaaS-ready
▶ WATCH IT IN ACTION

See the Load-Board Suite live

A guided tour of dispatch, live GPS tracking, driver portal and shipper tracking — end‑to‑end in Odoo 19.

▶ Watch on YouTube
Grevlin Load board Manager - multi-tenant dispatch, live GPS, REST API

Load-Board Management Suite replaces the patchwork of phone calls, spreadsheets and disconnected GPS tools that small carriers, coops and brokers use today. Post loads, assign drivers, track trucks on a live map, message the road, capture proof‑of‑delivery and auto-invoice the shipper — end‑to‑end, in one module.

Core Features

Everything a modern freight operation needs — built on Odoo primitives and ready on day one.

🏢

Multi-level Tenancy

One res.company per tenant with parent/child tenants for coops and pools. Native Odoo isolation via record rules — no shared-company collisions.

📊

Live OWL Dashboard

Dispatcher map with 8‑state pipeline banner, embedded kanban of loads and bus.bus auto-refresh on every state change, alert and geofence event.

📍

Live GPS & Geofences

Delegated to grev_od_asset_tracking. Geofence entries auto-arrive stops, cascade load states and close journeys — zero-duplication.

🚚

Loads & Multi-stop Planning

10‑state load lifecycle, ordered pickup/delivery/waypoint stops, time windows, POD + signature capture, hazmat flags, cold‑chain temperature tracking.

💰

Rate Cards & Pricing

Flat, per-km, per-ton or per-ton-km rates with lane (zone×zone), equipment and date filters. Accessorials with split billable/payable flags for clean brokerage margins.

🚀

OSRM Routes & Embedded Map

One-click distance, duration and polyline from the OSRM endpoint, rendered straight on the load form via an embedded map widget. Haversine fallback so pricing never blocks on network hiccups.

📱

Dual Mobile REST API

Uber-style split: /api/freight/v1/driver for professionals, /shipper for customers, plus public tracking. Scoped bearer tokens with SHA‑256 hashing.

👤

Four Loadboard-Style Portals

Driver, loader (cargo owner + dock worker), broker (sub-carrier), and tenant manager — each lands on a dedicated workspace with brand-tinted hero, KPI tiles and live counts. Login redirects every user straight to their role.

💬

Real-time Messaging

Threaded dispatcher↔driver chat over bus.bus with info, instruction, alert and emergency types. Emergency messages auto-spawn a critical alert.

🤝

Internal & Brokered in One

Self-dispatch own drivers or broker to sub-carriers in the same load. Margin auto-computed; auto-invoicing fires the shipper bill on assign and the carrier bill on dispatch — no manual posting.

⚠

Alert Engine

ETA miss, idle vehicles, geofence skip, HOS breach, license expiry, emergency — three severities, detection crons every 10-15 minutes, resolution workflow.

📈

Trip P&L Report

Live PostgreSQL view of delivered loads with pivot, graph and list: revenue, cost, margin, cost/km, margin % — sliced by tenant, driver, vehicle, carrier, month.

🏦

Optional SaaS Mode

System parameter grev_freight.saas_mode activates plan tiers, trials, per-load fees and monthly subscription invoicing. Off by default for on‑premise installs.

🛡

Driver Compliance

License class & expiry tracking with 14‑day advance alert, HOS 7-day rolling remaining hours, skills catalogue (hazmat, cryo, tanker), emergency contact.

⚖

Onboard Scale Capture

Optional grev_od_scale_reader integration on drivers (portable) and vehicles (weighbridge) — one click captures cargo weight into the load.

📢

Driver Proposals on Open Offers

Drivers see posted loads on a built-in load board, submit a one-click bid or counter-rate, and watch decisions in real time. Multiple drivers can compete on the same load — the dispatcher reviews and approves the winner from the tenant portal or the backend.

📦

Dock-Side Loader Confirmations

Warehouse staff at shipper or consignee sites confirm pickup-ready and goods-received with weight, signer name and signature directly from the loader portal — every action audit-logged on the load thread.

📍

Per-Stop Driver Updates

Drivers walk the timeline stop-by-stop — en route, arrived, completed, skip — with the parent load auto-advancing through at-pickup, in-transit, at-delivery and closing on the final delivery.

From Posted Load to Paid Invoice

A clean golden path — every transition fires bus.bus updates to the dashboard, portals and mobile apps.

📝

1. Post

Shipper posts load via portal or REST API.

🎯

2. Assign

Dispatcher books internal driver or brokers to sub-carrier.

📍

3. Track

Live GPS + geofences auto-arrive stops on the map.

📄

4. Deliver

Driver captures POD + signature; state = delivered.

💳

5. Invoice

Auto out-invoice on assign; auto carrier bill on dispatch.

Built for Six Roles

Platform Operator

Onboards tenants, manages plans, runs the monthly billing cron, sees cross‑tenant operations.

Tenant Manager

Runs a carrier, coop, pool or fleet — manages drivers, vehicles, rate cards, sub-carriers.

Dispatcher

Posts, assigns, routes and monitors loads on the live map; messages drivers; resolves alerts.

Driver

Loadboard portal: today's loads, per-stop status updates, available offers, propose & cancel bids, POD, dispatcher chat with emergency.

Loader (Shipper / Dock)

Posts loads, watches market, tracks shipments, shares public tracking URL. Dock-side staff confirm pickup-ready and goods-received with weight + signature.

Broker / Sub-carrier

Dedicated broker portal to review brokered offers, accept or decline, push status milestones, dispatch chat — plus GPS-webhook for live tracking.

A Visual Tour of the Backend

Every screen below is the real Odoo backend — dark theme, native list, kanban, form, map and pivot views.

Live dispatch dashboard with 8-state pipeline and embedded kanban

Live Dispatch Dashboard

OWL client action: KPIs, pre-dispatch & in-motion pipeline, dispatch mode split, equipment counts and an embedded filtered kanban — auto-refresh on every bus.bus event.

🚚 Loads & Operations

Load form with embedded OSRM route map

Load form — with embedded route map

10-state lifecycle, multi-stop planning, OSRM polyline rendered straight on the form.

Loads in map view with selected load route highlighted

Load map view — route on click

Pick a load on the side panel and the origin→destination route lights up live.

Kanban pipeline of loads grouped by state

Load kanban

Drag-and-drop pipeline grouped by state; each card shows shipper, driver, vehicle and rate.

List view of loads with revenue, margin and state

Load list

Distance, revenue and margin at a glance; filterable by tenant, dispatch mode, shipper.

Load form details with shipper, consignee and stops

Load form — header & pricing

Header buttons, dispatch mode, shipper, consignee, driver, vehicle and rate-card breakdown.

Driver and vehicle assignments per load

Assignments

Auditable history of who/what was assigned to each load, with timestamps.

Shipper quotes pipeline

Quotes

Shipper requests → tenant quote → accept → auto-create the load. Versioned per shipper.

Alerts list with severity and origin

Alerts

ETA miss, idle, geofence skip, HOS breach, license expiry, emergency — three severities with resolution workflow.

👤 Parties — Drivers, Vehicles, Carriers, Tenants

Drivers list with availability and HOS

Drivers list

Availability, license class, HOS remaining hours, on-time rate and active vehicle.

Driver form with skills, license, HOS and emergency contact

Driver form

Skills, license & expiry, HOS, emergency contact, optional onboard scale device.

Fleet vehicles list extended for freight

Vehicles list

Native fleet.vehicle extended with equipment type, capacity, weighbridge scale and tracked-asset link.

Vehicle form with capacity and equipment

Vehicle form

Equipment type, capacity, fuel, scale device, live position via tracked asset.

External carrier vehicles

Carrier vehicles

Third-party trucks brokered into loads — insurance, plate and capacity tracked separately from internal fleet.

Sub-carriers list with star rating and on-time rate

Sub-carriers

MC/DOT, safety rating, computed star rating from on-time delivery, GPS webhook token.

Tenants list - one res.company per tenant

Tenants

Each tenant is a res.company with parent/child support for coops — record-rule isolation native.

Freight zones plotted on a live map

Zones

Origin/destination zones rendered on a live map — the building blocks of lane-based rate cards.

🔧 Configuration

Lane-based rate cards

Rate cards

Flat, per-km, per-ton or per-ton-km rates with lane (zone×zone), equipment and date filters.

Accessorial charges with billable / payable split

Accessorials

Detention, lumper, fuel surcharge — with separate billable / payable flags so brokerage margins stay clean.

Driver skill catalogue

Driver skills

Catalogue of qualifications — hazmat, cryo, tanker, oversized — matched against load requirements.

REST API keys with scope and last-used info

API keys

Scoped bearer tokens for the driver / shipper / dispatcher / carrier apps — SHA‑256 hashed, plaintext shown once.

🏦 Optional SaaS Mode

SaaS plan tiers with per-load fees and quotas

Plans

Tiered subscription plans with monthly base, per-load fees, driver / vehicle quotas and trial period.

Tenant subscriptions and billing state

Subscriptions

One subscription per tenant, billed monthly by cron, with usage-log audit trail of every load and active driver.

Deep Odoo Integration

Built on Odoo primitives — not wrapped around them.

✓ fleet.vehicle ✓ account.move ✓ mail.thread + activities ✓ bus.bus realtime ✓ portal + website ✓ project.project / task ✓ grev_od_asset_tracking ✓ grev_od_map_view ✓ grev_od_scale_reader

Changelog

Version 19.0.1.3.0 — April 2026

  • End-to-end financial flow — loader posts the load, tenant invoices the shipper, and a configurable platform / tenant / broker commission split is computed and settled on every delivered load
  • Subscription-driven commissions — each plan ships default platform / tenant / broker percentages, overrideable per tenant on the subscription form. Rates are snapshotted on every load at booking time so historical commissions are immutable.
  • Pass-through accessorials — new commissionable flag on accessorial templates and load lines. Tolls, fuel surcharge and lumper fees are excluded from the commission base by default and reimbursed on top of the take-home.
  • Driver take-home — drivers see their projected earnings on every available offer and a full breakdown (commission base − platform − tenant + pass-through) on each assigned load.
  • Auto-settlement bills — on dispatch the module now generates the AR shipper invoice plus an AP vendor bill to the assigned driver (internal) or sub-carrier (brokered), and a separate platform commission AP when SaaS mode is on.
  • Pricing tab on the load form now exposes the full breakdown: commissionable amount, pass-through amount, per-actor commission lines and the resulting driver / carrier net payout.

Version 19.0.1.2.0 — April 2026

  • Loadboard-style portal suite — full visual redesign of all freight portals with sidebar navigation, KPI tiles, profile column and brand-tinted hero header
  • New broker portal at /freight/broker for sub-carriers: pending offers, accept / decline, status updates, dispatch chat and on-time scorecard
  • New loader portal at /freight/loader consolidating shipper and dock-side warehouse roles: post loads, watch market, search, plus per-stop pickup-ready and goods-received confirmation with weight and signer name
  • Driver portal redesigned with HOS, license compliance card, today's stops timeline and emergency-confirm dispatch chat
  • Tenant portal redesigned with per-tenant KPI grid, drivers / vehicles / alerts metrics and subscription self-service card
  • Role-aware /my home tiles — each portal user sees only the workspaces they have access to
  • Sub-carrier user binding via new user_ids many2many on grev.freight.carrier with dedicated record rules and ACLs
  • Dock-worker access record rules for consignee-side stops, with audit log on every loader confirmation
  • Legacy /freight/shipper URLs preserved as 301 redirects to the new loader portal
  • Four demo logins shipped with the module — driver, loader, broker, tenant (password demo for all) — each pre-wired to the right freight records so every portal works out of the box

Version 19.0.1.1.0 — April 2026

  • Analytics reports suite — 9 read-only SQL views with pivot, graph and list modes: load, stop, alert, quote, lane, driver scorecard, carrier scorecard, subscription, usage
  • Driver and carrier scorecards aggregate on-time delivery, revenue, margin, distance and load count for performance reviews
  • Lane report slices revenue, cost, margin and ton-km by origin / destination zone pair for pricing decisions
  • Subscription and usage reports give SaaS operators MRR, churn and per-tenant usage at a glance
  • PDF reports suite — QWeb templates for Load Confirmation, Bill of Lading, Proof of Delivery, Trip Manifest and Customer Quote
  • All PDFs branded with tenant company header and ready to email straight from the load form
  • New Freight > Reports menu groups all analytics reports alongside the existing Trip P&L view

Version 19.0.1.0.0 — April 2026

  • Initial release on Odoo 19
  • Multi-level tenancy with one res.company per tenant (carrier, coop, pool, fleet owner, broker)
  • Full load lifecycle: 10‑state machine, multi-stop planning, POD + signature capture
  • Internal self-dispatch and external brokerage in one workflow with auto-invoicing on assign and dispatch
  • External carrier vehicle registry to track third-party trucks brokered into loads
  • Embedded OSRM route map widget on the load form
  • Lane-based rate cards and OSRM route / cost computing with haversine fallback
  • OWL dispatch dashboard with embedded map and bus.bus auto-refresh
  • Driver, tenant-manager and shipper portals with tokenised public tracking
  • Dual-app REST API v1 (driver + shipper scopes) with SHA‑256 token hashing
  • Trip P&L report as live PostgreSQL view with pivot, graph and list views
  • Live GPS, geofence auto-arrival and journey closure via grev_od_asset_tracking
  • Optional SaaS mode: plans, subscriptions, usage logging, monthly invoicing cron
  • Alert engine: ETA miss, idle, HOS breach, license expiry, emergency (4 detection crons)
  • Optional onboard scale capture on drivers and vehicles
💬

Need Help?

Our team is ready to help you onboard tenants, configure rate cards, wire up GPS devices and roll the driver & shipper apps into production.

Email

odoo@grevlin.com

X (Twitter)

@GrevlinGlobal
🎉 30 days free support included

Grevlin Freight Manager — Docs

Multi-tenant freight dispatch and load-board platform for Odoo 19.

  • Overview
  • Installation
    • Dependencies
  • Configuration
    • Tenancy
    • SaaS mode (optional)
    • Security groups
  • Usage
    • Backend dispatch
    • Driver proposals (load board)
    • Per-stop driver actions
    • Dock-side loader confirmations
  • Portals
    • Backwards-compatibility
    • Public tracking
  • Financial flow
    • Commission rates
    • Driver take-home
    • Pass-through accessorials
  • REST API v1
  • Reporting
  • Demo data
  • Architecture
    • Models (per prefix)
    • Multi-company isolation
    • Asset-tracking integration
  • Support

Overview

grev_od_freight_manager ships a complete freight operation in one Odoo application: tenants (carriers, coops, fleet owners, brokers), drivers, vehicles, sub-carriers, multi-stop loads, lane-based rate cards, an OWL dispatch dashboard, four portals (driver / loader / broker / tenant), a two-flavour REST API, optional SaaS billing, and live GPS via the companion grev_od_asset_tracking module.

Installation

Dependencies

  • Odoo 19 Enterprise (the base, mail, portal, website, sale, account, stock, project, fleet, bus, uom modules)
  • grev_od_map_view — embedded OSRM map widget on the load form
  • grev_od_asset_tracking — live GPS, geofences, journeys
  • grev_od_scale_reader — optional onboard scale capture

Install the module on a clean Odoo 19 database:

python odoo-bin -d <db_name> -i grev_od_freight_manager --stop-after-init

Update after pulling changes:

python odoo-bin -d <db_name> -u grev_od_freight_manager --stop-after-init

Configuration

Tenancy

Each freight tenant maps to one res.company with multi-company record rules enforcing data isolation. Create a grev.freight.tenant from Freight ▸ Configuration ▸ Tenants and add managers via manager_user_ids.

SaaS mode (optional)

For multi-customer hosting, set the system parameter:

grev_freight.saas_mode = True

This activates the grev.freight.subscription model, the monthly billing cron, and per-tenant usage logging. Plans are configured in Freight ▸ Configuration ▸ Plans.

Security groups

  • group_freight_driver_user (portal) — drivers
  • group_freight_shipper_user (portal) — shippers + dock-side loaders
  • group_freight_broker_user (portal) — sub-carrier dispatchers
  • group_freight_dispatcher (internal) — operations
  • group_freight_tenant_manager (internal) — implies dispatcher
  • group_freight_platform_admin (internal) — cross-tenant SaaS ops

Usage

Backend dispatch

Open Freight ▸ Dashboard for the live OWL dashboard. Loads progress through the state machine draft → posted → pending_approval → booked → assigned → at_pickup → in_transit → at_delivery → delivered.

Cancel / dispute states are reachable from any non-terminal state.

Driver proposals (load board)

When a load is in posted, drivers see it on their portal Available tab and can submit a proposal (default rate or counter-rate plus an optional note). On the first proposal, the load auto-advances to pending_approval. The tenant manager reviews pending proposals on the tenant portal home or the Driver Proposals backend menu, then:

  • Accept — driver/vehicle/agreed_rate are written to the load, state goes to booked, all competing pending proposals are auto-rejected.
  • Reject — proposal goes to rejected. If no pending proposals remain, the load reverts to posted.

Drivers may withdraw their own pending proposals; the same no-pending-proposals → posted rule applies.

Per-stop driver actions

On each load stop in the driver portal:

  • pending → en_route — En route button (also bumps load to in_transit if still earlier).
  • en_route → arrived — bubbles at_pickup / at_delivery on the parent load depending on stop_type.
  • arrived → completed — closes the load when the last delivery stop is completed (calls action_deliver so invoices and asset cleanup run).
  • pending → skipped — only on auxiliary stops (waypoint, rest, fuel, customs).

Dock-side loader confirmations

On the loader portal, a stop's responsible partner (shipper for pickup, consignee for delivery) sees an inline confirmation form:

  • Confirm pickup ready — records weight_loaded_kg and signer name, posts an audit message on the load (driver still controls the arrival transition).
  • Confirm goods received — records weight_unloaded_kg, signed_by, optional signature; if the load is already in-transit/at-delivery, marks the stop completed.

Portals

All four portals share a single Loadboard-inspired shell rendered at the website-layout level (no breadcrumb, flush against the navbar). Logging in lands every freight user on their dedicated workspace via the /my dispatcher.

Portal URL Audience
Driver /freight/driver Drivers (portal-only). Active loads, available offers, proposals, delivered history, per-stop actions.
Loader /freight/loader Cargo owners (shippers) + dock-side warehouse staff (portal-only). Post loads, watch market, confirm pickup / receive.
Broker /freight/broker External sub-carrier dispatchers (portal-only). Pending offers, accept / decline, status updates.
Tenant /freight/tenant Internal tenant managers. Per-tenant KPIs, pending driver proposals, subscription self-service.

Backwards-compatibility

The legacy /freight/shipper/* URLs are preserved as 301-style redirects to /freight/loader/* so any bookmarks or quoted links still work.

Public tracking

A tokenised tracking URL is generated for each load (access_token). Share it with the consignee:

/freight/loader/load/<load_id>/track/<token>

The recipient sees the load summary, stops timeline and last GPS position without authenticating.

Financial flow

Each delivered load is settled through a configurable commission split:

  1. Loader posts the load with an agreed rate (or a counter-rate from a driver proposal); fuel surcharge and accessorials are itemised.
  2. Auto-invoicing on dispatch (action_assign) creates:
    • AR to the shipper for total_revenue
    • AP to the assigned driver for driver_payout (internal mode), or to the sub-carrier for carrier_net_payout (brokered mode)
    • AP to the platform partner for platform_commission_amount (SaaS mode only)
  3. Commission base is commissionable_amount: base freight plus commissionable accessorials. Fuel surcharge and any accessorial marked commissionable=False (toll, lumper, etc.) are pass-through — added on top of the driver/carrier take-home, untouched by any cut.

Commission rates

Three percentages are defined on the plan (template) and can be overridden on each subscription:

Field Meaning
platform_commission_pct SaaS-platform cut. Applied to commissionable_amount and posted as an AP bill to the platform partner.
tenant_commission_pct Tenant gross-profit cut on internal dispatch loads.
broker_commission_pct Tenant brokerage margin on the spread between the shipper rate and the carrier rate for brokered loads.

Rates are snapshotted on every load at booking time — future plan or subscription changes never modify historical loads. Force a refresh (e.g. after a manual subscription edit) by calling load._refresh_commission_rates().

Driver take-home

For internal dispatch:

driver_payout = commissionable_amount
              - platform_commission_amount
              - tenant_commission_amount
              + non_commissionable_amount   # fuel, tolls, lumpers

The driver portal shows a projected take-home on every available offer and a full breakdown card on each assigned load.

Pass-through accessorials

Each grev.freight.accessorial template carries a commissionable boolean (default True). Tolls, fuel surcharge and lumper fees ship with commissionable=False so the dispatcher's first save already behaves correctly. The flag can be overridden per line on a load from the Pricing tab.

REST API v1

The module ships an Uber-style two-flavour API at /api/freight/v1/*. See doc/integration/rest_api_v1.md for the full reference.

Auth uses bearer tokens via grev.freight.api.key. Each key has a scope (driver / shipper / dispatcher / carrier) that the decorator enforces by switching the request env to the key's user, so record rules apply just like in the portals.

Tokens are generated with secrets.token_urlsafe(32), surfaced once on create / rotate, and stored only as SHA-256 hashes.

Reporting

Read-only PostgreSQL views aggregating delivered loads:

  • Trip P&L — grev.freight.trip.pnl.report
  • Load report, Stop report, Alert report, Quote report
  • Driver scorecard, Carrier scorecard, Lane report
  • Subscription report, Usage report (SaaS only)

All views ship pivot, graph and list modes and are scoped by company.

Demo data

Installing with demo data seeds a complete dispatch scenario plus four ready-to-use logins:

Login Password Role
driver demo Marcus Holloway — driver portal, has an in-transit load and 30-day delivered history.
loader demo Olivia Stern (Northwind dock) — loader portal with an assigned-load dock task.
broker demo Eli Brennan (SwiftLink) — broker portal with one assigned hazmat load and one posted offer to accept/decline.
tenant demo Priya Anand — tenant manager (internal) with a pending driver proposal awaiting decision.

Architecture

Models (per prefix)

  • Tenancy / SaaS: grev.freight.tenant, grev.freight.plan, grev.freight.subscription, grev.freight.usage.log
  • Parties: grev.freight.driver(.skill), grev.freight.carrier
  • Vehicles: fleet.vehicle (extended), grev.freight.vehicle (external)
  • Catalogue: grev.freight.zone, grev.freight.accessorial, grev.freight.rate.card
  • Loads: grev.freight.load(.stop|.accessorial|.proposal), grev.freight.assignment, grev.freight.route.plan, grev.freight.quote, grev.freight.dispatch.message, grev.freight.alert
  • API / reports: grev.freight.api.key plus the read-only views listed above.

Multi-company isolation

Every model with a tenant carries company_id + _check_company_auto + a record rule. Platform admins bypass via a [(1, '=', 1)] rule restricted to group_freight_platform_admin.

Asset-tracking integration

Live GPS is delegated to grev_od_asset_tracking through pure _inherit:

  • fleet.vehicle.freight_tracked_asset_id → grev.tracked.asset
  • grev.freight.load.stop.geofence_id → grev.geofence
  • Geofence events auto-mark stops arrived and cascade load state
  • bus.bus broadcasts to (db, 'freight.dispatch', tenant_id) for live dashboard refresh.

Support

  • Email: odoo@grevlin.com
  • X / Twitter: @GrevlinGlobal
  • Issue tracker: contact us before opening a public ticket
  • Free support: 30 days from first install
Odoo Proprietary License v1.0

This software and associated files (the "Software") may only be used (executed,
modified, executed after modifications) if you have purchased a valid license
from the authors, typically via Odoo Apps, or if you have received a written
agreement from the authors of the Software (see the COPYRIGHT file).

You may develop Odoo modules that use the Software as a library (typically
by depending on it, importing it and using its resources), but without copying
any source code or material from the Software. You may distribute those
modules under the license of your choice, provided that this license is
compatible with the terms of the Odoo Proprietary License (For example:
LGPL, MIT, or proprietary licenses similar to this one).

It is forbidden to publish, distribute, sublicense, or sell copies of the Software
or modified copies of the Software.

The above copyright notice and this permission notice must be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with