ION DASH - Logistics & Fleet Management Platform
Re-architecting a legacy delivery platform with real-time dispatch, GPS tracking, automated quotes, and reliable driver communication.
ION DASH was transformed from a legacy delivery application into a modern logistics and fleet management platform combining Flutter Customer and Driver applications with a Laravel backend API. The platform handles custom quotes, automated dispatch, background GPS tracking, delivery confirmation, proof of delivery, Stripe PaymentIntents, Firebase Cloud Messaging, Google Maps navigation, onsite billing, and catalog synchronization.
Client
Apr 2026
Michael
Founder, Fubile LLC
Role
Senior Full-Stack Developer
Year
2026
Category
Logistics · Fleet Management · Mobile Apps ·

Michael
Founder • Fubile LLC
“Committed to Quality Solution Oriented Clear Communicator”
Confidential Enterprise Project (Protected Under NDA)
Proprietary source code, database architectures, and internal endpoint credentials are confidential. This case study highlights non-proprietary architectural patterns, technical solutions, and verified outcomes.
ION DASH#
The Challenge#
Managing on-demand material delivery, custom quotes, and real-time driver dispatching requires a highly responsive and reliable system. The original ION DASH application suffered from an outdated legacy user interface, unreliable push notifications on modern Android devices, fragmented driver routing, and slow app performance.
There was a critical need for a centralized logistics platform that could seamlessly connect customers requesting shipping quotes with drivers navigating complex delivery routes, while maintaining strict security, reliable payments, and real-time synchronization across the entire delivery workflow.
The Solution#
I completely re-architected ION DASH into a modern Logistics Delivery App and Fleet Management System.
I combined highly responsive Flutter applications for both customers and drivers with a scalable Laravel backend API backed by Dockerized MySQL. I expanded the backend into the central layer for authentication, payments, notifications, dispatching, pricing, delivery automation, and operational rules.
I implemented real-time GPS tracking, automated driver dispatch, custom quote management, secure Stripe PaymentIntents, reliable Firebase Cloud Messaging, proof-of-delivery workflows, onsite billing, automated delivery completion, and a complete glassmorphism UI/UX overhaul.
Complete UI/UX Overhaul#
One of the most significant transformations I delivered was migrating the application from a legacy interface to a modern, highly responsive mobile experience.
Glassmorphism Design#
I introduced sleek glassmorphism design elements, vibrant color palettes, and fluid micro-animations to deliver a modern and premium visual experience.
Shimmer Loading States#
I integrated shimmer skeleton loading effects across the About Us, Order Details, and Policy screens, providing smoother transitions while application data loads.
Custom Pop-Up Messages#
I replaced standard operating-system error banners with branded dark-and-gold notification pop-ups for a more consistent application experience.
Clean Item Cards#
I restructured shopping cart item cards to provide better alignment, clearer pricing typography, and dynamic quantity adjustments.
Quote Management & Customer Experience#
I expanded the customer quote workflow into a complete request, response, notification, and archive system.
Custom Quotes#
Customers can receive, view, and respond to custom shipping quotes directly within the application.
Request & Special Quote Workflow#
I implemented request-quote and special-request APIs, administrative quote response fields, customer quote listings, and quote response handling.
Dynamic Quote Actions#
I introduced dynamic Accept and Decline actions that automatically disappear after a response has been securely submitted, preventing repeated responses to the same quote.
Quote Archiving#
I added database-level archive flags that allow customers to hide previous quotes without permanently deleting the underlying records.
Smart Search & Favorites#
I integrated searchable item selection and optimized favorite-item functionality to make product discovery and repeat ordering easier.
Quote Notifications#
Customers receive push notifications when a new quote is ready for review.
Driver Dispatch & Real-Time Routing#
I redesigned the driver workflow around automated dispatch rules, background GPS tracking, capacity controls, atomic job locking, and integrated navigation.
Google Maps Navigation Integration#
I integrated native Google Maps API navigation into the Driver application to provide real-time, in-app routing.
Background GPS Tracking#
I implemented background GPS tracking that periodically transmits driver coordinates to the Laravel backend. This allows the system to continue receiving driver location updates even when the application is minimized.
Automatic Order Assignment#
I implemented a smart-dispatch system that automatically assigns pending orders to an available driver when an order remains in the queue for 15 minutes.
Atomic Job Locking#
I implemented atomic delivery locking so that the first driver who successfully accepts a delivery secures the job, preventing duplicate acceptance and dispatch conflicts.
Driver Capacity Limits#
I added backend capacity rules to prevent individual drivers from receiving more assignments than their configured maximum.
Online / Offline Driver Rules#
I implemented availability checks so dispatch logic verifies that a driver is online and eligible before assigning pending orders.
Live Driver Location#
I implemented live driver location updates for operational and admin map tracking.
Delivery Management#
I expanded the delivery workflow to cover drop-off, confirmation, proof of delivery, automatic completion, and escalation.
Proof of Delivery#
I built a native delivery image upload workflow that allows drivers to securely capture and upload proof-of-delivery photos.
Customer Delivery Confirmation#
I implemented customer-side delivery confirmation so customers can confirm successful delivery directly through the application.
Driver Drop-Off State#
Drivers can mark deliveries as dropped off, moving them into an Awaiting Confirmation state until the customer confirms receipt.
Automated Delivery Completion#
I implemented automated delivery completion so deliveries awaiting customer confirmation are marked as complete after 15 minutes if no acknowledgment is received.
Escalation Handling#
I added escalation handling for disputed or unconfirmed deliveries.
Firebase Cloud Messaging (FCM) & Automation#
I completely re-engineered the push notification pipeline to resolve unreliable notification delivery on modern Android devices.
Reliable Push Notifications#
I migrated the notification system to Firebase Cloud Messaging HTTP v1 with Laravel service-account configuration, cached OAuth tokens, Android-safe payloads, and persisted notification records.
I also addressed Android 13+ notification suppression through proper notification permissions, notification channels, payload configuration, and backend service-account handling.
Notification Features#
- Quote-ready notifications
- Driver assignment notifications
- Customer delivery notifications
- Driver delivery notifications
- Device-token management
- Persisted notification records
- High-priority FCM channels
- Android-safe payloads
- Notification regression tests
Automated Delivery Closure#
I engineered an automated job-closure workflow that marks deliveries as complete after 15 minutes when customer acknowledgment is not received.
Backend Engineering#
In parallel with the mobile rebuild, I expanded the Laravel backend into the central API, automation, payment, notification, and operational rules layer responsible for keeping the ION DASH workflow reliable end to end.
Laravel API & Authentication#
I reworked the user and driver API architecture with:
- Laravel Sanctum bearer-token authentication
- Dedicated driver middleware
- Device-token management
- Login and authentication flows
- Logout flows
- Profile management
- Password management
- Version-aware request handling
- Reworked user API routes
- Reworked driver API routes
Payment Architecture#
Migrating Stripe to PaymentIntents#
I migrated the legacy Stripe Charges/token payment flow to the modern Stripe PaymentIntents architecture.
The new payment implementation supports:
- Stripe PaymentIntents
- PaymentMethod IDs
- 3DS / SCA authentication
- Client-secret handling
- Server-side amount validation
- Secure payment confirmation
- Payment failure handling
Payment Safety#
I implemented a payment rule where orders are only created after successful payment confirmation, ensuring declined payments do not create incomplete or unpaid orders.
Server-Side Pricing#
I moved order pricing validation to the backend so amounts are recalculated and validated server-side, reducing client-side tampering and payment/order amount mismatches.
Order Pricing & Owner Reporting#
I centralized order pricing logic in the backend to provide consistent calculations throughout the checkout and payment workflow.
The system handles:
- Cart subtotal
- Delivery fees
- Peak-time surcharges
- ETA calculation
- Centralized order creation
- Server-side pricing validation
- Successful payment processing
- Per-order CSV generation
- Owner/operator email reporting
After successful payment, I also implemented per-order CSV reporting for the owner/operator.
Onsite Addition Billing#
I implemented a complete onsite billing workflow that allows drivers to request additional charges during a delivery.
Workflow#
Driver requests additional charge → Customer receives bill → Customer accepts or declines → Accepted bill is charged through Stripe → Order totals are synchronized
Features#
createBillworkflowrespondToBillworkflow- Customer accept / decline
- Stripe charging
- Order total synchronization
- Bill status management
This allows additional onsite costs to be handled within the existing order and payment workflow rather than through a separate manual process.
Authentication & Security#
I replaced the legacy authentication architecture with a modern token-based system centered around Laravel Sanctum.
Security Improvements#
- Laravel Sanctum bearer-token authentication
- Facebook Login integration
- Device-token management
- Legacy key-token removal
- Bcrypt password handling
- Continuous session monitoring
- Automatic logout
- Secure session cleanup
- Deprecated token removal
- Environment configuration hardening
I moved environment reads into Laravel configuration and service layers, removed legacy key-token checks, and consolidated authentication behavior around Sanctum.
I also improved session handling to ensure user session data is securely cleared when users log out.
Application Automation#
I moved critical operational workflows into backend automation rather than relying on fragile app-side timing.
Stale Order Auto-Assignment#
I implemented automated dispatch rules that assign orders remaining in the queue for 15 minutes according to driver availability and capacity rules.
Delivery Auto-Completion#
I implemented automated delivery completion for deliveries awaiting customer confirmation after 15 minutes.
Quote Notifications#
I implemented automatic customer notifications whenever a new quote is ready.
Driver Notifications#
I implemented notifications for relevant driver assignment and delivery events.
Onsite Billing#
I connected additional onsite charges to an automated customer approval and Stripe payment workflow.
Store Pricing & Scraper Integration#
I developed and improved dedicated scraper tooling to dynamically retrieve vendor catalog and pricing information for synchronization with the application.
Features#
- Vendor refresh support
- Playwright-based scraping
- Menards scraper tooling
- Lowe's scraper tooling
- Catalog synchronization
- Compatible pricing data structure
- Home Depot / SerpAPI-compatible price shape
The scraper tooling provides structured pricing data that can be consumed by the application's catalog synchronization workflow.
Dockerized Infrastructure#
I standardized the development and database environment using Docker Compose and MySQL.
Infrastructure Improvements#
- Docker Compose configuration
- Dockerized MySQL
- Laravel development environment
- Database migrations
- Standardized service configuration
- Sanctum token migrations
- Quote status migrations
- Delivery confirmation migrations
- Driver capacity migrations
- Quote archive flags
- Bill status fields
- Delivery escalation fields
This provided a more consistent development environment while supporting the database requirements of the expanded logistics workflows.
Testing & Quality#
I added focused regression coverage around critical backend behavior to protect payment, notification, delivery, and application boot workflows.
Test Coverage#
- Delivery rules
- Payment pricing
- FCM payload handling
- FCM credential handling
- Application boot
- Backend workflow behavior
The testing layer provides additional protection around operational rules that directly affect payments, dispatching, notifications, and delivery completion.
Backend Impact#
Operational Reliability#
I moved duplicate driver acceptance, stale queued jobs, notification handling, and unconfirmed delivery logic into centralized backend rules rather than relying on fragile app-side timing.
Payment Safety#
I ensured orders are created only after successful payment confirmation, added Stripe SCA support, and moved pricing recalculation to the server to reduce payment and order mismatches.
Maintainability#
I documented backend behavior through route changes, database migrations, scheduler commands, and focused PHPUnit tests, providing future mobile development with a clearer and more predictable API contract.
Key Engineering Contributions#
Real-Time GPS Tracking#
I implemented background driver location tracking with periodic synchronization between the Flutter application and Laravel backend.
Atomic Driver Assignment#
I implemented atomic order acceptance and locking to prevent multiple drivers from claiming the same delivery.
Automated Dispatch#
I built backend dispatch rules that automatically assign stale queued orders after 15 minutes based on driver availability and capacity.
Modern Stripe Architecture#
I migrated the legacy Charges/token payment flow to Stripe PaymentIntents with PaymentMethod IDs and 3DS/SCA support.
Reliable FCM Pipeline#
I rebuilt Firebase notifications using FCM HTTP v1, Laravel service-account authentication, OAuth token caching, Android-safe payloads, and persisted notification records.
Automated Delivery Completion#
I implemented automatic delivery completion after 15 minutes when customer confirmation is not received.
Server-Side Pricing#
I centralized and validated order pricing on the backend, including subtotal, delivery fee, peak-time surcharge, and final order amount.
Onsite Billing#
I created a workflow for drivers to request additional charges and for customers to approve and pay those charges through Stripe.
Secure Authentication#
I replaced legacy token handling with Laravel Sanctum and strengthened the session lifecycle.
Catalog Synchronization#
I added Playwright-based vendor scraping tooling for catalog and pricing synchronization.
Results#
I transformed ION DASH from a legacy delivery application into a centralized logistics platform with stronger backend control over the complete customer-to-driver workflow.
The completed system provides:
- Modern Flutter applications for customers and drivers
- Real-time background driver tracking
- Automated driver dispatch
- Atomic delivery acceptance
- Driver capacity controls
- Custom quote management
- Quote notifications
- Proof-of-delivery workflows
- Customer delivery confirmation
- Automated delivery completion
- Delivery escalation handling
- Stripe PaymentIntents and SCA support
- Server-side order pricing
- Onsite additional billing
- Reliable FCM HTTP v1 notifications
- Modern Sanctum authentication
- Facebook Login
- Google Maps navigation
- Vendor catalog and pricing synchronization
- Dockerized MySQL infrastructure
- Focused backend regression testing
Technology Stack#
Mobile#
Flutter, Dart, package_info_plus, background GPS tracking
Backend#
Laravel, PHP, Laravel Sanctum, Laravel Scheduler, REST APIs, PHPUnit
Database & Infrastructure#
MySQL, Docker, Docker Compose
Integrations#
Firebase Cloud Messaging HTTP v1, Stripe PaymentIntents, Google Maps API, Facebook Login, Playwright
Development#
Git
Gallery










