Fajar Toserba & Harihari Swalayan
Omnichannel Retail Platform with POS, Driver PWA & WhatsApp Gateway
Complete retail commerce ecosystem for supermarkets and minimarkets serving shoppers, store admins, and delivery drivers in one unified platform.
- Role
- Full-Stack Systems Architect
- Year
- 2026
- Production Domain
- fajartoserba.web.id / harihariswalayan.web.id
Context & Challenge
Modern retail operations required synchronized store inventory, instant catalog search across thousands of SKUs, a driver delivery app with live maps, and automated WhatsApp order notifications.
Architecture & Solution
Built a multi-portal Next.js 16 frontend (Customer, Admin, Driver PWA) with Leaflet and QR/barcode scanning, backed by Go Fiber v3 integrated with PostgreSQL, Typesense, Redis, MinIO, and Whatsmeow.
Key Implementation Details
- Multi-subdomain deployment: customer storefront, store admin panel, and driver delivery PWA.
- Comprehensive backend domains: POS, Inventory, Procurement, Accounting, Petty Cash, Loyalty, Returns, and Ticketing.
- Instant product search powered by Typesense and native WhatsApp messaging via whatsmeow.
- Automated end-to-end verification using Playwright across critical checkout flows.
System Architecture Flow
Next.js 16 PWA (Customer, Admin & Driver Portals)
Runs customer shopping, back-office administration, and mobile driver delivery with QR/barcode scanning.
- React 19
- React Query
- Zustand
- Leaflet
- html5-qrcode
Nginx Multi-Host Proxy
Routes main storefront, admin, and driver subdomains cleanly to frontend and Go API upstreams.
- Nginx
- Subdomain Routing
- PM2
Go Fiber v3 Monolith (25+ Internal Domains)
Processes carts, checkout, inventory, accounting, loyalty points, and transactional WhatsApp alerts.
- pgx/v5
- JWT
- Whatsmeow
- Barcode Generator
PostgreSQL + Typesense + Redis + MinIO + SQLite
Persists transactions, SKU search indices, session caches, product media, and WhatsApp session state.
- PostgreSQL
- Typesense
- Redis
- MinIO
Technology Stack
- Next.js 16
- PWA
- Leaflet
- Zustand
- Go
- Fiber v3
- Typesense
- PostgreSQL
- Whatsmeow
- Redis
Next Case Study
04 / Rabbany Ecosystem