01 / A trading and distribution business · 2026
An ERP that works with no signal
Sales, stock, credit recovery, and cash handover for a trading business, with an Android app that takes orders with no signal.
- Role
- Solo Full-Stack Engineer
- Timeline
- Solo build, production-ready
- Type
- ERP + offline-first Android app
- Stack
- Laravel 13 · Vue 3 · Pinia · Vue Router · MySQL · Capacitor · Tailwind CSS 4 · Chart.js
At a glance
- Sales tracking, stock control, credit recovery, salesman monitoring, and a cash handover workflow in one system.
- A Capacitor Android app that takes orders offline, queues them, and syncs with idempotent uploads.
- Role-guarded API for admin, salesman, and warehouse users, with photo and GPS proof on every shop visit.
01 / Context
A trading business run on registers and memory
The business tracked sales, stock, and credit on paper and in people heads. The owner wanted a system that did not depend on anyone remembering numbers.
02 / The app
Orders taken on a phone with no signal
Salesmen visit shops with an Android app that saves orders to an IndexedDB cache when the network drops, queues them, and syncs later with idempotent uploads so nothing is double-booked. A camera photo and automatic GPS capture prove the visit.
03 / Roles
Three kinds of users, three surfaces
Admin, salesman, and warehouse users each get a guarded API and a different view of the system. The admin sees a P&L panel that works through sales income, COGS, delivery, rent, electricity, salaries, and other costs down to net income.
04 / Status
Built and ready to deploy
This write-up is a placeholder while the full case study is written. The system is built, tested against seeded data, and ready for the deployment runbook.
- role-guarded user types
- Vue views
- offline-first Android app
- seeded products to start