Kasir & Operasional โ†’ Riwayat & Refund

Riwayat & Refund

Lihat, cari, dan refund transaksi. Cetak ulang struk & KOT.

9. Riwayat Transaksi & Refund

Menu Riwayat (icon teal jam) menampilkan semua transaksi yang sudah selesai. Dari sini Anda bisa lihat detail, cetak ulang struk/KOT, reorder, dan proses refund.

A. Riwayat Transaksi (List)

Header berjudul Riwayat Transaksi. List urut dari paling baru di atas.

Halaman Riwayat Transaksi dengan search Cari ID / nama customer, baris filter Metode (Semua/Cash/Piutang/Qriss/Transfer Bank), baris filter Tipe (Semua Tipe/Dine-in/Take Away/Delivery), list transaksi dengan ID TRX-NNNN atau TRX-YYYYMMDD-NNNN, metode bayar, total, tanggal/jam, jumlah produk
Halaman Riwayat Transaksi

Header & Filter:

  • ๐Ÿ“… Calendar di header โ€” filter rentang tanggal (sama seperti di Pengeluaran)
  • Search: cari berdasarkan ID transaksi atau nama customer
  • Filter Metode Pembayaran (chip horizontal): Semua / Cash / Piutang / Qriss / Transfer Bank
  • Filter Tipe Pesanan (chip horizontal): Semua Tipe / Dine-in ๐Ÿด / Take Away ๐Ÿ›๏ธ / Delivery ๐Ÿ›ต

Per card transaksi menampilkan:

  • Icon receipt + ID transaksi (badge top-right)
  • Customer (jika di-attach, contoh "fira")
  • Metode pembayaran utama (Cash, Transfer Bank, dll)
  • Total (bold biru)
  • Tanggal & jam
  • Jumlah item produk

Format ID transaksi: bisa TRX-NNNN (incremental 4 digit) atau TRX-YYYYMMDD-NNNN (per tanggal). Format yang dipakai bisa diatur di Pengaturan โ†’ Pengaturan Nomor Dokumen.

B. Detail Transaksi & 6 Pilihan Aksi

Tap card di list โ†’ halaman Detail Transaksi.

Detail Transaksi dengan card atas info TRX-20260510-0001 Cash Rp8.000 10 Mei 2026 16:20 Kasir Ayu Diah dengan badge Take Away, Item Pembelian MIE GAHAR 1x Rp8.000, Detail Pembayaran Subtotal/Total/Jumlah Bayar, Pilihan Aksi 6 tombol: Cetak Struk, Cetak KOT, Bagikan Struk, Bagikan PDF, Pesan Lagi, Refund
Detail Transaksi โ€” info + 6 pilihan aksi

Card atas (info transaksi):

  • ID transaksi (badge)
  • Metode pembayaran utama
  • Total (bold)
  • Tanggal & jam
  • Kasir: nama kasir yang melayani
  • Badge tipe pesanan (Dine-in / Take Away / Delivery)

Section di tengah:

  • Item Pembelian (n) โ€” daftar menu dengan thumbnail, qty ร— harga, modifier yang dipilih, catatan, subtotal
  • Detail Pembayaran โ€” Subtotal, Diskon (kalau ada), Pajak/Biaya (kalau ada), Total, Jumlah Bayar (split payment muncul terpisah)

Pilihan Aksi (6 tombol berwarna):

TombolWarnaFungsi
๐Ÿ–จ๏ธ Cetak StrukOranyeReprint struk pelanggan ke printer Bluetooth
๐Ÿด Cetak KOTUnguReprint Kitchen Order Ticket ke printer dapur (FnB-specific)
๐Ÿ–ผ๏ธ Bagikan StrukBiruShare image struk via WhatsApp / email / dll
๐Ÿ“„ Bagikan PDFPinkShare PDF struk yang lebih formal
โ†ป Pesan LagiHijauClone item ke keranjang Kasir baru (untuk customer langganan)
โ†ฉ๏ธ RefundMerahBuka halaman Refund Parsial

