Auto
Skip to Content

Digitizing Multi-Company Transport & Logistics Operations with Odoo ERP for Gilani & Associates

Gilani & Associates: Odoo Transport ERP | KoderXpert

Transport & logistics · Multi-company Odoo ERP

Gilani & Associates: hundreds of transport movements across a group of companies, allocated by hand between them

every truck, every trip, one platform

Gilani & Associates is a leading transport and logistics group specialising in international freight forwarding, cross-border logistics, domestic transportation and fleet management. It operates through multiple entities: a customer-facing freight forwarding company and several operational subsidiaries responsible for fleet execution, trip management, accounting and logistics services. KoderXpert built a multi-company Odoo ERP that connects customer orders to trucks, trips, GPS, proof of delivery, billing and multi-currency books on one platform.

A truck and trailer on the road with a GPS location pin above it, a proof-of-delivery document with a signature and an invoice, representing the multi-company transport and logistics Odoo ERP built for Gilani and Associates shipment on trip live on GPS POD signed invoice billed on delivery
order to POD to invoice, all on one record ✨
wow!0core Odoo modules on one platform
0custom logistics solutions delivered
0objectives set and delivered
0ERP for every group company
Client
Gilani & Associates
Industry
Transport, freight forwarding & fleet
Platform
Odoo ERP, multi-company
Implementation partner
KoderXpert Technologies
Headline result
Invoices raised automatically on confirmed POD

01 · Overview

The 30-second version

  • Gilani & Associates is a transport and logistics group: international freight forwarding, cross-border logistics, domestic transportation and fleet management, run through a customer-facing freight company and several operational subsidiaries.
  • Hundreds of transport movements had to be allocated by hand between the parent company and its subsidiaries. Fleet utilisation and live trips were hard to see, proof of delivery and billing were manual, in-route expenses and trip profitability were unknown until later, compliance documents were tracked by memory, and international freight meant multi-currency accounting done the hard way.
  • KoderXpert designed a multi-company Odoo transport and logistics ERP: ten core modules and twenty custom logistics solutions, from freight forwarding and inter-company purchase orders to trip sheets, Fleetx GPS, POD approval, automated multi-currency invoicing, compliance reminders and trip-wise profit and loss, all on one platform for every group company.

02 · Where the old way broke down

What was going wrong before Odoo?

Multiple legal entities, one customer promise, and nothing connecting the two

As the group expanded, managing business processes across multiple companies became increasingly complex. A customer booked with one company; a truck, driver and trailer belonged to another; the cost landed in a third set of books. Every hand-off between them was a person and a spreadsheet.

Disconnected legal entities

Operations were split across multiple companies with no shared system, and shipments were allocated manually between the parent company and the operational subsidiaries.

The cost → every allocation was a phone call

No live view of the fleet

Limited visibility into fleet utilisation and live trip execution, and difficulty tracking which trucks, trailers and drivers were where.

The cost → idle assets nobody could see

Manual POD and billing

Proof of delivery, customer billing and freight documentation were managed by hand, so an invoice waited on a piece of paper finding its way back from the road.

The cost → cash tied to a paper trail

Trip cost unknown until later

No real-time monitoring of in-route expenses, so whether a trip made money was discovered after the fact, if at all.

The cost → profitability as a surprise

Multi-currency by hand

International freight meant complex multi-currency accounting across entities, reconciled manually.

The cost → slow, error-prone books

Compliance tracked by memory

Vehicle registrations, insurance, permits and driver licences were tracked manually, and reporting across operations, fleet and finance was limited.

The cost → an expiry found at a checkpoint
one customer promise, three companies to keep it…

03 · The turnaround

Drag it and see the before & after yourself

Slide the orange handle. Left is the phone-and-spreadsheet era, right is the connected platform.

✗ Before the implementation
  • Shipments allocated to subsidiaries by hand
  • Trucks, trailers and drivers tracked without a live view
  • Invoices waiting on a paper POD
  • In-route expenses and trip margin unknown until later
  • Permits, insurance and licences tracked by memory

