Paket Bundling (Kit)
Bundle adalah beberapa produk yang dijual sebagai satu paket dengan satu harga, misalnya "Paket Starter: sampo + kondisioner + 2 sachet". Pelanggan melihat dan membeli satu produk, sedangkan stok yang berkurang adalah stok isi paketnya.
Bundling hadir di rilis ronde 16, mulai paket Growth untuk membuat dan mengubah. Toko stok-per-unit, booking, rental, dan produk digital belum didukung.
Apa itu bundle
- Bundle adalah produk biasa (punya nama, foto, SKU, barcode, kategori, ulasan) yang berisi 1 sampai 30 baris isi: produk, varian bila ada, dan jumlah per paket.
- Satu tingkat saja: isi bundle tidak boleh bundle lain, bahan baku resep, atau bundle itu sendiri. Produk dengan varian harus dipilih variannya, dan isi harus aktif saat disimpan.
- Bundle dihitung satu produk pada batas jumlah produk paket langganan.
- Diskon bundle adalah bagian dari harganya, tidak pernah diterapkan di level pesanan. Kupon, pajak, ongkir, dan poin bekerja seperti pada produk lain.
Membuat bundle
Buka Katalog > Bundle lalu Tambah bundle.
- Dasar: nama, deskripsi, foto (unggah dulu, foto pertama jadi utama), kategori, SKU (dibuat otomatis
BDL-...bila kosong), barcode. - Isi: cari produk, pilih varian bila perlu, atur jumlah per paket. Pencarian tidak menampilkan bundle, bahan baku, atau bundle itu sendiri.
- Harga: pilih mode harga (lihat di bawah).
- Panel langsung di sisi kanan menghitung ulang saat Anda mengetik: stok yang bisa dijual dan isi yang membatasinya, total harga isi, hemat (Rp dan %), modal, margin, dan peringatan.
- Mode stok (lanjutan, bawaan dihitung dari isi).
- Simpan. Bundle aktif langsung muncul di toko online dan POS.
Peringatan di panel: Dijual di bawah modal (merah), Modal belum lengkap (kuning, ada isi tanpa harga modal), dan Tidak ada penghematan (kuning).
Dua mode harga
| Mode | Cara kerja |
|---|---|
| Harga tetap (bawaan) | Anda mengisi harga. Semua fitur harga produk berlaku di atasnya: diskon, aturan harga musiman, flash sale, harga grosir |
| Jumlah isi dikurangi diskon | Harga = jumlah harga normal isi dikurangi diskon (persen 0 sampai 90, atau nominal rupiah). Hasilnya tersimpan sebagai harga bundle dan dihitung ulang otomatis saat harga isi berubah |
Harga normal isi yang dipakai adalah harga daftar, bukan harga promosinya saat ini. Bila harga isi baru saja diubah, daftar Bundle menampilkan peringatan harga perlu disegarkan; tombol Segarkan harga memperbaruinya sekaligus.
Hemat = total harga isi dikurangi harga jual bundle saat ini (tidak pernah negatif). Karena memakai harga jual saat ini, hematnya mengecil saat bundle sendiri sedang promo.
Perilaku stok
Bundle punya dua mode stok.
Dihitung dari isi (bawaan). Bundle tidak punya angka stok sendiri. Stok yang bisa dijual = isi yang paling sedikit tersedia, dibagi jumlah per paket (dibulatkan ke bawah). Contoh: sampo 50, kondisioner 30, sachet 100 (2 per paket) menghasilkan min(50, 30, 50) = 30 paket, dibatasi kondisioner. Saat bundle terjual, stok isinya berkurang lewat buku stok, dengan alasan BUNDLE_USAGE.
- Isi yang kurang menggagalkan seluruh pesanan (kit tidak pernah dijual dengan isi yang kurang): "Stok tidak cukup untuk bundle ...: Kondisioner (butuh 2, ada 1)".
- Peringatan stok menipis dan saran pesan ulang menampilkan isinya, bukan bundle.
- Penyesuaian stok, stok opname, transfer cabang, dan baris PO tidak bisa untuk bundle jenis ini (
BUNDLE_VIRTUAL_STOCK). Sesuaikan isinya. - Isi yang dinonaktifkan membuat bundle tidak tersedia (stok 0) sampai diperbaiki. Produk atau varian yang masih dipakai bundle aktif tidak bisa dihapus.
Dirakit lebih dulu. Bundle punya stok sendiri. Tombol Rakit mengurangi isi dan menambah stok bundle dalam satu transaksi (jumlah 1 sampai 10.000, pilih cabang bila perlu). Bongkar adalah kebalikannya. Penjualan hanya mengurangi stok bundle. Modal bundle menjadi rata-rata bergerak dari tiap perakitan. Kit yang sudah dirakit tidak berubah isinya bila definisi bundle diedit; bongkar dan rakit ulang.
Mengganti mode dari Dirakit ke Dihitung dari isi ditolak selama masih ada stok rakitan (HAS_OWN_STOCK), dan ditolak selama ada pesanan belum dibayar yang memuat bundle (OPEN_ORDERS).
Tampilan di toko online dan POS
Toko online: halaman produk menampilkan daftar Isi paket (foto, nama, jumlah), harga coret total isi di samping harga bundle, chip Hemat 15%, dan "Sisa N" dari stok. Keranjang menampilkan isi di bawah barisnya. Tombol beli dibatasi stok yang dihitung dari isi.
POS: bundle bertanda Bundle, ketuk untuk melihat isinya, keranjang menampilkan "Paket Starter x2" dengan isi dan hemat. Jumlah maksimum mengikuti stok hitungan. Kasir menjual seperti biasa lewat checkout, tetapi tidak melihat modal atau stok isi, hanya "Habis" bila tidak tersedia.
Di detail pesanan Dashboard, baris bundle punya daftar Termasuk (isi yang diambil, berguna sebagai daftar pengambilan barang). Daftar ini tetap benar walau definisi bundle kemudian berubah.
Refund dan pembatalan
Bundle yang sudah dipesan menyimpan isinya sendiri per pesanan, sehingga mengubah atau menghapus bundle tidak memengaruhi pesanan lama.
- Pembatalan atau kedaluwarsa mengembalikan isi ke stok, tepat satu kali, bersih dari refund yang sudah terjadi.
- Refund dengan Kembalikan stok mengembalikan isi sebanyak paket yang di-refund. Tanpa kembalikan stok, isi tidak kembali (barang sudah diserahkan).
- Untuk bundle jenis Dirakit, pembatalan dan refund mengembalikan stok bundle itu sendiri.
- Pemisahan dan penggabungan tagihan meja F&B ikut membagi isi, jadi pembatalan tiap tagihan mengembalikan bagiannya sendiri.
Laporan
Belum ada laporan khusus bundle (unit terjual, pemakaian isi per bundle). Yang berubah di laporan yang ada:
- Penjualan dan laba: bundle adalah satu baris produk. Modal baris = jumlah modal isi pada saat itu, sehingga margin benar.
- Ringkasan inventori: stok bundle jenis hitungan tidak dihitung dua kali (isinya yang dihitung). Ada angka baru bundle hitungan dan bundle habis.
- Buku stok: alasan baru BUNDLE_USAGE, BUNDLE_RESTORE, BUNDLE_ASSEMBLED, dan BUNDLE_DISASSEMBLED. Keempatnya tidak dihitung sebagai kerugian stok.
Paket dan peran
| Free | Growth | Pro | Enterprise | |
|---|---|---|---|---|
| Melihat bundle, pratinjau, hapus, bongkar | Ya | Ya | Ya | Ya |
| Membuat, mengubah, merakit, segarkan harga | Tidak | Ya | Ya | Ya |
| Menjual bundle yang sudah ada | Ya | Ya | Ya | Ya |
Toko yang turun paket tetap bisa menjual, membatalkan, dan me-refund bundle yang sudah ada dengan stok yang benar. Layar Bundle hanya untuk Pemilik dan Admin karena menampilkan modal dan margin; Kasir dan Kitchen tidak melihatnya (kasir tetap menjual bundle di POS).
Tool MCP
Asisten AI bisa membaca (bundles.list, bundles.get, bundles.sale_lines), memperkirakan (bundles.preview), serta membuat dan mengubah dengan konfirmasi (bundles.create, bundles.update). Merakit, membongkar, menyegarkan harga, dan menghapus dilakukan di Dashboard. Lihat Tool Surface.
FAQ
Kenapa bundle saya "tidak tersedia"? Lihat alasan di daftar: salah satu isi habis, nonaktif, atau varian belum dipilih.
Bisa pilih 2 dari 5 isi? Belum. Buat beberapa bundle, atau gunakan varian.
Toko saya stok-per-unit. Bundle belum didukung (UNSUPPORTED_STOCK_MODEL).