MPPT Care: Customer App for Android & iOS
An after sales service app for solar system customers in Pakistan: book inspection, repair and maintenance, pick the location on a map, pay, and track every request from booking to completion.
The problem
Solar system owners had no simple way to register a product, check its warranty or report a fault. Requests arrived through phone calls and messages, with missing details and no clear status.
Customers needed one app to book service, share the exact site location, pay, and see where their request stands without calling the office.
What I built
- Flutter app for iOS and Android, published on both stores
- Service booking for inspection, repair and maintenance
- City selection with map based location pinning (Google Maps)
- Multiple payment options
- Real time request tracking from booking to completion, with instant in app notifications
- Multi step complaint wizard
- Product registration and warranty tracking
- OTP authentication with strict lockout logic after repeated failed attempts
- Customer ratings and feedback, profile and saved address management
Technical challenges
Stopping OTP abuse without locking out real users
- Problem
- OTP login is an easy target for brute force guessing and SMS flooding, but overly strict rules frustrate real customers.
- Solution
- Limited verification attempts per code and resend requests per number, with a timed lockout once limits are hit. Codes expire quickly and are invalidated after use. The API returns clear lockout messages so the app can show when the user can try again.
A complaint form that captures complete information
- Problem
- One long form led to incomplete complaints and back and forth calls to collect the address, product and issue details.
- Solution
- Split the flow into a multi step wizard that validates each step, lets the customer pick the exact location on Google Maps, and preselects the product from their registered units.
Architecture overview
Clients
Customer app
Flutter · iOS + Android
Staff app
Flutter · field technicians
Filament admin
RBAC, staff roles
Company website
Public site
Backend
Laravel REST API
Auth/OTP · bookings · complaints · warranty · lab
Data & services
MySQL
Core data
SMS gateway
OTP delivery
Google Maps
Location picking
A single API serves the customer app, staff app, admin panel and website, so business rules live in one place.
Filament runs inside the same Laravel app, sharing models and policies with the API.
Screenshots
Results
Live on the App Store and Google Play. Customers book, pay for and track solar service requests in the app, with regular feature and performance updates since launch.