LaundryWalaa — Service E-Commerce
E-Commerce

Runs a restaurant’s delivery orders and counter bills from one system with one source of truth for sales.
A restaurant platform that unifies online delivery and in-store POS/KOT into one invoicing system, with QR guest ordering, a realtime kitchen display and 80mm thermal printing — built on NestJS with Socket.IO.

Haazir Eats extends an existing online delivery platform with a full POS/KOT and QR-ordering program, all under one unified invoicing model. A single set of invoice tables records both online delivery orders and in-store POS bills, with an invoice generated automatically (and idempotently) when an online order is delivered.
The POS module manages restaurant tables, table sessions, KOT orders, billing and QR codes. Guests can scan a table QR to order dine-in, or order takeaway without a table. The kitchen sees live updates through a Socket.IO namespace, and bills support discounts, tax, service charge, round-off and split/mixed payments, printed on an 80mm ESC/POS thermal layer.
The backend is NestJS (modular: invoices, pos, public, reports), paired with a Flutter partner app, a Next.js admin panel and a public marketing + ordering website.
A delivery platform needed in-store POS/KOT and QR ordering, but online orders and counter bills lived in different worlds — making unified reporting and kitchen coordination impossible.
Added POS/KOT and QR ordering as additive NestJS modules on top of the existing platform, with one unified invoice model recording both online and in-store sales, and Socket.IO driving realtime kitchen and table updates.
NestJS backend with modular design: `invoices` (unified online + POS), `pos` (tables/sessions/KOT/billing/QR), `public` (guest QR ordering) and `reports` (PDF/Excel)
Single invoice model (`invoices` / `invoice_items` / `invoice_payments`) with a `source_type` distinguishing online orders from KOT bills; an idempotent hook generates an invoice when an online order is delivered
`pos` Socket.IO gateway broadcasts realtime KOT/table/session updates to vendor rooms
Flutter partner app provides the POS/KOT UI, kitchen display and an 80mm ESC/POS printing layer; Next.js admin + a public website handle management and guest ordering
Online delivery orders and in-store POS bills needed unified reporting.
Designed one invoice schema with a source_type and an idempotent delivery hook, so every sale — online or counter — lands in the same ledger.
Kitchens needed instant, reliable KOT/table updates.
Built a Socket.IO `/pos` gateway with per-vendor rooms for realtime kitchen and table-session events.
Restaurants run delivery and dine-in from one system with a single source of truth for sales, a live kitchen view, and real thermal-printed KOTs/bills — with reporting that finally spans both channels.








