WebBusiness SoftwareERPCRMWebsite DesignWebsite DevelopmentWebsite maintenanceSoftware Development
Fleet of 120+ vehicles

Transport Management System (TMS)

Fleet management system for vehicle registration, driver assignment, investor/installment tracking, and income-expense reporting on ASP.NET Core Web API.

The Problem

Transport and vehicle-leasing companies running a mixed fleet of owned, investor-financed, and installment/bank-financed vehicles had no single system to track any of it. Vehicle registrations, driver assignments, and ownership documents lived in spreadsheets; investor and bank-financed vehicles had no structured way to track monthly installments against an agreed schedule; and there was no reliable, printable record of what was paid, what was due, and what the business's actual income vs. expense position was for a given period.

The Solution

I built the Mehar Transport Management System (M.T.M.S) end-to-end on ASP.NET Core Web API (.NET 8), with JWT-authenticated APIs documented via Swagger and a clean-architecture backend. Every vehicle, owner, driver, investor, and payment type is a first-class record, and every vehicle registration carries its own agreed payment schedule — whether it's a simple cash-monthly rental or an investor/bank-financed installment plan — so the whole fleet's financial position is queryable and printable at any time.

Key Features

Vehicle registration & ownership tracking — owner, vehicle brand/model/year, registration type (cash or installment), assigned driver, and supporting documents (profile image, PDFs, other attachments) captured in one form.

Driver management — a searchable driver directory with photo, bank details (IBAN), mobile number, and resident ID, so every vehicle's assigned driver is fully on record.

Investor & installment tracking — vehicles financed through an investor or bank carry their own agreed-payment schedule, distinct from standard cash-monthly rentals, with the financing source recorded per vehicle.

Payment collection with history — a dedicated Receive Payment screen shows owner, vehicle, and driver info side-by-side with every due/paid installment, a one-click Receive action, and a full payment history per vehicle.

Vehicle & income/expense reporting — printable, company-branded reports: a per-vehicle payment ledger (total/paid/due, status) and a date-ranged income vs. expense statement with running balance.

Technical Highlights

The API layer uses JWT authentication and Swagger-documented endpoints behind a clean-architecture separation of concerns, backed by SQL Server for the relational data (vehicles, owners, drivers, investors, payment schedules). Reports are generated print-ready directly from the same data model that drives the dashboards, so there's no separate reporting pipeline to keep in sync.

Results

The client runs their full fleet — vehicles, drivers, investors, and payment collection — from one system instead of spreadsheets, with dashboard stats (vehicle count, active drivers, monthly revenue, expenses) and printable reports available on demand for both cash and investor-financed vehicles.

FAQ

Q

How does the system handle vehicles that are financed differently — cash, investor, or bank installment?

Every vehicle registration carries its own agreed payment schedule at the time it's set up, with the financing source (cash-monthly, investor, or bank installment) recorded per vehicle — so cash-rental vehicles and installment-financed vehicles are tracked side-by-side in the same system without needing separate spreadsheets for each.

Q

Can the business tell at a glance what's been paid and what's still due?

Yes — the Receive Payment screen shows owner, vehicle, and driver info together with every due and paid installment for that vehicle, plus a one-click action to record a new payment and a full history of everything collected so far.

Q

What kind of reports can the business print or export?

Two main report types: a per-vehicle payment ledger (total, paid, due, and status) and a date-ranged income vs. expense statement with a running balance — both generated print-ready, company-branded, directly from the live data rather than a separate export process.

Q

Is driver information tracked alongside vehicle and payment data?

Yes — a searchable driver directory holds each driver's photo, bank details (IBAN), mobile number, and resident ID, and every vehicle is linked to its assigned driver, so ownership, financing, and driver assignment are all visible from one record.

Q

How is the system secured, since it's handling financial and payment data?

The API layer uses JWT authentication on every endpoint, documented through Swagger, with a clean-architecture backend separating the API, business logic, and data layers — standard practice for a system handling ownership records and payment history.

Transport Management System (TMS)Transport Management System (TMS)Transport Management System (TMS)1 / 3