Sistem Point of Sale & Manajemen Gudang
Versi 1.0 | Panduan Penggunaan Semua Fitur Aplikasi
Buka browser dan akses alamat aplikasi (misal: https://gudang.edmondapp.my.id/ atau http://localhost/gudang/).
Gambar 1.1 — Halaman Login Gudang POS
Halaman login memiliki elemen berikut:
| Elemen | Penjelasan |
|---|---|
| Username | Masukkan username terdaftar. Default admin: admin |
| Password | Masukkan password. Default: admin123 |
| Tombol Eye | Klik untuk menampilkan/menyembunyikan password |
| Captcha | Muncul setelah 3x gagal login. Klik gambar untuk refresh |
| Tombol MASUK | Klik untuk login. Jika berhasil, diarahkan ke Dashboard |
Untuk logout: Klik avatar/nama di pojok kanan atas navbar → pilih "Keluar".
Gambar 1.2 — Dropdown Menu Navbar dengan opsi Profil dan Keluar
Setelah login, Anda akan diarahkan ke Dashboard. Ini adalah pusat informasi utama.
Gambar 2.1 — Dashboard Gudang POS dengan statistik, grafik, dan akses cepat
| Kartu | Warna | Penjelasan |
|---|---|---|
| Penjualan Hari Ini | Hijau | Total omzet penjualan hari ini (Rp) |
| Transaksi Hari Ini | Biru | Jumlah transaksi yang terjadi hari ini |
| Total Produk | Ungu | Jumlah produk aktif di gudang |
| Stok Menipis | Kuning | Jumlah produk dengan stok di bawah minimum |
Grafik batang (bar chart) menampilkan total penjualan untuk 7 hari terakhir. Sumbu Y menunjukkan nilai dalam Rupiah.
Menampilkan 5 produk dengan stok terendah. Badge warna:
Menampilkan 5 batch produk dengan tanggal kadaluarsa terdekat (dalam 90 hari).
Tabel top 5 produk dengan penjualan terbanyak hari ini, menampilkan nama produk, quantity terjual, dan omzet.
6 tombol shortcut untuk navigasi cepat:
| Tombol | Warna | Tujuan |
|---|---|---|
| Kasir (POS) | Hijau | Ke halaman kasir untuk transaksi |
| Penjualan | Biru | Ke daftar riwayat penjualan |
| Pembelian | Info | Ke daftar pembelian (barang masuk) |
| Produk | Sekunder | Ke daftar produk |
| Laporan | Ungu | Ke pusat laporan |
| Stok Opname | Kuning | Ke halaman stok opname |
Modul POS adalah inti aplikasi untuk melakukan transaksi penjualan. Akses via menu sidebar "Kasir (POS)" atau tombol quick action di dashboard.
Gambar 3.1 — Halaman POS/Kasir dengan pencarian produk dan keranjang
| Elemen | Penjelasan |
|---|---|
| Tanpa Permintaan (radio) | Mode penjualan biasa tanpa salesman |
| Dengan Permintaan (radio) | Mode penjualan dari permintaan salesman. Muncul field: Salesman, Nama Pelanggan, Telp Pelanggan, Foto Permintaan |
| Salesman (dropdown) | Pilih salesman dari daftar. Field ini wajib diisi jika mode "Dengan Permintaan" dipilih |
| Nama Pelanggan | Nama pelanggan yang memesan (opsional) |
| Telp Pelanggan | Nomor telepon pelanggan (opsional) |
| Foto Permintaan | Upload foto bukti permintaan (opsional) |
| Elemen | Penjelasan |
|---|---|
| Search bar | Ketik nama/kode/barcode produk. Hasil muncul otomatis setelah 2 karakter |
| Tipe Harga (4 tombol) | Pilih tipe harga: Retail (harga normal), Grosir (harga wholesale), Member (harga member), Reseller (harga reseller) |
| Hasil pencarian | List produk dengan nama, kode, stok, harga, dan badge stok. Klik produk untuk menambah ke keranjang |
| Elemen | Penjelasan |
|---|---|
| Tabel Keranjang | Menampilkan item: nama produk, tipe harga, qty (dapat diubah), harga, subtotal, tombol hapus (x) |
| Qty input | Ubah angka quantity, otomatis update subtotal |
| Tombol Hapus Item | Hapus produk dari keranjang |
| Tombol Clear | Kosongkan seluruh keranjang |
| Subtotal | Total harga semua item sebelum diskon |
| Diskon (Rp) | Masukkan nominal diskon manual (Rp) |
| PPN (%) | Otomatis dihitung dari (Subtotal - Diskon) × PPN rate |
| Grand Total | Subtotal - Diskon + PPN |
| Bayar (Rp) | Masukkan jumlah uang dibayar. Otomatis format ribuan |
| Metode Bayar | Pilih: Tunai, Kartu, Transfer, E-Wallet, QRIS |
| Kembalian | Otomatis: Bayar - Grand Total. Hijau jika cukup, merah jika kurang |
| Proses Pembayaran | Tombol hijau besar untuk menyelesaikan transaksi. Akan redirect ke halaman struk |
Gambar 3.2 — Halaman daftar Penjualan (struk dapat dicetak dari detail transaksi)
Akses via sidebar: Master Data → Produk
Gambar 4.1 — Halaman Daftar Produk dengan DataTables
| Tombol/Aksi | Ikon | Penjelasan |
|---|---|---|
| Tambah Produk | Tombol biru di pojok kanan atas. Hanya muncul jika punya permission products.create | |
| Lihat Detail | Tombol biru — lihat detail produk lengkap dengan daftar harga | |
| Edit Produk | Tombol kuning — edit informasi produk | |
| Hapus/Nonaktifkan | Tombol merah — nonaktifkan produk (soft delete). Konfirmasi sebelum hapus | |
| Badge Stok | — | Hijau = aman, Kuning = menipis, Merah = habis |
| Search/Filter | — | Gunakan search box di atas tabel (DataTables) untuk mencari produk |
| Export | — | Tombol export di DataTables untuk download Excel/PDF/Print |
Gambar 4.2 — Form Tambah Produk dengan harga multi-level dan konversi satuan
| Field | Penjelasan |
|---|---|
| Nama Produk * | Wajib diisi. Nama lengkap produk |
| Nama Generik | Nama umum/generik produk (opsional) |
| Kode Produk | Kode unik produk (opsional, harus unik) |
| Barcode | Nomor barcode produk (opsional, harus unik) |
| Produsen | Nama pabrikan/merk (opsional) |
| Kategori | Pilih dari dropdown (Tom Select dengan search) |
| Satuan Dasar * | Wajib. Pilih satuan terkecil (Pcs, Box, dll) |
| Min. Stok | Batas minimum stok untuk peringatan |
| Deskripsi | Keterangan produk (opsional) |
| Harga Retail | Harga jual normal |
| Harga Grosir | Harga untuk pembelian grosir |
| Harga Member | Harga khusus member |
| Harga Reseller | Harga khusus reseller |
| Konversi Satuan | Tambah satuan alternatif dengan faktor konversi (misal: 1 Pcs = 12 Karton). Klik "Tambah" setelah memilih satuan dan faktor |
| Simpan | Tombol biru untuk menyimpan produk |
| Batal | Kembali ke daftar produk tanpa menyimpan |
Gambar 4.3 — Halaman Detail Produk dengan daftar harga
Halaman detail menampilkan informasi lengkap produk dan daftar harga untuk semua tipe (Retail, Grosir, Member, Reseller).
Tombol di sidebar kanan:
Gambar 4.4 — Halaman Edit Produk dengan konversi satuan
Sama seperti form tambah, tapi field sudah terisi. Bagian konversi satuan menampilkan tabel satuan yang sudah ada. Bisa menambah satuan baru.
Akses via sidebar: Transaksi → Pembelian
Gambar 5.1 — Halaman Daftar Pembelian
| Elemen | Penjelasan |
|---|---|
| Tambah Pembelian | Tombol biru untuk membuat PO baru |
| Status Badge | Pending = belum diterima, Diterima = sudah diterima, Dibatalkan |
| Lihat Detail | Klik untuk melihat detail PO dan item-itemnya |
Gambar 5.2 — Form Tambah Pembelian dengan item dinamis
Gambar 5.3 — Halaman Detail Pembelian
Menampilkan info PO lengkap dengan daftar item. Tombol aksi:
Halaman retur memungkinkan mengembalikan sebagian item dari PO ke supplier. Stok akan dikurangi sesuai jumlah retur.
Akses via sidebar: Inventory → Stok Gudang
Gambar 6.1 — Halaman Stok Gudang dengan status stok
| Tombol | Penjelasan |
|---|---|
| Penyesuaian | Tombol kuning — form penyesuaian stok manual (tambah/kurang stok) |
| Riwayat | Tombol info — lihat semua mutasi stok (in/out/adjustment) |
Status stok ditampilkan dengan badge:
Gambar 6.2 — Halaman Riwayat Mutasi Stok
Menampilkan semua pergerakan stok: masuk (purchase/return), keluar (sale), penyesuaian (opname/adjustment).
| Kolom | Penjelasan |
|---|---|
| Tanggal | Waktu mutasi terjadi |
| Produk | Nama produk yang berubah stoknya |
| Tipe | IN / OUT / ADJ |
| Referensi | Sumber mutasi: Purchase, Sale, Return, Opname, Adjustment |
| Qty | Jumlah stok yang bergerak |
| Saldo | Stok akhir setelah mutasi |
| Batch | Nomor batch terkait |
| Catatan | Keterangan mutasi |
Form untuk menyesuaikan stok manual. Pilih produk, masukkan jumlah penyesuaian (positif untuk menambah, negatif untuk mengurangi), dan catatan alasan.
Akses via sidebar: Inventory → Stok Opname
Gambar 6.2 — Halaman Stok Opname
Akses via sidebar: Transaksi → Penjualan
Gambar 7.1 — Halaman Daftar Penjualan dengan filter tanggal
| Elemen | Penjelasan |
|---|---|
| Filter Dari (date) | Filter transaksi dari tanggal tertentu |
| Filter Sampai (date) | Filter transaksi sampai tanggal tertentu |
| Filter Tanggal | Terapkan filter rentang tanggal |
| Reset | Reset filter, tampilkan semua |
| Status Badge | Completed / Void / Refunded |
| Lihat Detail | Lihat detail transaksi lengkap |
| Cetak Struk | Buka struk di tab baru untuk dicetak |
Menampilkan informasi lengkap transaksi:
Di halaman detail penjualan, tersedia tombol:
Akses via sidebar: Transaksi → Penjualan lalu tab Returns. Menampilkan daftar transaksi yang sudah di-void atau di-refund.
Akses via sidebar: Master Data → Supplier
Gambar 8.1 — Halaman Daftar Supplier
Tabel menampilkan: No, Nama, Contact Person, Telepon, Email, Kota, Status, Aksi (Edit, Hapus).
Form tambah/edit supplier: Nama, Contact Person, Telepon, Email, Alamat, Kota.
Akses via sidebar: Master Data → Pelanggan
Gambar 8.2 — Halaman Daftar Pelanggan
Tabel menampilkan: No, Nama, Telepon, Email, Member Number, Status, Aksi.
Form tambah/edit: Nama, Telepon, Email, Alamat, Member Number, Tanggal Lahir.
Akses via sidebar: Master Data → Salesman
Gambar 8.2 — Halaman Daftar Salesman
Tabel menampilkan: No, Nama, Kode Salesman, Wilayah, Telepon, Status, Aksi (Edit, Nonaktifkan).
Form tambah/edit: Nama, Kode Salesman, Wilayah, Telepon, Alamat.
Akses via sidebar: Master Data → Kategori
Gambar 8.3 — Halaman Daftar Kategori
Tabel menampilkan: No, Nama, Kode, Deskripsi, Status, Aksi.
Form tambah/edit: Nama, Kode, Deskripsi.
Akses via sidebar: Pengaturan → Satuan (atau di halaman Settings)
Gambar 8.4 — Halaman Daftar Satuan
Tabel menampilkan: No, Nama Satuan, Singkatan, Aksi (Hapus).
Form tambah: Nama Satuan (misal: "Pieces"), Singkatan (misal: "Pcs").
Akses via sidebar: Transaksi → Diskon
Gambar 9.1 — Halaman Daftar Diskon
| Elemen | Penjelasan |
|---|---|
| Tambah Diskon | Tombol biru untuk membuat diskon baru |
| Tipe: Persentase | Persentase — diskon dalam % (misal: 10%) |
| Tipe: Nominal | Nominal — diskon dalam Rupiah (misal: Rp 5.000) |
| Periode | Rentang tanggal berlaku diskon |
| Min. Belanja | Minimum pembelian untuk dapat diskon |
| Edit | Ubah diskon |
| Hapus | Nonaktifkan diskon |
Akses via sidebar: Laporan. Halaman pusat laporan menampilkan 20+ jenis laporan dalam 4 kategori.
Gambar 10.1 — Pusat Laporan dengan 20+ jenis laporan
| Nama Laporan | Penjelasan |
|---|---|
| Penjualan | Ringkasan transaksi per periode, per shift/kasir. Filter tanggal tersedia |
| Ringkasan Harian | Omzet, laba, diskon, pajak per hari. Grafik tren harian |
| Laba | Selisih harga jual dan HPP per item. Menampilkan margin keuntungan |
| Per Kasir / Shift | Performa omzet tiap kasir. Perbandingan antar kasir |
| Per Metode Bayar | Rekonsiliasi per metode: Tunai, Kartu, Transfer, E-Wallet, QRIS |
| Diskon | Total diskon yang diberikan per periode |
| Void / Refund | Transaksi yang dibatalkan atau dikembalikan |
| Nama Laporan | Penjelasan |
|---|---|
| Penjualan per Barang | Produk terlaris, kontribusi omzet per produk |
| Inventori | Stok saat ini, harga rata-rata per produk |
| Nilai Inventori | Total aset gudang (qty × HPP) |
| Stok Menipis | Produk di bawah batas minimum stok |
| Barang Tidak Laku | Produk tanpa penjualan 30+ hari (dead stock) |
| Analisis ABC | Klasifikasi produk: A (80% omzet), B (15%), C (5%) |
| Kartu Stok | Mutasi stok per produk (in/out detail) |
| Kadaluarsa | Ringkasan batch mendekati kadaluarsa |
| Detail Kadaluarsa | Batch expired dalam 1/3/6 bulan ke depan |
| Nama Laporan | Penjelasan |
|---|---|
| Top Pelanggan | Pelanggan dengan total belanja tertinggi |
| Permintaan vs Non-Permintaan | Analisis bauran penjualan permintaan vs reguler |
| Per Salesman | Barang yang sering diminta per salesman |
| Nama Laporan | Penjelasan |
|---|---|
| Hutang Supplier | Total pembelian per supplier, jumlah yang sudah diterima vs pending |
Setiap halaman laporan memiliki:
Gambar 10.2 — Contoh Laporan Penjualan dengan filter dan export
Akses via sidebar: Kasir → Tutup Kasir
Gambar 11.1 — Halaman Tutup Kasir dengan rekonsiliasi kas
| Elemen | Penjelasan |
|---|---|
| Kas Diharapkan (Sistem) | Total kas yang seharusnya ada berdasarkan sistem |
| Jumlah Transaksi | Total transaksi selama shift ini |
| Shift dimulai | Waktu mulai shift (dari closing sebelumnya) |
| Jumlah Kas Fisik | Input — masukkan hasil hitung uang fisik di laci |
| Catatan | Catatan tambahan (misal: ada uang logam, kembalian, dll) |
| Tutup Shift | Tombol hijau — konfirmasi tutup shift. Sistem menghitung selisih otomatis |
Panel kanan menampilkan semua transaksi kas selama shift: Invoice, Waktu, Total, Cash.
Gambar 11.2 — Halaman Riwayat Penutupan Shift
Akses via tombol "Riwayat" di halaman tutup kasir. Menampilkan daftar semua shift closing dengan:
Akses via sidebar: Sistem → Pengguna
Gambar 12.1 — Halaman Daftar Pengguna
| Tombol/Aksi | Ikon | Penjelasan |
|---|---|---|
| Tambah Pengguna | Tombol biru — tambah user baru | |
| Edit Pengguna | Tombol kuning — edit info user | |
| Aktifkan/Nonaktifkan | / | Tombol — toggle status aktif user |
| Hapus | Tombol merah — nonaktifkan user (tidak bisa hapus diri sendiri) | |
| Badge SYSTEM | — | User dengan grup Super Admin (bypass semua permission) |
Akses via sidebar: Sistem → Grup Akses
Gambar 12.2 — Halaman Daftar Grup Akses
| Tombol/Aksi | Ikon | Penjelasan |
|---|---|---|
| Tambah Grup | Buat grup akses baru | |
| Permission Matrix | Atur permission per module (view/create/edit/delete) dalam bentuk grid checkbox | |
| Edit Grup | Edit nama & deskripsi grup | |
| Hapus Grup | Hapus grup (tidak bisa hapus grup SYSTEM) |
Halaman permission matrix menampilkan grid modul × aksi:
Gambar 12.3 — Permission Matrix Grid untuk mengatur izin akses
Centang kotak untuk memberikan izin akses. Klik "Simpan Permission" untuk menyimpan.
Akses via: Klik avatar di pojok kanan atas navbar → "Profil Saya"
Gambar 13.1 — Halaman Profil Saya dengan edit profil dan ganti password
| Field | Penjelasan |
|---|---|
| Nama Lengkap | Edit nama (wajib) |
| Username | Tidak bisa diubah (disabled) |
| Edit email (terenkripsi di database) | |
| Phone | Edit nomor telepon (terenkripsi di database) |
| Simpan | Tombol biru untuk simpan perubahan |
| Field | Penjelasan |
|---|---|
| Password Saat Ini | Masukkan password lama (wajib) |
| Password Baru | Min. 8 karakter, harus mengandung: huruf besar, huruf kecil, angka, dan karakter khusus |
| Konfirmasi Password Baru | Ulangi password baru |
| Ubah Password | Tombol kuning untuk konfirmasi |
Akses via sidebar: Pengaturan → Settings
Gambar 14.1 — Halaman Pengaturan Aplikasi
| Field | Penjelasan |
|---|---|
| Nama Gudang | Nama gudang/toko, tampil di struk dan header |
| Email kontak gudang | |
| Telepon | Nomor telepon gudang |
| Alamat | Alamat lengkap gudang |
| Field | Penjelasan |
|---|---|
| PPN Rate (%) | Persentase Pajak Pertambahan Nilai (default: 11%) |
| Mata Uang | Kode mata uang (default: IDR) |
| Field | Penjelasan |
|---|---|
| Footer Struk | Teks yang tampil di bagian bawah struk (misal: "Terima kasih") |
| Lebar Struk (mm) | Lebar kertas struk (58-120mm, default: 80mm) |
| Jumlah Cetak | Jumlah rangkap cetak (1-5) |
| Cetak otomatis (checkbox) | Otomatis cetak struk setelah transaksi |
| Tampilkan logo (checkbox) | Tampilkan logo di header struk |
Simpan Pengaturan — Tombol biru di pojok kanan bawah untuk menyimpan semua perubahan.
Berikut adalah struktur menu sidebar lengkap dan tujuan masing-masing:
| Menu | Icon | Sub-menu / Tujuan |
|---|---|---|
| Dashboard | Halaman utama dengan statistik | |
| Kasir (POS) | Halaman kasir untuk transaksi | |
| Tutup Kasir | Shift closing / rekonsiliasi kas | |
| Penjualan | Riwayat transaksi penjualan | |
| Pembelian | Daftar PO / barang masuk | |
| Produk | Manajemen produk | |
| Stok Gudang | Stok saat ini & penyesuaian | |
| Riwayat Mutasi | Riwayat pergerakan stok | |
| Stok Opname | Opname / stock take | |
| Diskon | Manajemen diskon | |
| Supplier | Data supplier | |
| Pelanggan | Data pelanggan | |
| Salesman | Data salesman | |
| Kategori | Kategori produk | |
| Laporan | Pusat laporan (20+ jenis) | |
| Pengguna | Manajemen user | |
| Grup Akses | Manajemen grup & permission | |
| Settings | Pengaturan aplikasi |
Tutorial Gudang POS — Panduan Lengkap Penggunaan Aplikasi
Generated on = date('d M Y') ?> | Gudang POS v1.0