# Panduan & Alur Video Presentasi Platform Omnichannel KeluargaMart
Dokumen ini memuat **rekomendasi urutan pengerjaan**, **storyboard teknis per adegan**, dan **panduan verifikasi data ERP** untuk pembuatan video presentasi KeluargaMart (POS Kasir, B2B E-Commerce, dan ERP Sales & Distribusi).
---
## 1. Rekomendasi Urutan Pengerjaan: Mana yang Paling Mudah?
Untuk mempermudah proses perekaman tanpa membuang waktu gonta-ganti akun (*switch role*), alur direkomendasikan dibagi menjadi **3 Video Terpisah (atau 3 Babak)** dengan urutan prioritas:
```mermaid
flowchart LR
A["Tahap 1 (Paling Mudah)
POS Kasir Toko
Single Screen, Buka-Tutup Shift"] --> B["Tahap 2 (Menengah)
B2B E-Commerce
Buyer View + Packing Gudang"]
B --> C["Tahap 3 (Komprehensif)
ERP Sales & LHPP
Multi-Role Approval & Piutang"]
```
### Urutan Prioritas Pengerjaan
1. **Tahap 1: POS Kasir Toko (Paling Mudah & Cepat)**
* **Alasan:** Hanya membutuhkan 1 akun (*Kasir/Cashier*) pada 1 aplikasi (`apps/pos`). Alurnya sangat linier: *Buka Shift & Kas Modal → Transaksi → Cetak Struk / Retur → Tutup Shift & Rekonsiliasi Kas*.
* Semua dampak transaksi (jurnal kas, pemotongan stok otomatis, pergerakan kas drawer) langsung bisa dibuka di ERP untuk pembuktian data *real-time*.
2. **Tahap 2: B2B E-Commerce & Operasional Toko/Gudang (Tingkat Menengah)**
* **Alasan:** Melibatkan 2 sudut pandang: **Pelanggan (Storefront B2B)** dan **Operator Toko/Gudang (ERP Packing Order)**.
* Menunjukkan pendaftaran akun, pembuatan member, perbedaan harga diskon grosir/tiering, transaksi COD vs QRIS, dan modul Depot Galon.
3. **Tahap 3: ERP Sales Lapangan, Multi-Level Approval, & LHPP (Paling Kompleks)**
* **Alasan:** Memerlukan skenario *multi-role* (Sales Lapangan → SPV → ABM → BM → Gudang → Driver → Admin Piutang). Sangat efektif direkam terakhir setelah data barang dan stok pada POS & E-Commerce sudah terisi dengan baik.
---
## 2. Modul 1: Skenario Demo POS Kasir (Mulai Buka s/d Tutup Shift)
> **Aplikasi yang Dibuka:**
> * Layar Utama: `POS Kasir` (`apps/pos`)
> * Layar Pembuktian: `ERP Back-Office` (`apps/erp` menu *Point of Sale → Riwayat Kasir*, *Inventory → Stok*, dan *Finance → Jurnal*)
### Alur Kerja & Storyboard
| No | Skenario | Langkah Tindakan di POS | Poin Narasi & Pembuktian Data ERP |
|---|---|---|---|
| **0** | **Buka Shift & Modal Kasir** | Pilih nama kasir, masukkan saldo awal modal kasir (misal: Rp 200.000), klik **Buka Shift**. | *“Sistem kasir mengunci modal awal drawer kasir secara transparan.”*
**ERP:** Buka menu *POS → Sesi Kasir*, terlihat sesi aktif dengan modal Rp 200.000. |
| **1.1** | **Transaksi POS Cash (Tunai)** | 1. Scan/pilih produk retail.
2. Pilih metode **Tunai**.
3. Masukkan uang diterima (misal Rp 100.000).
4. Sistem hitung kembalian otomatis & simpan transaksi. | *“Kas masuk langsung menambah saldo drawer kasir dan memotong stok toko.”*
**ERP:** Lihat *Sales → Penjualan POS*, status *Lunas/Paid*, kartu stok toko langsung berkurang, dan jurnal debit Kas POS / kredit Pendapatan terbentuk otomatis. |
| **1.2** | **Transaksi POS Transfer / QRIS** | 1. Pilih produk.
2. Pilih metode pembayaran **QRIS / Transfer**.
3. Konfirmasi pembayaran berhasil dari pelanggan. | *“Uang non-tunai langsung tercatat terpisah dari uang fisik laci kasir.”*
**ERP:** Pada jurnal akuntansi, akun debit adalah Rekening Bank/Kliring QRIS, bukan Kas Fisik Kasir. |
| **1.3** | **Transaksi Depot Galon (Refill / Tukar)** | 1. Masuk kategori **Galon**.
2. Pilih jenis: *Isi Ulang (Refill)* atau *Beli Galon Baru + Air*.
3. Pilih tipe serah galon kosong.
4. Selesaikan transaksi. | *“KeluargaMart mengelola siklus galon kosong dan galon isi secara otomatis.”*
**ERP:** Stok galon isi berkurang, stok galon kosong bertambah pada kartu stok toko. |
| **1.4** | **Transaksi POS Pengantaran (Delivery)** | 1. Masukkan pesanan grosir/retail pelanggan di kasir.
2. Aktifkan opsi **Pengantaran / Kirim ke Alamat**.
3. Masukkan nama penerima & alamat pengantaran.
4. Selesaikan transaksi. | *“Kasir toko dapat menerbitkan pesanan antar langsung ke antrean pengiriman gudang.”*
**ERP:** Muncul dokumen Delivery Order di modul *Distribusi → Pengiriman*. Petugas gudang mencetak surat jalan pengantar. |
| **1.5** | **Transaksi Retur Penjualan** | 1. Klik menu **Retur Penjualan**.
2. Masukkan nomor nota/struk pesanan sebelumnya.
3. Pilih item barang cacat/rusak yang dikembalikan.
4. Kembalikan uang atau tukar barang. | *“Proses retur di kasir terlindungi riwayat transaksi asli.”*
**ERP:** Stok barang masuk kembali ke gudang/karantina retur, dan jurnal pembalik pendapatan tercatat otomatis. |
| **1.6** | **Transfer Stok Antar Gudang/Outlet** | 1. Masuk menu **Perpindahan Stok (Stock Transfer)** di POS/ERP Toko.
2. Buat permintaan barang ke Gudang Utama (misal: minta 50 pcs minyak goreng).
3. Terima barang saat kiriman datang. | *“Alur pemindahan stok terlacak mulai dari status Draft → Pengiriman (In-Transit) → Serah Terima di Toko.”*
**ERP:** Stok berkurang di gudang asal dan bertambah di toko tujuan tanpa selisih. |
| **1.7** | **Pembatalan Transaksi (Void)** | 1. Pilih nota yang salah input sebelum tutup shift.
2. Pilih **Batalkan Transaksi** & masukkan alasan pembatalan.
3. Konfirmasi dengan PIN/Approval supervisor. | *“Setiap pembatalan tercatat di audit log dan stok langsung dipulihkan seketika.”*
**ERP:** Status SO menjadi *Cancelled*, catatan alasan pembatalan tersimpan di riwayat. |
| **1.8** | **Pengajuan Pembelian Barang Habis (PO Toko)** | 1. Klik menu **Purchase Requisition (Pengajuan Pembelian)**.
2. Pilih item stok menipis (misal: beras atau gula).
3. Kirim pengajuan ke Purchasing pusat. | *“Toko tidak akan kehabisan stok berkat sistem pengadaan terintegrasi.”*
**ERP:** Admin Purchasing menerima pengajuan, membuat Purchase Order (PO) ke Supplier, dan saat barang tiba toko melakukan Good Receipt (Penerimaan Barang). |
| **Final** | **Tutup Shift & Rekonsiliasi Kasir** | 1. Klik **Tutup Shift**.
2. Hitung fisik uang tunai di laci (*cash count*).
3. Masukkan nominal fisik & klik **Finalisasi Tutup Shift**. | *“Sistem membandingkan otomatis kas sistem vs kas fisik riil. Jika ada selisih, sistem mencatat selisih kas drawer ke jurnal penyesuaian.”*
**ERP:** Sesi kasir ditutup, laporan penjualan per shift siap diaudit finance. |
---
## 3. Modul 2: Skenario Demo B2B E-Commerce & Gudang
> **Aplikasi yang Dibuka:**
> * Sisi Pembeli: `B2B Storefront` (`apps/b2b`) di browser / tampilan mobile
> * Sisi Admin/Gudang: `ERP Back-Office` (`apps/erp` menu *Distribusi → Packing Order*, *Sales → Sales Order*)
### Alur Registrasi & Membership
* **Pendaftaran Akun Baru:** Masuk menu *Daftar Akun*, isi data nama usaha/toko, email, nomor WhatsApp, dan alamat usaha.
* **Proses Pembuatan Member KeluargaMart:**
* Di ERP (*Membership → Anggota*), data pemohon diverifikasi dan disetujui menjadi Member Resmi (Silver / Gold / Platinum).
* **Perbandingan Transaksi Member vs Non-Member:**
* *Non-Member:* Melihat dan bertransaksi dengan harga eceran / reguler.
* *Member Resmi:* Saat login, otomatis melihat katalog dengan harga grosir khusus member (*Membership Benefit Tiering*) dan diskon bertingkat.
### Skenario Transaksi E-Commerce
```mermaid
sequenceDiagram
autonumber
actor C as Pembeli (B2B)
participant E as Storefront B2B
participant G as ERP Gudang (Packing Order)
participant F as ERP Finance & Jurnal
C->>E: Pilih Produk & Checkout (Metode: COD / QRIS / Ambil Sendiri)
E->>G: Buat Pesanan (Sales Order Baru)
G->>G: Muncul di Antrean Packing Order (Filter Toko/Gudang)
G->>G: Gudang Mulai Packing & Verifikasi SKU (Checklist QC)
G->>C: Cetak Lembar Kemas & Kirim / Serah Terima Barang
C->>G: Pembayaran Selesai (Cash COD / Midtrans Settle)
G->>F: Jurnal Otomatis & Stok Berkurang Terverifikasi
```
| No | Skenario Transaksi | Alur di Storefront B2B | Alur di ERP Toko / Gudang (Detail) |
|---|---|---|---|
| **2.1** | **Diantar + Pembayaran COD (Tunai)** | 1. Masukkan barang ke keranjang.
2. Pilih ekspedisi: *Diantar ke Alamat*.
3. Pilih metode bayar: **Bayar Tunai (COD / Di Toko)**.
4. Konfirmasi pesanan. Halaman menampilkan ringkasan COD tanpa pop-up online. | 1. Di ERP, pesanan masuk ke menu [`PackingOrdersPage.vue`](file:///opt/stacks/keluargamart-monorepo/apps/erp/src/pages/distribution/PackingOrdersPage.vue).
2. Status: *Menunggu Dikemas*.
3. Gudang klik **Mulai Packing**, periksa checklist barang, lalu cetak Lembar Kemas (Packing Slip).
4. Barang diserahkan ke driver; saat driver kembali membawa uang tunai, pesanan ditandai *Selesai* & kas masuk dicatat di ERP. |
| **2.2** | **Diantar + Pembayaran Transfer / QRIS (Midtrans)** | 1. Checkout barang grosir.
2. Pilih metode bayar: **QRIS / VA / E-wallet**.
3. Bayar via simulator Midtrans / QRIS.
4. Halaman langsung berubah menjadi *Pembayaran Berhasil*. | 1. Status di ERP langsung otomatis terbit sebagai *Paid / Lunas* tanpa perlu verifikasi manual.
2. Bagian gudang langsung mengemas barang sesuai Lembar Kemas dan menyerahkan ke kurir ekspedisi. |
| **2.3** | **Ambil di Toko Langsung + Bayar Cash** | 1. Checkout & pilih metode pengiriman: **Ambil Sendiri di Toko**.
2. Pilih metode bayar: **Bayar Tunai (COD / Di Toko)**. | 1. Toko/outlet yang dipilih menerima notifikasi pesanan ambil sendiri.
2. Staf toko menyiapkan barang di rak *pick-up counter*.
3. Pelanggan datang menyebutkan nomor order, membayar uang tunai ke kasir toko, dan kasir menyerahkan barang. |
| **2.4** | **Ambil di Toko Langsung + Transfer / QRIS** | 1. Checkout & pilih **Ambil Sendiri di Toko**.
2. Bayar online via Transfer / QRIS.
3. Pelanggan memegang bukti order sudah lunas. | 1. Staf toko melihat status pesanan *Sudah Lunas*.
2. Staf tinggal mencocokkan kode pengambilan, serah terima barang, dan klik *Pesanan Diserahkan* di ERP. |
| **2.5** | **Galon Isi Ulang Ambil Sendiri (Cash vs Transfer)** | 1. Buka menu **Depot Galon** di B2B.
2. Pilih produk *Air Galon Isi Ulang* & masukkan jumlah tukar.
3. Pilih Ambil Sendiri (pilih bayar Cash atau QRIS). | 1. Toko menerima antrean penukaran galon.
2. Saat pelanggan datang membawa galon kosong, staf memeriksa kondisi fisik galon & menyerahkan galon isi.
3. Mutasi stok galon kosong & galon isi otomatis balance di ERP. |
| **2.6** | **Galon Isi Ulang Diantar (COD vs QRIS)** | 1. Pesan galon isi ulang dengan opsi *Diantar ke Rumah/Usaha*.
2. Pilih bayar COD atau QRIS. | 1. Gudang/outlet memproses pesanan di lembar pengiriman galon.
2. Driver mengantar galon isi dan mengambil galon kosong dari pelanggan.
3. Uang COD (jika cash) disetorkan driver ke kasir outlet sore hari. |
| **2.7** | **Fitur Konsultasi WhatsApp di B2B** | 1. Klik ikon / tombol **Konsultasi WhatsApp** yang ada di storefront.
2. Chat otomatis terhubung ke CS dengan membawa pesan SKU produk / ID pesanan. | *“Pelanggan B2B mendapatkan pendampingan pesanan secara personal langsung ke staf sales/CS.”* |
---
## 4. Modul 3: Skenario Demo ERP Sales, Multi-Level Approval, & LHPP Piutang
> **Aplikasi yang Dibuka:**
> * `ERP Back-Office` (`apps/erp` menu *Sales & Marketing*, *Tracking & Kunjungan*, *Distribusi*, dan *Finance & Piutang*)
```mermaid
flowchart TD
S["1. Sales Lapangan Input Order"] --> AP["2. Multi-Level Approval
(SPV ➔ ABM ➔ BM)"]
AP --> WH["3. Gudang Picking & Packing"]
WH --> DR["4. Pengantaran Driver & Serah Terima"]
DR --> LH["5. Penagihan LHPP & Setoran Piutang"]
```
### Alur Skenario ERP Sales
| No | Skenario | Langkah Tindakan & Peran | Poin Penting & Verifikasi ERP |
|---|---|---|---|
| **3.1** | **Order Sales Lapangan & Multi-Level Approval (COD / Cash Driver)** | 1. **Sales Lapangan:** Input Sales Order (SO) untuk outlet pelanggan dengan termin pembayaran atau COD.
2. **SPV:** Login & buka *Sales Orders*, klik **Approve Level 1**.
3. **ABM / BM:** Melakukan approval akhir karena nominal order di atas limit kredit pelanggan.
4. **Gudang:** Menerima order yang sudah *Approved*, proses kemas barang, dan serahkan ke Driver bersama Surat Jalan.
5. **Driver:** Antar barang ke toko fisik, pelanggan bayar tunai ke driver.
6. **Kasir/Finance:** Driver menyerahkan uang tunai, admin memposting penerimaan kas di ERP. | *“Setiap jenjang memiliki limit kewenangan otorisasi nominal dan plafon kredit piutang.”*
**ERP:** Status order berubah: *Pending Approval → Approved → Shipped → Delivered & Paid*. Jurnal mencatat pelunasan piutang/kas masuk driver. |
| **3.2** | **Order Sales Lapangan (Pembayaran Transfer / QRIS)** | 1. Alur sama dengan 3.1 sampai tahap pengantaran.
2. Pelanggan melakukan transfer bank atau scan QRIS sesuai faktur penjualan.
3. Finance melakukan pencocokan mutasi bank di ERP. | *“Pembayaran transfer diverifikasi langsung dengan dokumen faktur penjualan pelanggan.”*
**ERP:** Piutang pelanggan terpotong dan mutasi bank terverifikasi otomatis. |
| **3.3** | **Jadwal Kunjungan & GPS Check-in Sales Lapangan** | 1. **Supervisor (SPV):** Membuka menu *Sales Tracking → Jadwal Kunjungan*, menentukan rute 5 toko yang harus dikunjungi sales hari ini.
2. **Sales Lapangan:** Membuka ERP/mobile, menerima daftar toko, mendatangi lokasi toko, lalu klik **Check-in Kunjungan** (GPS merekam koordinat riil & foto toko).
3. Sales mencatat hasil kunjungan (stok display toko, estimasi re-order). | *“Manajemen memantau kepatuhan rute dan keaslian kunjungan sales secara real-time di peta digital.”*
**ERP:** Menu *Sales Tracking → Live Map* menampilkan pin lokasi kunjungan sales berserta riwayat jam check-in. |
| **3.4** | **Pemberian Target Sales Berjenjang (BM, ABM, SPV, Sales)** | 1. Masuk menu *Sales & Marketing → Target Penjualan*.
2. BM menetapkan target wilayah cabang (misal: Rp 1 Miliar/bulan).
3. ABM & SPV memecah target cabang menjadi target per tim dan per sales lapangan (misal: Budi Santoso Rp 150 Juta/bulan).
4. Dashboard menampilkan *progress bar* pencapaian real-time. | *“Target terstruktur dari pucuk pimpinan cabang hingga sales perorangan di lapangan, terhitung otomatis dari total penjualan yang berhasil terkirim.”* |
| **3.5** | **Penagihan Piutang dengan LHPP (Lembar Hasil Penagihan Piutang)** | 1. **Admin Piutang:** Membuka menu *Finance → LHPP*, memilih daftar faktur tempo toko yang harus ditagih hari ini, lalu mencetak dokumen LHPP fisik.
2. **Sales Lapangan:** Membawa lembar LHPP & menagih ke toko langganan.
3. **Setoran Sales:** Sore hari sales menyetor hasil tagihan (uang tunai / bukti transfer) ke Admin Piutang.
4. **Admin Piutang:** Memasukkan setoran pada nomor LHPP terkait di ERP dan klik **Settle / Verifikasi Setoran**. | *“Tidak ada kebocoran uang tagihan di jalan karena setiap lembar tagihan memiliki nomor seri LHPP unik yang harus dipertanggungjawabkan.”*
**ERP:** Saldo piutang toko berkurang, kartu piutang ter-update, dan kas kasir penagihan bertambah. |
---
## 5. Cheat Sheet Akun Login untuk Rekaman
Untuk kelancaran demo video tanpa hambatan password, gunakan akun-akun resmi yang telah disiapkan di database:
| Peran (Role) | Email Login | Password Default | Digunakan Pada Adegan |
|---|---|---|---|
| **Super Admin / Management** | `admin@keluargamart.local` | `Admin@1234` | Seluruh pengecekan ERP, Jurnal, dan Pengaturan Target |
| **Kasir Toko (POS)** | `cashier@pos.local` *(atau login kasir)* | `Admin@1234` | Modul 1: Sesi Kasir POS, Buka/Tutup Shift |
| **Sales Lapangan** | `sales@keluargamart.local` | `Admin@1234` | Modul 3: Input SO Lapangan, Check-in Kunjungan |
| **Supervisor Sales (SPV)** | `spv.sales@keluargamart.local` | `Admin@1234` | Modul 3: Approval Level 1, Bagi Jadwal Kunjungan |
| **Branch Manager (BM)** | `bm@keluargamart.local` | `Admin@1234` | Modul 3: Approval Limit Besar, Pembagian Target Wilayah |
| **Staff Gudang & Logistik** | `warehouse@keluargamart.local` | `Admin@1234` | Modul 1 & 2: Packing Order, Pengiriman Galon, Good Receipt |
| **Admin Finance / Piutang** | `finance@keluargamart.local` | `Admin@1234` | Modul 1, 2, 3: Jurnal, Rekonsiliasi Kas, Penerbitan LHPP |
| **Pelanggan B2B (Member)** | *Akun pembeli terdaftar* | *Password saat daftar* | Modul 2: Checkout Storefront E-Commerce |
---
## 6. Tips Teknis Perekaman Layar (*Screen Recording*)
1. **Gunakan Dua Monitor atau Mode Split-Screen:**
* Kiri: Layar pembeli / kasir (POS atau Storefront B2B).
* Kanan: Layar ERP Back-Office (untuk menunjukkan bahwa begitu kasir/pembeli klik *bayar*, data di ERP langsung berubah detik itu juga).
2. **Siapkan Data Awal Sebelum Tombol Rekam Ditekan:**
* Pastikan saldo awal kasir sudah ditentukan.
* Pastikan ada minimal 1 produk retail, 1 produk galon, dan 1 akun member aktif.
3. **Pemberian Judul / Title Card:**
* Beri jeda 2-3 detik pada awal setiap skenario dengan teks judul di layar (misal: *"Skenario 2.1: Transaksi E-Commerce COD & Alur Gudang"*).