Kasir (POS) โ†’ Riwayat Transaksi

Riwayat Transaksi

Lihat, cari, dan refund transaksi yang sudah selesai.

7. Riwayat Transaksi

A. Tampilan Daftar Riwayat

Tema cyan. Buka menu Riwayat dari home untuk lihat semua transaksi penjualan + refund + tagihan piutang.

  • Header: icon kalender (filter rentang tanggal)
  • Search: Cari ID / nama customer / S/N... (S/N = Serial Number untuk produk SN-tracked)
  • 2 baris chip filter:
    • Baris 1 = filter metode pembayaran: Semua / BON / Cash / Piutang / QRIS / Transfer Bank
    • Baris 2 = filter tipe transaksi: Semua / Penjualan / Refund / Tagihan / Harga Custom
  • Per transaksi card:
    • Icon: struk untuk normal, icon refund (merah) untuk transaksi refund
    • Customer name (kalau attach) atau metode (Cash/QRIS/dll)
    • Amount (merah kalau refund)
    • Tanggal & waktu
    • Kode TRX-XXXX (kanan atas)
    • Jumlah produk + badge Refunded (hijau) kalau sudah pernah di-refund
Halaman Riwayat Transaksi dengan 2 baris chip filter (metode dan tipe), list transaksi normal dan refund
Riwayat Transaksi โ€” list dengan 2 baris filter chip

B. Filter & Cari Transaksi

  • Filter Tanggal โ€” tap icon kalender di header. Muncul dialog Pilih Rentang Tanggal dengan calendar view (multi-bulan). Tap tanggal Mulai โ†’ tap tanggal Akhir โ†’ tap Terapkan
  • Filter Metode Pembayaran โ€” tap chip di baris 1 (Cash, QRIS, Transfer Bank, Piutang, BON)
  • Filter Tipe Transaksi โ€” tap chip di baris 2:
    • Penjualan โ€” transaksi penjualan biasa
    • Refund โ€” transaksi refund
    • Tagihan โ€” pembayaran piutang dari customer
    • Harga Custom โ€” transaksi yang harga produk-nya diubah saat checkout (kalau Izinkan Harga Fleksibel aktif)
  • Search โ€” kode transaksi (TRX-0948), nama customer, atau Serial Number/IMEI
Dialog Pilih Rentang Tanggal dengan calendar view multi-bulan, Pilih Mulai dan Pilih Akhir
Dialog Pilih Rentang Tanggal

Filter bisa dikombinasikan: pilih tanggal + metode + tipe + search untuk hasil yang spesifik.

C. Detail Transaksi

Tap card transaksi โ†’ halaman Detail Transaksi dengan susunan:

  • Header card: chip TRX-XXXX, Metode (Cash/QRIS/dll), Total Rupiah, Tanggal & waktu, Kasir yang melayani
  • Pelanggan โ€” avatar + nama (kalau attach customer)
  • Item Pembelian (N) โ€” list per item: foto/initial, nama produk + chip varian/satuan, qty ร— harga satuan, subtotal item
  • Detail Pembayaran โ€” Subtotal, Diskon, Pajak, Biaya, Total, breakdown Pembayaran (Cash/Transfer/dll dengan jumlahnya)
  • Poin Member (kalau customer attach) โ€” Poin Didapat / Poin Ditukar / Saldo Poin terbaru
  • Pilihan Aksi โ€” 5 tombol di bawah
Detail Transaksi TRX-0946 dengan info kasir, pelanggan AISYAH, item AMOXICILLIN, detail pembayaran, dan poin member
Detail Transaksi โ€” info, item, pembayaran, poin

5 Pilihan Aksi:

  1. ๐ŸŸ  Cetak Struk โ€” print ke printer Bluetooth
  2. ๐Ÿ”ต Bagikan Struk โ€” share struk sebagai gambar (WA, dll)
  3. ๐Ÿฉท Bagikan PDF โ€” share struk sebagai file PDF
  4. ๐ŸŸข Pesan Lagi โ€” buat transaksi baru dengan item yang sama
  5. ๐ŸŸฅ Refund โ€” kembalikan transaksi (lihat section F)
