A fleet that had outgrown its spreadsheets
Running trucks across borders means running paperwork across borders too — bookings, driver documents, fuel logs, container numbers, customs waypoints, workshop records, invoices, safety incidents. Before this build, that lived in disconnected sheets and a stock CRM never meant to carry it.
The brief wasn't "add a fleet page." It was: one login for dispatch, workshop, safety, finance and HR — and a second, lighter login where Alaska's own clients can watch their cargo move without ever seeing what it cost to move it.
Nineteen modules, one login
Two of these — Fleet Operations and QHSE — were engineered from a blank controller. The rest were selected, wired into the same permissions, branding and data model, and hardened where the defaults weren't good enough for a live fleet.
Fleet Operations
Bookings, live GPS tracking, logbooks, maintenance, fuel, tires, insurance, driver compliance. ~500 engineered functions — the core of the product.
QHSE Safety Suite
Incidents, CAPA, risk assessments, audits, toolbox talks, permits, PPE, emergency drills — a full safety-compliance system for a regulated trade.
AzamPay Gateway
A purpose-written payment integration for Tanzania's AzamPay, wired straight into the invoicing engine.
Finance & Invoicing
Estimates, invoices, credit notes, payments, TRA e-Invoice — re-branded documents, corrected metadata, combined-PDF downloads.
Accounting
Double-entry ledger, auto-posted from every invoice, payment and expense as it happens.
Warehouse
Stock imports/exports, loss & adjustment, packing lists, shipment records, its own client-facing view.
Purchasing
Vendors, purchase orders and quotations — with a self-service portal for vendors themselves.
HR & Payroll
Staff records, contracts, training, payslips — plus a separate attendance & shift system with its own clock-in API.
Fixed Equipment
Asset check-in/out, depreciation and maintenance tracking for equipment that isn't a vehicle.
CRM & Client Portal
Leads, contracts, projects, support tickets, knowledge base — the Perfex foundation everything else was built onto.
REST API
A full API surface across invoices, contacts, projects and tasks — ready for a future driver or client mobile app.
Brand System
A ground-up visual identity for the Alaska Capital SA rebrand — login, documents and client portal in one language.
A tour, screen by screen
Ten live screens from the running system — dispatch, tracking, safety, reporting and finance. Pulled directly from production.
Active trips, vehicles on trips, border/document flags and AI-drafted tracking comments — dispatch's first screen of the day.
Vehicles, drivers, trips and invoices, with a shared calendar keyed straight to trip and invoice numbers.
Every booking — route, reference numbers, delivery date, status. Customer and pricing columns are masked here for this case study.
A single container trip — loading quantity, route, dates, admin notes — the same record the branded PDF is generated from.
Cartrack and Wialon positions merged into one table, auto-refreshing every ten seconds, with AI-drafted status comments per vehicle.
The vehicle master list — type, make, model, group and status — everything else in the system hangs off this record.
Over twenty report types across cost, utilization, assignments and inspections — each built for one specific operational question.
Incidents, CAPA, inspections and legal compliance in one view — linked live to fleet, HR, assets and finance.
The emerging analytics layer — risk-scores every vehicle, drafts tracking comments, and audits driver document compliance automatically.
Invoice status at a glance. Amounts and customer names are masked for confidentiality — the unpaid/partial/overdue workflow underneath is real.
Two screens above (03 and 10) have customer names and monetary figures deliberately masked out of respect for Alaska Capital SA's client confidentiality — everything else is shown exactly as it runs in production.
From dispatch to delivery, on one map
This is the module that carries the business. It was written for one specific fleet's reality — cross-border container haulage — not adapted from a generic template.
A portal that shows the cargo, not the cost
Alaska's customers get their own login: live tracking on their own shipment, downloadable trip documents combined into a single PDF, container and cargo detail — with operating costs and internal pricing deliberately held back. It installs like an app, so a client checking on a container doesn't need to hunt for a browser tab.
QHSE, built for the road
Incident reports, corrective actions, risk assessments, toolbox talks, permits and PPE tracking — the paperwork a regulated haulage operator has to produce, structured so it actually gets filled in, not filed away.
One brand, from the login screen to the invoice
Alaska Capital SA's rebrand needed to reach every surface a user touches — not just the marketing site. The login screens below are the front door to both sides of the system.
ADMIN. Dispatch, finance, HR and safety staff share this door.
CLIENT PORTAL. Same system, same brand, a lighter set of keys.
The numbers on a manifest have to be right
A fleet system is only as good as its edge cases. A sample of what "hardened" meant in practice on this build.
Per-vehicle pricing on container trips
Container-load trips were silently showing no price against individual vehicles on the trip document — the calculation existed on the live booking page but had never been wired into the PDF. Traced, fixed, and verified against a real trip before sign-off.
FIXED — booking_pdf.php pricing logicDouble-booking a vehicle
A rule meant to stop one truck being booked onto two open trips existed only as a browser warning — bypassable, and silent if JavaScript didn't run. Rebuilt as a server-side check that rejects the save outright, then audited the live fleet for existing conflicts.
FIXED — server-side enforcement added, zero conflicts found on auditOrphaned trip records
Deleting a booking didn't close out its logbook entry, so the tracking board could still show a vehicle "active" on a trip that no longer existed. Cascaded the delete properly and cleaned the one record already affected.
FIXED — cascade-safe delete, live data repairedDocuments that don't know who they're from
Generated invoices carried generic, sometimes wrong, PDF metadata. Every document type now sets its own title, author and subject from the actual company and client — and an invoice can be downloaded combined with its trip detail sheet as one file, on request.
FIXED — metadata + combined-PDF export shipped