15. Pesanan Pelanggan (Pre-Order)
Pesanan Pelanggan (Customer Order / Pre-Order) adalah fitur untuk mencatat pesanan yang akan dipickup/dikirim di kemudian hari, dengan opsi pembayaran DP atau lunas di awal.
Cocok untuk: toko kue (pesan hari H-3), toko elektronik (indent), katering, florist, dll.
A. Daftar Pesanan Pelanggan
Akses: menu Pre-Order di home (tema ungu).
- Stats card (3 metric):
- Total โ jumlah pesanan total
- Menunggu โ pesanan yang belum diselesaikan
- Belum Bayar โ total Rupiah saldo yang belum dibayar customer
- Search by nama pelanggan atau nomor pesanan (PRE-XXXX)
- 4 tab filter: Semua / Menunggu / Selesai / Dibatalkan
- Per pesanan card:
- Status badge: MENUNGGU (kuning) / SELESAI (hijau) / DIBATALKAN (merah)
- Tanggal & waktu dibuat
- Kode PRE-XXXX + nama pelanggan + tanggal Ambil
- Total Rupiah + status pembayaran (Lunas hijau / DP / Belum Bayar)

Dashboard juga menampilkan reminder kalau ada pesanan yang akan pickup hari ini.
B. Buat Pesanan Pelanggan
Pesanan dibuat dari Kasir โ Konfirmasi Pembayaran dengan toggle Simpan sebagai Pre-Order diaktifkan.
Langkah:
- Buka menu Kasir โ buka shift dulu kalau belum
- Pilih produk yang dipesan, atur qty di keranjang
- Tap tombol Bayar di kanan bawah โ masuk Konfirmasi Pembayaran
- Di section CUSTOMER, tap + Pilih untuk attach pelanggan (wajib untuk pre-order โ supaya bisa di-tracking siapa yang pesan)
- Di section PESANAN PO, toggle Simpan sebagai Pre-Order ON
- Hint: "Pesanan diambil di kemudian hari"
- Field Tanggal Pickup muncul โ pilih tanggal kapan customer ambil
- Lanjutkan isi form sesuai kondisi pembayaran:
- Lunas di awal: isi Jumlah Bayar sama dengan total โ bayar penuh sekarang
- DP: isi Jumlah Bayar dengan jumlah DP yang diterima (kurang dari total) โ sisa otomatis tercatat sebagai Belum Bayar
- Belum Bayar: isi Jumlah Bayar dengan 0 atau biarkan kosong โ semua jadi piutang pre-order
- Tap Proses Pembayaran
- Pesanan tercatat di menu Pre-Order dengan kode
PRE-XXXX
Catatan: Stok produk belum dikurangi saat Pre-Order dibuat โ hanya saat pesanan diselesaikan/diambil customer. Ini supaya barang tetap available untuk transaksi lain sambil menunggu pickup.
C. Detail Pesanan & Konversi ke Transaksi
Tap card pesanan dari list โ halaman Detail Pesanan:
- Banner status (warna sesuai: kuning Menunggu / hijau Selesai / merah Dibatalkan)
- PELANGGAN โ nama pelanggan
- TANGGAL AMBIL โ tanggal pickup yang dijadwalkan
- ITEM PESANAN โ daftar item dengan qty & harga
- RINGKASAN PEMBAYARAN:
- Subtotal, Total Pesanan
- Sudah Bayar (Metode pembayaran), Sisa Bayar
- Status: LUNAS (hijau) / DP / BELUM BAYAR
- CATATAN
- Header: icon print & share

Konversi ke Transaksi (Saat Customer Pickup):
- Buka menu Pre-Order โ tab Menunggu
- Cari pesanan yang mau dipickup, tap card untuk masuk detail
- Tap tombol Proses atau Selesaikan Pesanan
- Kalau masih ada Sisa Bayar, sistem akan minta pembayaran pelunasan (pilih metode + input jumlah)
- Setelah selesai:
- Stok produk dikurangi sesuai item pesanan
- Pesanan pindah ke tab Selesai
- Transaksi penjualan otomatis tercatat di Riwayat (kode TRX-XXXX baru)
- Kalau customer member loyalty, point earning otomatis berjalan
๐ก Tips:
- DP tercatat sebagai pembayaran parsial โ sisa otomatis ditagih saat pickup
- Cek dashboard / menu Pre-Order setiap pagi untuk lihat pesanan pickup hari ini
- Pesanan yang tidak diambil customer bisa dibatalkan (tab Dibatalkan)
- Pre-Order yang sudah Lunas tinggal serah terima โ pelunasan tidak perlu lagi
D. Multi-Kasir Support
Di mode Multi-Kasir Client, pesanan pelanggan tetap bisa dibuat dan diproses. Data pesanan di-sync ke Server secara otomatis. Tanggal pickup bisa dilihat dari semua device.