Aplikasi Kasir Gratis Buat UMKM - Ringan, Offline, dan Open Source

Tampilan halaman kasir POSKasir berbasis PHP dan SQLite

Halo teman-teman, kali ini saya ingin berbagi sesuatu yang bermanfaat, terutama bagi Anda yang punya usaha kecil seperti toko kelontong, warung kopi, kafe mini, atau toko online.

Saya ingin membagikan aplikasi POSKasir, sebuah aplikasi Point of Sale (kasir) gratis yang dibuat dengan PHP dan SQLite.

Kenapa POSKasir?

Banyak aplikasi kasir yang bagus di luar sana, tetapi biasanya:

  • Harus bayar langganan bulanan
  • Butuh koneksi internet terus-menerus
  • Instalasi dan setup yang rumit
  • Berat di komputer lama

POSKasir saya buat dengan kode yang sangat sederhana, ringan, dan bisa dijalankan secara offline di localhost. Dalam artikel ini saya memakai XAMPP sebagai servernya.

Fitur Utama POSKasir

  • Dashboard Utama untuk melihat statistik toko.
  • Kasir (POS) untuk transaksi penjualan. Produk bisa dicari lewat scan barcode atau ketik nama, dengan tiga metode pembayaran (tunai, kartu, dan QRIS) serta kembalian yang dihitung otomatis. Transaksi yang belum selesai bisa ditahan dulu, lalu dilanjutkan nanti.
  • Sesi Kasir untuk membuka sesi saat toko buka dan menutupnya setiap hari, lengkap dengan pencocokan uang di laci.
  • Riwayat Transaksi untuk melihat transaksi yang sudah dilakukan. Struk bisa dicetak ulang, dan transaksi yang salah bisa dibatalkan (void) oleh admin dengan stok yang otomatis dikembalikan.
  • Hutang Pelanggan. Ini fitur yang paling penting. Kadang pelanggan berutang karena uang yang dibawa tidak cukup, hehehe.
  • Master Data: Produk, Kategori, Supplier, dan Pelanggan.
  • Manajemen Stok: Pembelian (barang masuk), Retur ke Supplier, Stok Opname, Kartu Stok, dan Retur dari Pelanggan.
  • Laporan: Laporan Penjualan, Laba Rugi Kasar, dan Laporan Stok.
  • Pengaturan: Profil Toko, Pengguna dan Hak Akses, Log Aktivitas, dan Backup Data.
  • Mode layar penuh lewat tombol di bagian atas halaman, nyaman untuk komputer kasir.
  • Akun Saya untuk mengganti password, dan tombol Keluar.
Tampilan dashboard POSKasir

Dua Pilihan Versi Aplikasi

POSKasir tersedia dalam dua versi. Keduanya memiliki fitur dasar yang sama, dan perbedaannya hanya pada cara pemberian diskon:

  • Versi 1: Diskon per transaksi. Diskon hanya diberikan pada total belanja (dalam Rupiah). Tampilannya lebih sederhana, cocok untuk warung atau toko kecil yang jarang memberi diskon per barang.
  • Versi 2: Diskon per item. Selain diskon total, setiap barang di keranjang punya kolom diskon yang bisa diisi dalam Rupiah atau persen. Versi ini menambah menu Pengaturan Diskon khusus admin.

Pada Versi 2, admin dapat:

  • Mengaktifkan atau menonaktifkan fitur diskon per item. Jika nonaktif, kolom diskon disembunyikan dan semua diskon item diabaikan.
  • Menentukan batas maksimal diskon untuk kasir dalam persen. Nilai bawaannya 20%, dan jika diisi 0 maka kasir tidak bisa memberi diskon sama sekali.

Admin dan Super Admin tidak dibatasi oleh pengaturan tersebut. Batas diskon juga diperiksa di sisi server, jadi tidak bisa diakali dari sisi tampilan browser.

Hak Akses Pengguna

Aplikasi memiliki empat peran pengguna:

  • Super Admin: akses penuh, termasuk mengubah Profil Toko dan mengelola semua akun.
  • Admin atau Owner: akses penuh, kecuali Profil Toko dan akun Super Admin.
  • Kasir: hanya POS, sesi kasir, dan retur penjualan.
  • Gudang: hanya produk dan stok.

Kenapa Memakai PHP dan SQLite?

Dengan SQLite, kita tidak perlu membuat database di phpMyAdmin. Seluruh data tersimpan dalam satu file database (data/pos.sqlite) yang dibuat otomatis saat halaman login dibuka pertama kali. Kita cukup memasang XAMPP, menjalankannya, lalu menyimpan folder aplikasi di htdocs.

