Sistem Kasir Minimarket adalah aplikasi Point of Sale (POS) berbasis web yang dirancang untuk membantu pengelolaan transaksi penjualan di toko/minimarket. Aplikasi ini dilengkapi dengan fitur-fitur lengkap seperti:
β Transaksi kasir dengan scan barcode β Manajemen produk & stok β Diskon otomatis berdasarkan minimal belanja β Metode pembayaran: Cash, QRIS, Transfer β Cetak struk belanja β Tutup kasir & rekonsiliasi uang β Laporan transaksi lengkap
- Frontend: HTML, CSS, JavaScript
- Backend: PHP (Native)
- Database: MySQL
- Server: XAMPP
- Barcode Scanner: USB Barcode Scanner (input keyboard)
- Printer: Thermal Printer / Browser Print
Pastikan Anda sudah menginstal:
- XAMPP (Apache & MySQL)
- Browser (Chrome/Firefox/Edge)
- Text Editor (VS Code/Sublime/Notepad++)
Ekstrak folder sistem_kasir ke dalam:
C:\xampp\htdocs\sistem_kasir
- Buka browser dan akses:
http://localhost/phpmyadmin - Buat database baru dengan nama:
kasir_minimarket - Klik database yang baru dibuat
- Pilih menu "Import"
- Pilih file
database.sqldari folder sistem_kasir - Klik "Go" untuk import
Jika menggunakan username/password MySQL yang berbeda, edit file config.php:
define('DB_HOST', 'localhost');
define('DB_USER', 'root'); // Sesuaikan
define('DB_PASS', ''); // Sesuaikan
define('DB_NAME', 'kasir_minimarket');- Start XAMPP (Apache & MySQL)
- Buka browser
- Akses:
http://localhost/sistem_kasir - Login menggunakan kredensial default
- Username:
admin - Password:
admin123
- Username:
kasir1 - Password:
kasir123
- Login sebagai kasir atau admin
- Klik menu "Kasir"
- Scan barcode produk atau ketik barcode manual
- Produk akan otomatis masuk ke keranjang
- Tambah/kurangi qty dengan tombol +/-
- Sistem akan otomatis menghitung diskon jika memenuhi syarat
- Pilih metode pembayaran:
- Cash: Input jumlah uang yang dibayar
- QRIS/Transfer: Langsung proses
- Klik "PROSES PEMBAYARAN"
- Struk otomatis muncul dan bisa dicetak
- Klik menu "Produk"
- Tambah Produk Baru:
- Isi form: Barcode, Nama, Kategori, Harga
- Klik "Tambah Produk"
- Edit Produk:
- Klik tombol "Edit" pada produk
- Ubah data, klik "Simpan"
- Tambah Stok:
- Klik tombol "Stok" pada produk
- Input jumlah stok yang ditambah
- Isi keterangan (misal: "Barang datang dari supplier")
- Hapus Produk:
- Klik tombol "Hapus" (produk menjadi nonaktif)
- Klik menu "Diskon"
- Tambah Diskon:
- Minimal Belanja: Contoh
50000(Rp 50.000) - Persentase: Contoh
5(5%) - Keterangan: Contoh "Diskon 5% untuk belanja min 50rb"
- Minimal Belanja: Contoh
- Aktifkan/Nonaktifkan: Klik tombol toggle status
- Simulasi: Gunakan form simulasi untuk test diskon
Cara Kerja Diskon:
- Sistem otomatis memilih diskon terbesar yang memenuhi syarat
- Contoh:
- Belanja Rp 60.000 β Dapat diskon 5% (min 50rb)
- Belanja Rp 120.000 β Dapat diskon 10% (min 100rb)
- Belanja Rp 250.000 β Dapat diskon 15% (min 200rb)
- Di akhir hari/shift, klik menu "Tutup Kasir"
- Sistem menampilkan rekap penjualan:
- Total transaksi
- Penjualan Cash, QRIS, Transfer
- Hitung uang fisik di laci kasir
- Input jumlah uang fisik di form
- Sistem otomatis menghitung selisih:
- Plus: Uang lebih (Rp XXX lebih)
- Minus: Uang kurang (Rp XXX kurang)
- Pas: Sesuai sistem
- Isi keterangan jika ada selisih
- Klik "TUTUP KASIR"
Catatan:
- Tutup kasir hanya bisa dilakukan 1x per hari per kasir
- Setelah tutup kasir, data akan tersimpan di riwayat
- Klik menu "Transaksi"
- Filter berdasarkan:
- Tanggal (dari - sampai)
- Metode pembayaran
- Lihat Detail: Klik tombol "Detail" untuk melihat item yang dibeli
- Cetak Ulang Struk: Klik tombol "Struk"
- Hubungkan USB Barcode Scanner ke komputer
- Scanner akan otomatis terdeteksi sebagai keyboard
- Fokus cursor di input barcode (halaman kasir)
- Scan barcode produk
- Produk otomatis masuk ke keranjang
- Install driver printer thermal
- Di halaman struk, klik "Cetak Struk"
- Pilih printer thermal Anda
- Atur ukuran kertas sesuai thermal (biasanya 80mm)
- Enter setelah scan: Otomatis tambah produk
- Tab: Pindah antar field
- F5: Refresh halaman
- users: Data user (admin/kasir)
- produk: Master produk & stok
- diskon_belanja: Setting diskon
- transaksi: Header transaksi
- detail_transaksi: Detail item transaksi
- log_stok: Riwayat stok masuk/keluar
- tutup_kasir: Data rekonsiliasi
Solusi:
- Pastikan MySQL di XAMPP sudah running
- Cek konfigurasi di
config.php - Pastikan nama database:
kasir_minimarket
Solusi:
- Pastikan barcode sudah terdaftar di database
- Cek status produk = 'aktif'
- Periksa input barcode (tidak ada spasi)
Solusi:
- Periksa tabel
log_stok - Pastikan trigger stok berjalan
- Cek transaksi berhasil tersimpan
Solusi:
- Pastikan total belanja sudah memenuhi minimal belanja
- Cek status diskon = 'aktif'
- Periksa perhitungan di tabel
diskon_belanja
Solusi:
- Periksa apakah sudah tutup kasir hari ini
- Pastikan ada transaksi di hari tersebut
- Cek user_id yang login
- Backup Database Rutin: Export database setiap hari/minggu
- Gunakan Barcode Scanner: Lebih cepat daripada input manual
- Tutup Kasir Setiap Hari: Untuk rekonsiliasi yang akurat
- Update Stok Berkala: Sesuaikan dengan barang fisik
- Cek Laporan: Monitor penjualan dan stok secara berkala
- Gunakan password yang kuat untuk user
- Ganti password default setelah instalasi
- Backup database secara berkala
- Jangan expose database ke internet
- Gunakan HTTPS untuk deployment production
Untuk pengembangan lebih lanjut, Anda bisa menambahkan:
- Laporan grafik penjualan
- Export laporan ke Excel/PDF
- Integrasi payment gateway
- Multi-user kasir
- Notifikasi stok rendah
- Manajemen supplier
- Return/retur barang
- Member/loyalty program
Jika mengalami kesulitan, silakan:
- Baca dokumentasi ini dengan teliti
- Cek troubleshooting di atas
- Periksa log error di PHP
- Review kode di file terkait
Aplikasi ini dibuat untuk keperluan edukasi dan komersial. Anda bebas memodifikasi sesuai kebutuhan.
β Real-time Calculation: Total dan diskon dihitung otomatis β Stock Management: Stok terupdate real-time β Multi Payment: Cash, QRIS, Transfer β Auto Discount: Diskon otomatis berdasarkan total belanja β Cash Reconciliation: Rekonsiliasi uang fisik vs sistem β Print Receipt: Cetak struk profesional β Transaction History: Riwayat lengkap dengan detail β User Friendly: Interface sederhana dan mudah digunakan
Selamat menggunakan Sistem Kasir Minimarket! πͺ
Developed with β€οΈ for small business