the phone-call era 😵

one platform, every company ✨

✔ After the implementation
  • Inter-company purchase orders allocate shipments automatically
  • Fleetx GPS shows every active trip live
  • Invoice generated on confirmed POD
  • In-route expenses captured, trip-wise P&L on every trip
  • Automated expiry reminders for fleet and driver documents

← drag toward the phone calls · drag toward the platform →

04 · The plan

What we aimed to achieve

Nine objectives were set for the complete transport and freight forwarding lifecycle across all group companies; they group into six. Hover any goal to tick it off.

Consolidate the group: bring every company onto a single ERP with inter-company workflows between parent and subsidiaries.

Digitise freight and transport operations: automate shipment planning and trip execution end to end.

See the fleet live: improve fleet visibility through GPS integration.

Automate billing and documents: generate customer invoices and freight documentation from the system, not by hand.

Know every trip's margin: track trip-wise operational cost and profitability, with multi-company, multi-currency accounting underneath.

Stay compliant automatically: expiry reminders and approval workflows for vehicle and driver documentation.

05 · What we delivered

What did KoderXpert build?

Ten core modules, twenty custom logistics solutions, one multi-company platform

KoderXpert designed and implemented an Odoo transport and logistics ERP tailored to the group's multi-company model. Customer order management is integrated with operational execution, so the parent company and its subsidiaries coordinate inside one system, with complete visibility into freight operations, fleet utilisation, accounting and compliance.

Block 01

Freight forwarding & multi-company operations

Freight forwarding and shipment order management for the customer-facing company, with an inter-company purchase order workflow that hands each shipment to the right operational subsidiary automatically.

allocation without the phone call
Block 02

Trip, fleet & route management

Trip sheet management, truck, trailer and driver management, route management and third-party transporter (holier) management, so every movement has a vehicle, a driver, a route and an owner.

every trip has a sheet
Block 03

Fleetx GPS integration

Live vehicle positions from Fleetx inside Odoo, so active trips and fleet utilisation are visible in real time rather than reported after the truck returns.

the fleet on one screen
Block 04

POD workflow & automated billing

Proof of delivery captured and approved in a workflow, with the customer invoice generated automatically on confirmation. Standing and demurrage charges and multi-currency customer billing handled in the same flow.

delivered means invoiced
Block 05

In-route expenses & trip-wise P&L

In-route expense management on every trip, feeding multi-company, multi-currency accounting and a trip-wise profit and loss analysis, so margin is known per movement.

margin per trip, not per quarter
Block 06

Compliance, portal & dashboards

A compliance and expiry reminder system for registrations, insurance, permits and licences; a route manager portal; a fleet utilisation dashboard; and operational MIS and executive reporting.

expiries flagged, not found
shipment order inter-company PO trip on GPS POD approved invoice, auto
one chain across three companies: the order, the trip and the invoice are the same record ✨

06 · Functional deep dive

How the connected system actually works

The feature list says what was switched on. This is how a shipment actually moves through the group, from the customer's booking to the trip's profit and loss.

Booking to allocation, across companies

The customer deals with one company. The truck belongs to another. The system has to make that hand-off without a person in the middle.

  • Freight forwarding management: the customer-facing entity captures the booking as a shipment order in Odoo Sales, with the freight details the job needs.
  • Inter-company purchase order workflow: confirming the shipment raises a purchase order on the operating subsidiary, which sees it as a sales order of its own. Allocation is a record, not a phone call.
  • Multi-company configuration: each legal entity keeps its own books, customers and fleet, on one database with the group view above them.
  • Third-party transporters: when the group's own fleet cannot cover a movement, holier (third-party transporter) management assigns it outside with the same tracking.

Trip sheets, fleet and routes