Pilihan Aksi di Detail Transaksi: Cetak Struk, Bagikan Struk, Bagikan PDF, Pesan Lagi, Refund
5 Pilihan Aksi di Detail Transaksi

D. Cetak Ulang & Bagikan Struk

Buka detail transaksi, gunakan tombol di Pilihan Aksi:

  • Cetak Struk:
    • Kalau printer Bluetooth sudah pair โ†’ langsung print
    • Kalau belum โ†’ muncul preview struk di layar
  • Bagikan Struk โ€” render struk sebagai gambar JPG, share via Android share-sheet (WA, Telegram, Gmail, dll)
  • Bagikan PDF โ€” render struk sebagai PDF, share via share-sheet (cocok untuk customer yang minta invoice resmi)

E. Pesan Lagi (Reorder Cepat)

Untuk customer yang sering beli barang sama. Hemat waktu, gak perlu ulang scan/cari produk.

  1. Buka detail transaksi yang mau di-copy
  2. Tap tombol Pesan Lagi (hijau)
  3. Sistem buat keranjang baru dengan item yang sama
  4. Lanjut ke Konfirmasi Pembayaran seperti biasa

Customer dari transaksi original ikut di-attach otomatis (termasuk diskon, catatan, dll bisa diubah sebelum bayar).

F. Refund Transaksi ๐Ÿ”„

Fungsi: Membatalkan transaksi penjualan yang salah atau komplain pelanggan. Stok otomatis kembali, laporan otomatis dikoreksi (Net Sales).

โš ๏ธ Syarat Refund:
  • โœ… Hanya tipe transaksi Penjualan (bukan Refund/Tagihan)
  • โœ… Belum pernah di-refund sebelumnya (tidak ada badge Refunded)
  • โŒ Transaksi piutang harus dilunasi dulu sebelum bisa di-refund
Cara Refund (Penuh atau Sebagian):
  1. Buka Detail Transaksi dari Riwayat
  2. Tap tombol Refund (merah, di Pilihan Aksi)
  3. Masuk halaman Konfirmasi Refund:
    • Informasi Transaksi โ€” No. Transaksi (#0948), Tanggal
    • Pilih Item Refund โ€” semua item ter-checked (red border) by default. Uncheck item kalau cuma mau refund sebagian. Link "Batal Semua" untuk uncheck semua sekaligus
    • Rincian Refund โ€” Subtotal Item + TOTAL REFUND (otomatis update sesuai item yang di-checked)
    • Alasan Refund โ€” pilih dari 5 preset chip: Barang rusak, Salah item, Permintaan pelanggan, Barang tidak sesuai, Komplain kualitas
    • Alasan Refund (opsional) โ€” textarea catatan tambahan
  4. Tap tombol Proses Refund (label berubah jadi Proses Refund (Penuh) kalau semua item di-check, atau Proses Refund (Sebagian) kalau ada yang di-uncheck)
Konfirmasi Refund untuk #0948 dengan Pilih Item (2 item ter-checked), Rincian Refund Total Rp78.000, dan 5 preset Alasan Refund
Halaman Konfirmasi Refund
Dampak Refund:
Stok Produk:
  • Stok bertambah kembali sesuai qty
  • Batch (kalau batch-tracked) dibuatkan dengan kode REFUND-XXX untuk traceability
  • Serial Number/IMEI (kalau SN-tracked) kembali ke stok tersedia
Laporan & Dashboard:
  • Semua laporan menghitung Net Sales (Penjualan โˆ’ Refund)
  • Dashboard "Penjualan" otomatis adjust
  • Poin loyalty yang sudah didapat customer ikut dikurangi
Riwayat:
  • Transaksi original dapat badge Refunded (hijau) di list
  • Transaksi Refund baru dibuat dengan kode TRX terpisah, link ke original
โš ๏ธ Catatan Penting:
  • Refund irreversible โ€” tidak bisa dibatalkan setelah diproses
  • Pastikan barang fisik sudah dikembalikan customer dulu
  • Print struk refund untuk customer (Cetak Struk di Detail Transaksi Refund yang baru dibuat)
  • Hanya user dengan permission Riwayat yang bisa proses refund