21. Data Flow: POS & Loyalty
Alur penjualan kasir — dari buka sesi sampai tutup sesi, dengan loyalty poin otomatis.
Alur: Buka Sesi (saldo awal) → Scan/Pilih sparepart → Checkout → Invoice (type pos) + Payment + Stock berkurang + Income + Loyalty poin → Tutup Sesi (hitung fisik uang)
- Buka Sesi POS → input saldo awal kasir.
- Scan/pilih produk → keranjang → pilih customer (opsional) + metode bayar.
- Checkout → Invoice (invoice_type=pos) + PaymentRecord + StockRecord berkurang.
- Otomatis → Income + AutoJournal + Loyalty Points ke customer.
- Voucher bisa dipakai → diskon + VoucherUsage tercatat.
- Tutup Sesi → hitung fisik uang (denomination) → sistem hitung selisih.
/admin/pos
Terminal kasir — scan, checkout, voucher, split payment.
/admin/pos/sessions
Riwayat sesi — buka/tutup, saldo, selisih.
/admin/loyalty
Loyalty poin customer — bertambah otomatis tiap transaksi.