A shipment becomes a trip, and a trip needs a truck, a trailer, a driver and a route. Each is a managed record in Odoo Fleet and the custom trip layer.

  • Trip sheet management: every movement has a trip sheet carrying vehicle, driver, route, load and status from dispatch to close.
  • Truck, trailer and driver management: availability and assignment in one place, which is what makes utilisation measurable.
  • Route management: standard routes with their legs, so planning and costing start from a known baseline.
  • Route manager portal: a dedicated view for the people running the road, without the full back-office interface.

GPS integration with Fleetx

Limited visibility into live trip execution was one of the original complaints. Integrating Fleetx into Odoo answered it directly.

  • Live positions inside the ERP: vehicle location from Fleetx is visible against the trip sheet, not in a separate tracking app.
  • Real-time trip status: active trips and their progress are visible to operations and to customer-facing staff alike.
  • Fleet utilisation dashboard: which trucks and trailers are moving, idle or unavailable, at a glance.

Proof of delivery and automated billing

Cash used to wait on a paper POD. The POD became a workflow, and the invoice became its consequence.

  • POD management and approval: proof of delivery is captured against the trip and approved through a workflow in Odoo Approvals.
  • Automated invoice generation: confirmation of the POD generates the customer invoice, so billing follows delivery without a manual step.
  • Standing and demurrage charges: waiting and detention charges are managed in the same flow and land on the same invoice.
  • Multi-currency customer billing: international freight is billed in the customer's currency with the accounting handled underneath.

In-route expenses and trip-wise profitability

A trip that cannot show its own margin is a trip nobody can improve. Cost was attached to the trip, not the month.

  • In-route expense management: fuel, tolls and on-road costs are recorded against the trip sheet as they happen.
  • Multi-company, multi-currency accounting: Odoo Accounting keeps each entity's books and the inter-company transactions between them.
  • Trip-wise profit and loss: revenue from the shipment and cost from the trip meet on one analysis per movement.
  • Operational MIS and executive reporting: the same records roll up into management dashboards across customer operations, fleet and finance.

Compliance and expiry reminders

Vehicle and driver documents used to expire quietly. Now they announce themselves.

  • Compliance and expiry reminder system: registrations, insurance, permits and driver licences carry expiry dates that trigger reminders ahead of time.
  • Documents module: the certificates themselves are stored against the vehicle or driver record in Odoo Documents.
  • Approval workflows: renewals and exceptions route through the same approval engine as PODs and purchases.
  • Employees: drivers are employee records, so licence, assignment and attendance live together.
one shipment trip sheet expenses invoice trip P&L

Why a trip-wise P&L needs one database

The revenue lives with the freight company, the truck and its costs live with the subsidiary, and the customer is billed in a different currency from the diesel. A profit figure per trip is only possible when all of that is one record chain, with inter-company accounting doing the reconciliation instead of a person at month end.

07 · How we built it

How was the Odoo project delivered?

The group structure first, then the operational layer, then the money

A multi-company ERP has to get the entity structure right before anything else, because every shipment, trip and invoice belongs to one company and is billed to another. The build followed that dependency.

1

Process discovery across the group map who does what

The freight forwarding company and each operational subsidiary were mapped separately, then the hand-offs between them, so the inter-company flow could be designed from how work actually moves.

2

Multi-company design & core configuration entities, books, currencies

Multi-company configuration, chart of accounts per entity and multi-currency setup, plus the core modules: Sales, Purchase, Inventory, Fleet, Accounting, Documents, Employees, Approvals and Dashboards.

3

Custom logistics development the twenty solutions

Freight forwarding and shipment orders, the inter-company PO workflow, trip sheets, truck, trailer, driver, route and holier management, in-route expenses, POD approval, automated and multi-currency billing, standing and demurrage charges, the compliance reminder system and the route manager portal.

4

Fleetx GPS integration bring the road inside

Live vehicle positions from Fleetx connected to trip sheets and the fleet utilisation dashboard.

5

Data migration & testing real trips, real invoices

