Tentang project
TokoKita POS
Aplikasi kasir (point of sale) untuk toko ritel: mencatat penjualan dan pembelian, mengelola data barang, member, supplier, dan pengeluaran, lalu menyusun laporan penjualan per rentang tanggal.
Dibuat dengan Laravel 5.4 dan tampilan AdminLTE 2.
Versi yang dipakai
Baca bagian ini dulu sebelum memasang, karena aplikasi ini tidak jalan di PHP 8 — dan itu kesalahan pemasangan yang paling sering terjadi.
| Komponen | Versi | Catatan |
|---|---|---|
| PHP | 7.0 – 7.4 | Wajib PHP 7. Di PHP 8 aplikasi gagal start. |
| Laravel | 5.4 | Rilis Januari 2017 |
| Basis data | MySQL 5.7 / MariaDB 10.2+ | MySQL 8 bisa, perlu satu penyesuaian |
| Tampilan | AdminLTE 2 (Bootstrap 3) | |
| Datatable | yajra/laravel-datatables-oracle ^7.3 | |
| barryvdh/laravel-dompdf ^0.8 | Versi ini sudah tidak kompatibel dengan PHP 7.3+ |
Paket lain yang dipakai: maatwebsite/excel untuk ekspor, milon/barcode
untuk barcode produk, dan doctrine/dbal untuk perubahan struktur tabel.
Fitur sekilas
| Modul | Alamat | Level | Kegunaan |
|---|---|---|---|
| Dasbor | / | semua | Ringkasan data (admin) atau pintasan ke transaksi (kasir) |
| Transaksi | /transaksi/baru | semua | Layar kasir untuk membuat penjualan baru |
| Kategori | /kategori | 1 | Pengelompokan barang |
| Produk | /produk | 1 | Data barang, harga, dan stok |
| Member | /member | 1 | Pelanggan tetap yang mendapat diskon |
| Supplier | /supplier | 1 | Pemasok barang |
| Pengeluaran | /pengeluaran | 1 | Biaya operasional toko |
| User | /user | 1 | Akun kasir — lihat hak akses |
| Penjualan | /penjualan | 1 | Riwayat transaksi penjualan |
| Pembelian | /pembelian | 1 | Riwayat pembelian dari supplier |
| Laporan | /laporan | 1 | Rekap penjualan per rentang tanggal |
| Setting | /setting | 1 | Identitas toko dan perilaku nota |
Level 1 adalah admin, level 2 adalah kasir. Kasir hanya melihat menu Dasbor, Transaksi, dan Transaksi Baru.
Penjelasan fitur
1. Dasbor
Tampilannya berbeda tergantung level akun yang sedang masuk.
Admin melihat empat kartu berisi jumlah Kategori, Produk, Supplier, dan Member, lalu grafik pendapatan harian dari awal bulan sampai hari ini:
Kasir melihat halaman sambutan sederhana dengan satu tombol menuju layar transaksi — sengaja dibuat begitu supaya kasir langsung tahu harus mulai dari mana. Menu di sisi kiri pun hanya berisi tiga item.
2. Transaksi penjualan
Layar utama kasir. Kiri: keranjang belanja. Kanan: total, kode member, diskon, dan pembayaran. Kotak besar di tengah menampilkan angka yang paling penting bagi kasir saat itu — berapa yang harus dibayar, atau berapa kembaliannya.
3. Kategori
Pengelompokan barang, dipakai sebagai pilihan saat menambah produk.
4. Produk
Data barang: kode, nama, kategori, satuan, harga modal, harga jual, dan stok. Produk bisa dicentang lalu dicetak barcode-nya secara massal.
5. Member
Pelanggan tetap. Setiap member punya kode yang dipakai kasir saat transaksi. Besarnya diskon member tidak diatur per orang, melainkan sekali untuk semua member di halaman Pengaturan.
6. Supplier
Pemasok barang, dipakai saat mencatat pembelian.
7. Pengeluaran
Biaya operasional di luar pembelian barang — sewa, listrik, gaji, dan sejenisnya. Tercatat per tanggal dengan nominal.
8. Pengguna
Tempat admin mengelola akun kasir: menambah kasir baru, mengganti nama atau emailnya, dan mengatur ulang kata sandinya.
Ada dua hal yang perlu diketahui tentang halaman ini:
- Akun yang dibuat dari sini selalu berperan kasir. Levelnya dipatok
2oleh aplikasi, dan formulirnya memang tidak menyediakan pilihan level. - Daftar ini hanya menampilkan akun kasir. Akun admin tidak ikut tampil, jadi tidak ada yang bisa menghapus atau mengubahnya dari antarmuka.
9. Profil sendiri
Setiap pengguna bisa mengganti foto profil dan kata sandinya sendiri lewat menu Edit Profil di kanan atas, tanpa perlu hak admin. Nama dan email tidak bisa diubah dari sini — itu wewenang admin lewat menu User.
10. Riwayat penjualan
Daftar seluruh transaksi penjualan beserta tanggal, jumlah barang, dan totalnya. Tombol mata pada satu baris membuka rincian barangnya, tombol tong sampah menghapus transaksi itu.
11. Riwayat pembelian
Sama seperti penjualan, tetapi untuk barang yang masuk dari supplier. Tombol mata membuka rincian barangnya, tombol tong sampah menghapus catatannya.
12. Laporan
Rekap penjualan untuk rentang tanggal yang dipilih. Klik Tampilkan untuk membuka jendela pemilihan periode, lalu laporan disusun ulang.
13. Pengaturan toko
Identitas toko yang tercetak di nota — nama perusahaan, alamat, telepon, dan logo — ditambah desain kartu member, besar diskon untuk member, dan pilihan cara nota dikeluarkan setelah transaksi disimpan.
Rencana open source
Kode aplikasi direncanakan dirilis sebagai open source setelah lisensi dan hak distribusinya dipastikan. Basis data dan kredensial tidak termasuk dalam rilis; kredit pembuat asli tetap dipertahankan.