Tips: Tombol Cetak KOT dari Detail Transaksi berguna kalau dapur kehilangan KOT atau printer dapur sempat mati saat awalnya. Tinggal tap dari Riwayat โ€” KOT cetak ulang.

C. Refund Parsial (Mendukung Full & Partial)

Halaman dinamai Refund Parsial โ€” namun mendukung full refund via tombol Pilih Semua. Tidak ada page Full Refund terpisah.

Banner info dari aplikasi: "Pilih item dan jumlah yang ingin di-refund. Diskon transaksi tidak dikembalikan, biaya lainnya (pajak, biaya tambahan) dihitung proporsional."

Cara Refund:

  1. Buka Riwayat โ†’ cari & tap transaksi
  2. Di Detail Transaksi, tap tombol merah โ†ฉ๏ธ Refund
  3. Halaman Refund Parsial terbuka โ€” header info transaksi + 2 tombol shortcut:
    • Pilih Semua โ€” centang semua item (= efek full refund)
    • Batalkan โ€” un-check semua item
  4. Di section Pilih Item untuk Refund:
    • Centang item yang mau di-refund
    • Setelah dicentang, muncul stepper Qty refund: โˆ’ N + โ€” bisa adjust jumlah parsial (misal qty asli 3, refund 2 saja)
    • Sisa: x/y di kanan menampilkan stok refund yang masih tersedia
  5. Lihat Rincian Refund โ€” Subtotal Item & TOTAL REFUND auto-update merah
  6. Pilih Alasan Refund โ€” 5 chip preset:
    • Barang rusak
    • Salah item
    • Permintaan pelanggan
    • Barang tidak sesuai
    • Komplain kualitas
    Atau ketik manual di Alasan Refund (opsional) textarea
  7. Tombol Proses Refund (navy) aktif setelah ada item dipilih โ†’ tap untuk konfirmasi
  8. Atau tap Batal di bawah untuk batalkan
Halaman Refund Parsial dengan banner info biru, header Transaksi #0049, 2 tombol Pilih Semua dan Batalkan, section Pilih Item untuk Refund dengan checkbox MIE GAHAR @ Rp8.000 Sisa 1/1, Rincian Refund Total Rp0, 5 chip alasan refund, tombol Proses Refund disabled dan Batal
Refund Parsial โ€” empty state
Refund Parsial dengan MIE GAHAR dicentang, stepper Qty refund - 1 +, Rincian Refund TOTAL REFUND Rp8.000 merah, tombol Proses Refund navy aktif
Setelah Pilih Semua โ€” stepper qty muncul, total update

D. Efek Refund & Catatan Penting

๐Ÿ“Š Efek otomatis saat Proses Refund:

  • Stok Produk: item yang di-refund otomatis dikembalikan ke stok
  • Bahan Baku: kalau produk pakai resep, bahan baku yang tadinya berkurang akan dikembalikan (reverse)
  • Loyalty Points: poin yang didapat dari transaksi ditarik dari saldo customer
  • Piutang: kalau transaksi tipe BON/Piutang, piutang ikut disesuaikan
  • Laporan: Net Sales = Sales โˆ’ Refunds
  • Refund parsial bisa berkali-kali โ€” sisa item yang belum di-refund bisa di-refund di lain hari

โš ๏ธ Yang TIDAK dikembalikan:

  • Diskon transaksi tidak dikembalikan (banner info di app)
  • Pajak & Biaya tambahan dihitung proporsional dari item yang di-refund

โš ๏ธ Penting:

  • Refund tidak bisa dibatalkan โ€” pastikan customer benar-benar mengembalikan barang fisik (untuk produk) dulu
  • Refund untuk F&B menu yang sudah dimasak/dimakan: pertimbangkan baik-baik โ€” biasanya biaya bahan tetap keluar walaupun stok di-reverse
  • Untuk transaksi BON/Piutang yang belum lunas: lunasi dulu sebelum refund
  • Catat alasan refund dengan jelas โ€” berguna untuk audit dan analisa kualitas operasional