# Old Money Wholesale Operations

> An internal wholesale operations app for a perfume brand. Reps register shops and place orders, packers verify and pack by barcode, an admin runs accounts, catalogue and pricing. Staff-only, no public link.

- Kind of build: Mobile / Web App
- Status: live

## Outcome

An internal wholesale operations app for a perfume brand.

## What we built

An internal wholesale operations app for a perfume brand. Reps register shops and place orders, packers verify and pack by barcode, an admin runs accounts, catalogue and pricing. Staff-only, no public link.

## Highlights

- The field app: shop registration with GPS and a duplicate-GSTIN rule, order placement and editing, delivery rounds, and offline capture that queues shops and orders on the device and replays them in order when signal returns (Flutter, on Android and the web)
- The packing app: a claimable queue, per-line counts, barcode verification against the order, and hand-off to a named rep (Flutter)
- The admin panel: dashboard, orders, dealer assurance reporting, shops, accounts, catalogue, per-shop pricing and a password-reset queue (Flutter, web)
- The API: role enforcement on every request, token authentication, server-allocated document numbers and GST-inclusive billing (Laravel, PHP, MySQL)
- The tooling: one-command build and deploy with rollback, database backup and post-deploy verification, plus operator commands and a spreadsheet importer (Node, Python)
- 22 screens, 41 API routes, 16 tables, and 746 passing automated tests
- A rep standing in a shop with no signal can still register that shop and place its order. Both queue on the device and replay in sequence when signal returns. Invoice numbers are the deliberate exception: they are allocated only by the server, inside a locked transaction, because GST requires them gapless. The device never invents one

## Stack

- Flutter
- Laravel
- PHP
- MySQL
- Node.js
- Python
- ERP

Built by Nudge Systems. [Every case study](https://nudgesystems.in/work).

---

Nudge Systems · [Home](https://nudgesystems.in/) · [Work](https://nudgesystems.in/work) · [Start a project](https://nudgesystems.in/#contact) · [llms.txt](https://nudgesystems.in/llms.txt) · [Sitemap](https://nudgesystems.in/sitemap.xml)
