All case studies
Case study · Web Development

Cargo Shipment Tracking System

Laravel shipment management platform with admin/employee/client role split — package tracking, AI invoice validation, WhatsApp status updates, payments and a missing-package reporting flow.

Industry
Web Development
Engagement
Discovery → Launch
Region
Global
Status
Live

Cargo Shipment Tracking System · Cover image

01 · The challenge

What needed solving

A freight operator was tracking packages across spreadsheets and an email thread per shipment. Clients had no self-serve visibility into where their cargo was, invoices were emailed PDFs that often went missing, under-declared invoice values were hard to catch at scale, and the office had no audit trail when a package went astray.

02 · Our approach

How we framed the work

We started with a discovery sprint to map the user journey, business goals and real constraints. From there we wrote a fixed-scope plan: clear milestones, weekly review gates on a staging URL, and a written exit criterion for every phase. The web development space rewards teams that ship — not teams that plan — so we biased the engagement towards working software from week two onward.

03 · The solution

What we built

We built a Laravel platform with three role-aware surfaces: admins manage every shipment, employees handle day-to-day status updates, and clients see only their own packages. Each Package has a PackageStatusHistory log written on every state change, so reconstructing what happened to a shipment is one query. ShippingInvoice + ShippingInvoiceItem power line-item invoicing with a download/view endpoint, and a MissingPackageReport workflow lets clients flag lost cargo with a structured form rather than an email. AI-powered invoice validation via the Claude Vision API scores every uploaded invoice 1–5 stars on declared-value accuracy, item-description match, invoice legitimacy and line-item consistency — scores 4–5 are auto-approved with no admin review, while scores 1–3 are flagged for manual review with the AI reasoning attached. WhatsApp notifications through Wati send customers real-time shipment status updates. Sentoo handles payment collection, and SMTP2GO delivers transactional email.

04 · The results

What changed for the client.

3 (admin/emp/client)
User Roles
1–5 via Claude Vision
Invoice AI Score
WhatsApp · Email
Notifications
  • Clients self-serve shipment status — support tickets for "where is my package?" dropped sharply

  • Every status change recorded with timestamp and actor — full audit trail per package

  • Invoices generated, stored and re-downloadable on demand — no more lost PDF attachments

  • Admin team now reviews only flagged invoices instead of every single one

  • Significant reduction in under-declared invoice values in the first week of deployment

  • Real-time WhatsApp updates eliminated most inbound "where is my package?" calls

Tech stack

LaravelBladeTailwindViteSpatie RBACPDF InvoicesClaude APIWatiSentooSMTP2GO

Want a similar outcome for your business? We'd love to hear about it.

Your case study, next

Let's build the next one together.

Fixed-scope quote in 24 working hours.