Cara Instalasi di XAMPP atau Laragon

  1. Salin folder aplikasi ke htdocs (XAMPP) atau www (Laragon), misalnya menjadi htdocs/kasir.
  2. Pastikan ekstensi PHP pdo_sqlite aktif. Ekstensi ini sudah bawaan XAMPP dan Laragon.
  3. Atur hak akses folder. Folder data dan folder assets/uploads (tempat logo dan foto produk) harus bisa ditulis penuh, supaya PHP bisa menyimpan data ke database dan mengunggah gambar.
  4. Buka http://localhost/kasir/login.php di browser.
  5. Untuk mengakses dari HP atau PC lain dalam satu jaringan, buka http://IP-KOMPUTER-SERVER/kasir/login.php dan izinkan Apache di firewall.

Aplikasi juga bisa dipasang di hosting (cPanel) dengan mengunggah semua isi folder ke public_html. Pastikan folder data bisa ditulis dan ekstensi pdo_sqlite aktif. Jika hosting memakai Nginx, blokir akses ke folder data, database, config, dan includes lewat konfigurasi server, karena .htaccess tidak berlaku di sana.

Login Pertama Kali

Akun awal dibuat otomatis:

Peran Username Password
Super Admin pidin super123
Admin admin admin123


Segera ganti password lewat menu Akun Saya (paling bawah sidebar), lalu isi Profil Toko dengan data toko Anda yang sebenarnya.

Alur Penggunaan Harian untuk Kasir

  1. Login memakai akun kasir.
  2. Buka Sesi Kasir dan isi modal awal uang tunai di laci.
  3. Mulai transaksi di halaman Kasir (POS): scan atau cari produk, atur jumlah, pilih metode bayar, lalu konfirmasi.
  4. Struk tampil otomatis dan siap dicetak lewat tombol Cetak Struk atau Ctrl+P.
  5. Jika pelanggan belum siap membayar, tahan transaksinya dan lanjutkan nanti dari tombol Tertahan.
  6. Di akhir shift, tutup sesi, hitung uang fisik di laci, lalu cocokkan dengan estimasi dari sistem.

Backup Data

Menu Backup Data tersedia untuk Super Admin dan Admin. Ada dua pilihan: backup database (.sqlite) yang aman walau kasir sedang bertransaksi, dan backup lengkap beserta foto dalam bentuk ZIP (butuh ekstensi PHP zip). Lakukan backup secara rutin dan simpan di tempat terpisah dari komputer kasir.

Kebutuhan Server

  • PHP 7.4 atau lebih baru (disarankan PHP 8.x).
  • Ekstensi PHP pdo_sqlite, dan zip jika ingin backup lengkap dengan foto.
  • Tidak perlu MySQL.

Download Aplikasi

Aplikasi dapat diunduh gratis melalui tautan berikut: Download Aplikasi POSKasir di sini

Pilih salah satu versi sesuai kebutuhan usaha Anda, yaitu versi diskon per transaksi atau versi diskon per item.

📚 Baca Juga Aplikasi Lainnya

Aplikasi Inventory Gudang PHP MySQL

Aplikasi Inventory Gudang

Catat stok barang masuk dan keluar, lengkap dengan laporan dan tema yang bisa diatur admin.

Baca selengkapnya →

Aplikasi pengelolaan homestay berbasis PHP dan SQLite

Kelola Homestay Lebih Rapi

Aplikasi web PHP dan SQLite dengan kalender yang mencegah pemesanan ganda.

Baca selengkapnya →

Buat QR Code online gratis tanpa install

Buat QR Code Online Gratis

Tanpa install, bisa dicoba langsung di halaman artikelnya.

Baca selengkapnya →

Tentang Penulis
Artikel ini ditulis oleh Pidin Saripudin, S.Kom, lulusan S1 Teknik Informatika yang membuat sendiri aplikasi web berbasis PHP, MySQL, dan SQLite, seperti kasir, absensi, kas, inventory, tabungan siswa, dan homestay. Semua aplikasi yang dibahas di blog ini dibuat dan diuji sendiri. Kenal lebih jauh di halaman Tentang Kami, atau kirim pertanyaan lewat halaman Kontak.

Komentar

Postingan populer dari blog ini

Buat QR Code Online Gratis Tanpa Install — Coba Langsung di Halaman Ini

Gratis Downloads Aplikasi Absensi Siswa Full Source Code