Tech stack
Google Maps API
REST APIsTimeline & Milestones
Legacy Assessment
(Phase 1)Analyzed the outdated mobile experience, unreliable notifications, fragmented routing, legacy authentication, payment flow, and fragile dispatch behavior
Platform Re-Architecture
(Phase 2)Reworked the Flutter applications and centralized operational logic in the Laravel backend
Real-Time Operations
(Phase 3)Added background GPS tracking, automated dispatch, atomic driver assignment, capacity rules, and live admin tracking
Payments & Security
(Phase 4)Migrated Stripe to PaymentIntents, added 3DS/SCA support, server-side pricing validation, and Laravel Sanctum authentication
Delivery Automation
(Phase 5)Added proof of delivery, customer confirmation, automated completion, escalation handling, and onsite billing
Integration & Reliability
(Phase 6)Rebuilt FCM notifications, added catalog synchronization, Dockerized infrastructure, and focused regression tests
Outcomes & Impact
- Flutter Rebuild
Modern Mobile Experience
Replaced the legacy mobile experience with a modern Flutter interface
- Customer + Driver Apps
Dedicated Applications
Established separate Customer and Driver applications
- Background GPS
Real-Time Tracking
Enabled background driver GPS tracking with Laravel backend synchronization
- 15-Minute Auto-Assignment
Automated Dispatch
Automatically assigns stale queued orders based on driver availability and capacity
- Atomic Locking
Driver Assignment
Prevented duplicate driver acceptance and dispatch conflicts
- FCM HTTP v1
Push Notifications
Improved Android notification reliability with modern Firebase notification handling
- Stripe PaymentIntents
Payments
Modernized legacy Stripe payment processing with secure PaymentIntents architecture
- 3DS / SCA
Payment Security
Added support for modern authentication and secure payment confirmation
- Server-Side Validation
Pricing
Recalculated and validated order totals on the backend before order creation
- Proof of Delivery
Delivery Proof
Added secure delivery image capture and customer delivery confirmation workflows
- Auto-Completion
Delivery Automation
Automatically completes deliveries after 15 minutes without customer confirmation
- Delivery Escalation
Escalation
Added workflows for disputed and unconfirmed deliveries
- Stripe-Powered Charges
Onsite Billing
Enabled drivers to request additional charges with customer approval and Stripe payment
- Automated Vendor Pricing
Catalog Sync
Added Playwright-based vendor scraping and catalog/pricing synchronization
- Laravel Sanctum
Security
Replaced legacy token handling with centralized Sanctum authentication
- Docker + MySQL
Infrastructure
Standardized development and database infrastructure with Docker Compose
- Regression Coverage
Quality
Added focused tests covering delivery, payment, FCM, and backend workflows
Technical Insights