Customers, vendors, fleet, drivers and compliance documents brought across, and the end-to-end flow, booking to POD to invoice to trip P&L, validated with the operating teams.

6

Training & go-live company by company

Customer operations, route managers, drivers' supervisors and finance trained on the flows they own, then the group went live on one platform.

08 · Engineering notes

The decisions behind the platform

The important calls were structural: how the companies relate, where the trip lives, what triggers an invoice, and how cost finds its trip.

Multi-company as the foundation, not a feature

The group's structure is the reason the old process needed people in the middle. It had to be modelled first.

  • One database, several entities: Odoo's multi-company configuration gives each legal entity its own books and records with a group view across them.
  • Inter-company PO as the hand-off: the parent's shipment order becomes the subsidiary's sales order through an inter-company purchase order, which is what replaced manual allocation.
  • Inter-company transactions in the ledger: the money between entities is posted automatically, so consolidation is a report rather than a reconciliation.

The trip sheet is the central record

In transport, the trip is where revenue, cost, compliance and the customer promise all meet. It was built as the hub.

  • Everything hangs off the trip: vehicle, trailer, driver, route, GPS position, expenses, POD and invoice all reference the same trip sheet.
  • Fleet module underneath: trucks, trailers and drivers are Odoo Fleet records, so assignment and availability are native.
  • Third-party movements included: holier management means an outsourced trip is still a trip sheet, with the same P&L.

GPS inside the ERP, not beside it

A tracking app on its own tells you where a truck is. Integrated, it tells you where a shipment is.

  • Fleetx integration: positions flow into Odoo against the trip, so operations and customer-facing staff look at the same screen.
  • Utilisation as a by-product: because every truck's movement is known, the fleet utilisation dashboard needs no separate data entry.

Delivery triggers the invoice

Automated billing only works if the trigger is unambiguous. The confirmed POD was chosen as that trigger.

  • POD approval workflow: a delivery is confirmed through Odoo Approvals, which gives the invoice an auditable basis.
  • Charges accumulate on the trip: standing and demurrage charges are recorded on the trip before the invoice is raised, so nothing is billed separately later.
  • Currency at the customer, accounting at the entity: multi-currency billing on the invoice, with conversion handled in each company's books.

Cost attached to the trip, not the month

Trip-wise profitability was an explicit objective, and it dictated where expenses are recorded.

  • In-route expenses on the trip sheet: captured against the movement they belong to, in the currency they were paid in.
  • Revenue and cost on one analysis: the shipment's invoice and the trip's expenses meet in the trip-wise P&L.
  • Rolls up to MIS: the same records feed operational MIS and executive reporting without a separate reporting copy.

Compliance as data with a date

Manual compliance tracking fails because nobody looks until it is too late. The fix was to make the date a field that acts.

  • Expiry on the record: registrations, insurance, permits and licences carry expiry dates on the vehicle or driver record.
  • Reminders ahead of time: the reminder system alerts before expiry, and renewals route through approvals.
  • Documents attached: the certificate itself sits in Odoo Documents against the same record.

09 · The impact

What changed after go-live?

Ten outcomes across operations, fleet, finance and compliance

the part clients screenshot
0core Odoo modules on one database
0custom logistics solutions built on top
0objectives, all delivered
0platform for every group company
  • Centralised operations across multiple companies within a single ERP
  • Faster shipment allocation and execution through automated inter-company workflows
  • Real-time visibility into active trips and fleet operations through Fleetx GPS
  • Improved utilisation of trucks, trailers and drivers
  • Automated customer invoicing based on confirmed proof of delivery
  • Better control over trip expenses and operational profitability
  • Enhanced compliance through automated reminders for fleet and driver documentation
  • Improved financial accuracy with integrated multi-company and multi-currency accounting
  • Faster management reporting with real-time dashboards and operational analytics
  • A scalable ERP foundation supporting future growth and international logistics operations

10 · Under the hood

Technologies & core skills

