VIP Cleaners POS
Point of sale and operations for a shoe-cleaning business
- 28
- information tables
- 42
- internal services
- 24
- pages
- 36,000
- lines of code
/What it is
The point of sale and daily management of a shoe-cleaning business: pair reception, storage, payments, inventory, online booking and order tracking for the customer.
/The real problem
In a business with several cashiers working at once, two people can't mix up orders, and the total of a payment can't depend on what the customer's browser calculates.
/Decisions I made
- D-01
The server does the money calculations
Amounts are always calculated on the server and in whole cents. Any operation touching several tables is saved completely or not at all.
- D-02
Every change has an owner
Each modification is attributed to the real person who made it, not a generic user, and changes to the database cannot be altered afterwards.
- D-03
What happens when several people work at once is tested
Tests verify that two cashiers don't cross orders and that inventory stays correct even when several people change it at the same time.
- D-04
Private photos, public tracking
Photos of the pairs are private and only open through a link that expires after 5 minutes. Customers follow their order with a personal link, protected against bots.
/Screenshot of the production site









/How it works inside
01 Entry
- Pair reception
- Online booking
02 System
- Public services
- Administration services
03 Rules
- Rules by topic
- Protected operations
04 Storage
- Database
- Private photos
- Tracking with a personal link
/Result
A system with 28 information tables, 42 internal services, 24 pages and about 36,000 lines of code, which was also migrated from MySQL to PostgreSQL with a conversion script.
/ Status
Live at vip-cleaners-pos.vercel.app, with a written setup guide.
Got a similar problem?
The first conversation is free. Tell me how your business runs and we'll see what can be built.
/ Next project
Júpiter Studio
A data structure that serves different brands