Project Overview
Shop System Desktop is the offline Windows edition of my Shop System point-of-sale and back-office platform. A shop installs one program on its own PC and gets everything it needs: the till, the server and the database all run on the same machine, so trading carries on when the internet goes down.
I forked it from the web product and rebuilt the delivery around the shop owner: a one-file installer, a first-run setup wizard, a bundled MongoDB, licence keys, backups and silent receipt printing.
Key Features
- Till with cash, card, InstaPay, mobile wallet, bank transfer and on-account payments, split payments, discounts and parked baskets
- Orders, returns and refunds, customers and supplier (merchant) accounts with statements
- Purchases, purchase orders and supplier returns
- Products and categories with SKUs, barcode generation and A4 / roll label printing
- Inventory: stock ledger, adjustments, transfers, stocktakes and low-stock alerts
- Till shifts with float and cash reconciliation, expenses with recurring reminders, and salaries
- Dashboard with a "needs your attention" panel, plus a full set of reports (profit by product and category, stock value, dead stock, cashiers, money owed and more)
- Roles and permissions, audit logs, and an Odoo-style Apps grid with page search and keyboard shortcuts
- English, Arabic (full RTL) and French
Built for a real shop
- Phone as a barcode scanner: scan a QR code, point the phone camera at a product, and only the barcode text travels to the PC. The decoder ships inside the app and works with no internet.
- Multiple counters: one PC acts as the shop server and the other tills on the same network connect to it.
- Backups and restore on a schedule or by hand, with optional encryption.
- Licence keys: a copy without a valid key drops to read-only, so the shop can always reach its own data and backups but cannot keep trading.
- Excel and CSV import for products, customers and opening stock.
Architecture
An Electron shell starts the bundled mongod, runs the Express API in a child process and opens the React till on it, all in one window. The project is covered by server, client and desktop unit suites and by Playwright end-to-end tests, including the packaged installer.
Current release: 1.0.6, shipped as a Windows installer.