ERP · Odoo ERP, multi-company configuration Backend · Python, Odoo ORM Frontend · XML, QWeb Database · PostgreSQL Integration · Fleetx GPS Modules · Sales, Purchase, Inventory, Fleet, Accounting, Documents, Employees, Approvals, Dashboards & Reporting
Multi-company ERP Freight forwarding Fleet & trip management GPS integration POD workflow Multi-currency accounting Inter-company transactions Compliance automation Executive dashboards
the whole build, in one line
A customer books with one company, a truck rolls out of another, and the invoice is raised the moment the delivery is confirmed. Nobody made a phone call in between.
The shipment, the trip and the invoice are one record across the group.

11 · Quick questions, honest answers

Thinking about a similar build?

Yes. Gilani & Associates runs freight forwarding, shipment orders, trip sheets, fleet, POD, billing, multi-currency accounting and compliance on Odoo, using ten core modules plus twenty custom logistics solutions built in Python and QWeb. The custom layer is what turns a general ERP into a transport ERP.

Through multi-company configuration on one database: each entity keeps its own books, customers and fleet, with a group view above them. Inter-company purchase orders move a shipment from the customer-facing company to the operating subsidiary automatically, and inter-company transactions are posted in both sets of books without manual reconciliation.

Confirming a shipment order in the parent company raises an inter-company purchase order on the operating subsidiary, which sees it as its own sales order and creates the trip sheet. What used to be a phone call and a spreadsheet entry is now a workflow with a record on both sides.

Yes. Fleetx GPS was integrated so live vehicle positions appear against the trip sheet inside Odoo rather than in a separate app. That gives operations real-time trip status and feeds the fleet utilisation dashboard without any extra data entry.

The POD is captured against the trip and approved through a workflow. Approval generates the customer invoice, including any standing and demurrage charges already recorded on the trip, in the customer's currency. Billing follows delivery with no manual step and an auditable trigger.

Yes. In-route expenses are recorded against the trip sheet as they happen, and the shipment's invoice revenue meets those costs on a trip-wise profit and loss analysis. Because revenue and cost sit in different companies, this only works with multi-company accounting on one database.

Customers are billed in their own currency on the invoice, while each entity's books convert and post in their accounting currency. Odoo Accounting manages the rates and the inter-company entries, so international freight no longer needs manual currency reconciliation.

Registrations, insurance, permits and driver licences carry expiry dates on the vehicle or driver record, with the certificate stored in Odoo Documents. A reminder system alerts ahead of expiry and renewals route through approvals, so an expired permit is caught in the office rather than at a checkpoint.

Third-party transporter (holier) management assigns a movement outside the group's own fleet while keeping it as a trip sheet, so it carries the same POD workflow, billing and trip-wise profitability as an in-house trip.

Sales, Purchase, Inventory, Fleet Management, Accounting, Documents, Employees, Approvals, Dashboards and Reporting, plus multi-company configuration. Twenty custom logistics solutions, from freight forwarding and trip sheets to the route manager portal, were built on top of them.

That was an explicit outcome. A new entity is another company on the same database, with the same inter-company workflows, and multi-currency accounting already handles cross-border freight. The foundation is built for further growth and international logistics operations.

KoderXpert is an Odoo Ready Partner that maps the group's real hand-offs before configuring anything, builds the transport-specific layer in Python and QWeb rather than forcing a generic process, and integrates the tools already on the road. Talk to KoderXpert about your fleet.

delivered should mean invoiced

Running a fleet across companies on spreadsheets?

Tell us where the phone calls still are: allocating loads, chasing PODs, reconciling currencies, remembering permit dates. KoderXpert maps the group first and configures second, until every entity is reading the same trip.


the story continues...

More client stories

All case studies

Your business could be the next story here.

Same process, already proven across 20+ industries.

Your business is not a template. Your ERP should not be either.

Every project on this page started the same way: a conversation about how the business actually runs today, and where the manual hand-offs are. That is a good place to start yours too.