Pengenalan Sistem, Model Bisnis & Matriks Peran
Bab ini menjadi fondasi pemahaman Anda sebelum menyentuh panel admin atau storefront. Kami menjelaskan StarCustomPrinting bukan hanya sebagai "website toko", melainkan sebagai mesin operasional lengkap untuk bisnis percetakan custom — dari desain online hingga pengiriman paket.
Sebagai pemilik toko tanpa latar belakang teknis, yang perlu Anda pahami adalah: siapa saja pengguna sistem, bagaimana uang dan pesanan mengalir, status apa saja yang akan Anda lihat setiap hari, dan menu admin mana yang menjadi tanggung jawab tim Anda. Semua detail teknis sudah disederhanakan menjadi bahasa operasional.
StarCustomPrinting versi 2.0 mendukung empat model pendapatan sekaligus dalam satu instalasi: toko POD langsung (pelanggan desain sendiri), marketplace desainer (seller store dengan royalty), program dropship (reseller dengan diskon bertingkat), dan afiliasi (komisi referral). Anda bisa menjalankan satu model atau kombinasi semuanya.
1.1 Apa itu StarCustomPrinting?
StarCustomPrinting adalah platform Print-on-Demand (POD) dan custom printing berbasis Laravel (PHP). Pelanggan mendesain produk via editor canvas di browser, memesan, membayar, dan melacak status — sementara Anda mengelola produksi, keuangan, dan konten dari panel admin terpusat di /admin.
Setiap pesanan mendapat kode unik format CTK-XXXXXXXX (contoh: CTK-A7B2K9M1). Kode ini menjadi identitas utama komunikasi dengan pelanggan, pencarian di admin, dan pelacakan tamu tanpa login.
1.2 Model bisnis yang didukung
| Model | Siapa Pelanggannya | Sumber Pendapatan | Fitur Kunci |
|---|---|---|---|
| POD Langsung | End consumer | Margin harga produk + ongkir | Editor, checkout, produksi |
| Seller Store | Desainer independen | Markup toko + royalty seller | Moderasi desain, /shop/{slug} |
| Dropship | Reseller/brand lain | Volume order dengan diskon level | Mode dropship checkout, label custom |
| Afiliasi | Promotor/influencer | Komisi % per order selesai | Link ?ref=KODE, cookie 30 hari |
1.3 Matriks peran & permission staff
Sistem membedakan Super Admin (akun pemilik, akses penuh) dan Staff dengan peran terbatas. Staff hanya melihat menu admin sesuai section permission — mencegah tim produksi mengubah pengaturan Tripay, misalnya.
| Peran (staff_role) | Section yang Diizinkan | Typical Job |
|---|---|---|
super_admin
|
Semua menu (*) | Pemilik toko / IT |
cs
|
orders, complaints, design-requests, inquiries, reviews, dropship, stores, reports | Customer service |
finance
|
orders, payouts, referrals, complaints, stores, reports | Keuangan & verifikasi bayar |
production
|
orders, shipping, dropship, reports | Tim cetak & packing |
designer
|
design-requests, designs, reports | Desainer internal |
moderator
|
designs, reviews, stores | Moderasi marketplace |
catalog
|
products, reports | Manajer katalog |
marketing
|
coupons, reviews, referrals, pages, inquiries, stores, reports | Marketing |
1.4 Diagram alur lifecycle order
Berikut perjalanan status order dari checkout hingga selesai. Pahami diagram ini — hampir semua operasional harian Anda berputar di sini.
pending_payment
paid
production
shipped
completed
complaint
refund
cancelled
Status production memiliki 3 tahap internal: printing (cetak) → qc (quality control) → packing (kemas & input resi).
1.5 Tabel 8 status order
| Kode | Label ID | Arti Operasional | Notifikasi |
|---|---|---|---|
pending_payment
|
Menunggu Pembayaran | Order baru, belum lunas | created, reminder_payment |
paid
|
Dibayar | Siap masuk antrian produksi | paid |
production
|
Produksi | Sedang cetak/QC/packing | production |
shipped
|
Dikirim | Resi sudah diinput | shipped, tracking_update |
completed
|
Selesai | Paket diterima/konfirmasi | completed + hitung komisi |
complaint
|
Komplain | Ada keluhan pelanggan | complaint |
refund
|
Refund | Dana dikembalikan | refund |
cancelled
|
Dibatalkan | Order tidak jadi | cancelled, payment_expired |
1.6 Tabel 22+ menu admin lengkap
Panel admin di /admin memiliki sidebar dengan menu berikut. URL dan permission section-nya:
| # | Menu | URL Admin | Fungsi Utama | Section Permission |
|---|---|---|---|---|
| 1 | Dashboard |
/admin
|
Ringkasan metrik harian, order terbaru, alert operasional |
Semua staff
|
| 2 | Pesanan |
/admin/order
|
Daftar semua order, filter status, export CSV |
orders
|
| 3 | Verifikasi Bayar |
/admin/order/pembayaran
|
Antrian bukti transfer manual |
orders
|
| 4 | Produksi |
/admin/order/produksi
|
Antrian cetak, QC, packing, bulk action |
orders
|
| 5 | Produk |
/admin/produk
|
CRUD produk, varian, area cetak, mockup |
products
|
| 6 | Moderasi Desain |
/admin/moderasi-desain
|
Approve/tolak desain seller marketplace |
designs
|
| 7 | Toko Seller |
/admin/toko-seller
|
Kelola toko desainer terdaftar |
stores
|
| 8 | Voucher |
/admin/voucher
|
Kupon diskon persen/nominal |
coupons
|
| 9 | Dropshipper |
/admin/dropshipper
|
Approve registrasi & level dropship |
dropship
|
| 10 | Afiliasi |
/admin/afiliasi
|
Kelola affiliator & komisi referral |
referrals
|
| 11 | Payout Komisi |
/admin/payout
|
Approve pencairan seller/afiliasi |
payouts
|
| 12 | Ulasan |
/admin/ulasan
|
Moderasi review pelanggan |
reviews
|
| 13 | Komplain & Retur |
/admin/komplain
|
Tangani keluhan & retur |
complaints
|
| 14 | Jasa Desain |
/admin/jasa-desain
|
Permintaan desain custom on-demand |
design-requests
|
| 15 | Inquiry & Grosir |
/admin/inquiry
|
Lead B2B & form grosir |
inquiries
|
| 16 | Laporan |
/admin/laporan
|
Laporan penjualan, export |
reports
|
| 17 | Konten & CMS |
/admin/konten
|
Halaman statis, blog, FAQ |
pages
|
| 18 | Edit Homepage |
/admin/homepage
|
Blok hero, kategori, produk unggulan |
pages
|
| 19 | Tarif Ongkir |
/admin/ongkir
|
Flat rate manual atau RajaOngkir |
shipping
|
| 20 | Log Aktivitas |
/admin/log-aktivitas
|
Audit trail aksi admin |
audit
|
| 21 | Notifikasi Order |
/admin/notifikasi
|
Template email & WA per event |
settings
|
| 22 | Pengaturan |
/admin/pengaturan
|
Toko, bayar, ongkir, notifikasi, SLA |
settings
|
| 23 | Staff & Peran |
/admin/staff
|
Akun staff & hak akses section |
staff
|
1.7 Produk sample dari seeder
Saat instalasi, database di-seed dengan katalog contoh agar Anda bisa langsung test order:
| Kategori | Contoh Produk | Harga Dasar |
|---|---|---|
| Apparel | Kaos Custom O-Neck Cotton Combed 24s | Rp 75.000 |
| Apparel | Kaos Polo Custom Lacoste CVC | Rp 110.000 |
| Apparel | Kaos Anak Custom Lucu | Rp 55.000 |
| Mug & Botol | Mug Keramik Custom Full Color | Rp 45.000 |
| Mug & Botol | Magic Mug Bunglon Custom | Rp 65.000 |
| Mug & Botol | Tumbler Stainless Custom | Rp 95.000 |
Toko baru pertama kali buka — apa yang harus dicek?
Situasi: Ibu Rina baru instal StarCustomPrinting untuk toko kaos custom di Surabaya. Homepage sudah tampil tapi belum ada order.
Langkah: (1) Login /admin, (2) cek produk seeder sudah aktif, (3) atur rekening bank di Pengaturan → Pembayaran, (4) buat order test sendiri dari storefront, (5) verifikasi notifikasi email/WA terkirim.
Hasil: Alur end-to-end terbukti jalan sebelum iklan dibuka ke publik.
1.8 Arsitektur teknologi (ringkas)
- Backend: Laravel PHP 8.2+
- Database: SQLite (dev/ringan) atau MySQL/MariaDB (production)
- Frontend: Blade + Alpine.js
- Editor: HTML5 Canvas native
- Payment: Tripay + transfer manual
- Shipping: RajaOngkir Komerce V2 atau flat rate manual
- Email: Mailketing API / Laravel mailer
- WhatsApp: StarSender API
Workflow status — skenario lengkap
- Order normal POD: pending_payment → paid → production(printing→qc→packing) → shipped → completed
- Transfer manual: pending_payment → [upload bukti] → [admin verify] → paid → ...
- Tripay QRIS: pending_payment → [bayar QR] → [callback POST /callback/tripay] → paid → ...
- Tripay expired: pending_payment → [EXPIRED] → payment_expired notif → cancelled atau reorder
- Komplain quality: completed → complaint → [reprint/refund] → completed/refund
- Cancel before prod: pending_payment/paid → cancelled (CS confirm dulu)
- QC fail reprint: production qc failed → printing ulang → qc passed → packing → shipped
- Dropship order: Sama + is_dropship label + dropship_name di packing
- Affiliate order: completed → komisi referrer_id → payout queue
- Guest track: Any status visible via /lacak + CTK-XXX + phone
Instalasi, Wizard & Keamanan Pasca-Install
Instalasi StarCustomPrinting dirancang agar pemilik toko bisa setup tanpa terminal/SSH — cukup upload file ke hosting dan buka browser. Bab ini membahas persyaratan server, wizard 4 langkah di /install, perbandingan SQLite vs MySQL, dan checklist keamanan setelah go-live.
Jangan terburu-buru menghapus folder install atau membagikan password admin default. Baca checklist keamanan di akhir bab sebelum membuka toko ke publik.
Untuk panduan instalasi detail per platform (cPanel, VPS Ubuntu, Nginx), lihat juga PANDUAN-INSTALASI.html.
2.1 Persyaratan server
| Komponen | Minimum | Rekomendasi Production |
|---|---|---|
| PHP | 8.2 | 8.3 dengan OPcache |
| Ekstensi | bcmath, ctype, curl, dom, fileinfo, json, mbstring, openssl, pdo, tokenizer, xml, gd | + redis, intl, imagick |
| Database | SQLite 3 | MySQL 8 / MariaDB 10.6+ |
| Web Server | Apache/Nginx + rewrite | Nginx + PHP-FPM |
| Storage writable | 512 MB | 2 GB+ (upload desain pelanggan) |
2.2 Mockup wizard instalasi — 4 langkah visual
Langkah 2 — Konfigurasi Database
Mockup wizard instalasi — Langkah 2 Database dengan opsi SQLite/MySQL
2.3 Prosedur instalasi langkah demi langkah
Upload & arahkan domain
Upload semua file Laravel ke public_html atau folder web root. Pastikan document root mengarah ke folder public/.
Buka /install
Akses https://domain-anda.com/install. Wizard otomatis cek PHP version dan permission folder storage/ serta bootstrap/cache/.
Pilih database
SQLite: klik lanjut (file DB otomatis dibuat). MySQL: isi host, port 3306, nama database, username, password → klik Test Koneksi.
Isi data toko & admin
APP_NAME (nama toko), APP_URL (https://domain.com), nama admin, email, password kuat.
Klik Instal & tunggu
Installer menulis .env, migrate, seed produk sample, buat admin, cache config. Jangan refresh halaman saat proses berjalan.
2.4 SQLite vs MySQL — panduan keputusan
| Aspek | SQLite | MySQL/MariaDB |
|---|---|---|
| Cocok untuk | Demo, toko kecil (<50 order/hari), shared hosting murah | Production serius, multi-staff concurrent |
| Setup | Zero config, 1 file database | Perlu buat DB di cPanel/phpMyAdmin |
| Backup | Copy file .sqlite | mysqldump / backup cPanel |
| Concurrent writes | Terbatas — bisa lock saat ramai | Handel traffic tinggi lebih baik |
| Rekomendasi | Mulai di sini untuk uji coba | Migrasi sebelum iklan besar/Ramadan |
2.5 Apa yang dilakukan installer?
- Menulis file
.envdari.env.example - Menjalankan
php artisan key:generate - Migrate database + seed katalog produk sample
- Membuat/update user admin
- Menyimpan
store_nameke settings - Membuat symbolic link storage (upload desain)
- Cache config, routes, views
- Membuat flag
storage/app/installed
storage/app/installed, reset .env, dan clear cache.2.6 Checklist keamanan pasca-instal
| # | Item Keamanan | Cara Verifikasi |
|---|---|---|
| 1 | Ganti password admin default | Login /admin → Profil, password 12+ karakter |
| 2 | APP_URL pakai HTTPS | Cek .env APP_URL=https://... |
| 3 | Folder storage tidak public | Hanya /public yang web-accessible |
| 4 | Setup cron scheduler | * * * * * php artisan schedule:run |
| 5 | Backup database rutin | Jadwalkan harian via cPanel/cron |
| 6 | Tripay private key rahasia | Jangan share ke staff non-finance |
| 7 | Buat akun staff terbatas | /admin/staff — jangan share super admin |
| 8 | Test order end-to-end | Checkout → bayar → produksi → resi |
Instal di cPanel shared hosting — SQLite cukup?
Situasi: Pak Agus punya hosting Rp 50rb/bulan, belum punya database MySQL terpisah.
Keputusan: Pilih SQLite di wizard. Toko target 10-20 order/hari awalnya.
Action plan: Saat order > 30/hari atau admin sering "loading", migrasi ke MySQL dengan export/import atau reinstall wizard mode MySQL.
Wizard /install — detail per langkah
Langkah 1 — Cek Server
- PHP version >= 8.2
- Extension bcmath, ctype, curl, dom, fileinfo, json, mbstring, openssl, pdo, tokenizer, xml, gd
- storage/ writable
- bootstrap/cache/ writable
- .env writable atau bisa dibuat
Langkah 2 — Database
- Pilih SQLite: zero config, file database/database.sqlite
- Pilih MySQL: host, port 3306, database name, username, password
- Tombol Test Koneksi wajib sukses sebelum lanjut
Langkah 3 — Toko & Admin
- APP_NAME = nama brand toko
- APP_URL = https://domain.com (wajib HTTPS production)
- Admin name, email unik, password kuat min 8 char
Langkah 4 — Instal
- Progress bar migrate + seed
- 20 produk + 6 kategori + 2 voucher + sample order CTK-
- Flag storage/app/installed created
- Redirect ke homepage atau admin
Storefront, CMS & Alur Pelanggan
Storefront adalah wajah toko Anda — halaman pertama yang dilihat pelanggan sebelum mereka mendesain dan memesan. Bab ini menjelaskan navigasi homepage, katalog produk, halaman CMS, dan perjalanan pelanggan dari browsing hingga klik "Desain Sekarang".
Sebagai pemilik toko, Anda tidak perlu coding untuk mengubah tampilan. Blok homepage, teks hero, dan halaman About/FAQ dikelola dari admin. Pelanggan hanya perlu browser HP atau laptop — tidak perlu install aplikasi.
Pahami alur ini agar Anda bisa menjelaskan ke pelanggan via WhatsApp: buka website → pilih produk → desain → checkout → bayar → lacak dengan kode CTK-XXXXXXXX.
Custom Printing Tanpa Minimum Order
Desain online · Kirim 1–3 hari kerja
Mockup homepage storefront — grid produk featured dari seeder (Kaos, Mug, dll.)
3.1 Struktur halaman publik
| Halaman | URL | Fungsi untuk Pelanggan |
|---|---|---|
| Homepage | / | Hero, kategori, produk unggulan, testimoni |
| Katalog | /produk | Semua produk aktif dengan filter kategori |
| Detail produk | /produk/{slug} | Foto, harga, material, tombol desain |
| Editor | /desain/{slug} | Custom design canvas |
| Keranjang | /keranjang | Review item sebelum checkout |
| Lacak | /lacak | Cek status tanpa login |
| Halaman CMS | /halaman/{slug} | About, Syarat, FAQ, Kebijakan |
| Shop seller | /shop/{slug} | Toko desainer marketplace |
Pelanggan buka homepage
Dari Google, Instagram bio, atau iklan — landing di /. Homepage menampilkan brand Anda dan produk featured (contoh: Kaos Custom, Mug Keramik).
Pilih kategori atau produk
Klik kategori Apparel, Mug & Botol, dll. Atau langsung buka produk dari grid.
Baca detail & klik Desain
Halaman produk menampilkan harga dasar Rp 75.000 (kaos) dll., material, lead time 1–3 hari.
Masuk editor
Redirect ke /desain/{slug} — pelanggan upload gambar atau ketik teks.
20 produk dari seeder — filter by kategori, sort harga/rating.
Mockup halaman katalog dengan filter kategori
3.2 Kategori produk dari seeder
| Kategori | Icon | Contoh Produk | Jumlah |
|---|---|---|---|
| Apparel | 👕 | Kaos, Polo, Hoodie, Jaket, Kaos Anak | 6 |
| Aksesoris | 🎒 | Tote Bag, Topi, ID Card, Gantungan Kunci | 4 |
| Mug & Botol | ☕ | Mug Keramik, Magic Mug, Tumbler | 3 |
| Home Decor | 🛋️ | Bantal Foto, Jam Dinding | 2 |
| Cetak Foto & Art | 🖼️ | Photo Crystal, Poster, Akrilik | 3 |
| Casing HP | 📱 | Softcase, Hardcase Glossy | 2 |
Promo Ramadan — homepage tidak update
Situasi: Toko Pak Rudi iklan Instagram tapi banner masih Natal.
Langkah: (1) Login /admin/homepage, (2) ganti teks hero ke promo Ramadan, (3) set produk featured ke Mug & Kaos Anak, (4) buat voucher CIPTA10 di /admin/voucher.
Hasil: Conversion iklan naik karena landing page relevan dengan audiens.
3.3 CMS — halaman statis
Menu Konten & CMS (/admin/konten) mengelola halaman About, FAQ, Syarat & Ketentuan, Kebijakan Privasi. Gunakan editor WYSIWYG sederhana — tidak perlu HTML manual.
Buat halaman baru
Klik Buat Halaman, isi judul dan slug (contoh: about-us).
Tulis konten
Jelaskan cerita brand, alamat workshop, jam operasional.
Publish
Aktifkan is_published — halaman live di /halaman/about-us.
Narasi perjalanan pelanggan (customer journey)
Awareness
Pelanggan lihat iklan IG/TikTok → klik link bio → landing homepage StarCustomPrinting.
Browse
Scroll katalog /produk — filter Apparel, lihat Kaos Custom Rp 75.000 rating 4.9.
Consider
Baca deskripsi material Cotton Combed 24s, lead time 1-3 hari, lihat review Andi dari Jakarta.
Design
Klik Desain → editor canvas → upload logo PNG → preview mockup kaos hitam size L.
Cart
Add to cart qty 2 → keranjang subtotal Rp 150.000.
Checkout
Isi alamat Bandung, pilih JNE, ongkir Rp 18.000, voucher CIPTA10 -Rp 15.000, total Rp 153.000.
Pay
Pilih transfer BCA → order CTK-A7B2K9M1 → upload bukti → notifikasi created email+WA.
Wait verify
CS verify dalam 30 menit → notifikasi paid → pelanggan tenang.
Production
Notifikasi production day 1 → SLA 3 HD → pelanggan tidak perlu action.
Ship
Day 3 — notifikasi shipped + resi JNE → pelanggan lacak.
Receive
Day 5 — terima paket → status completed → ulasan bintang 5.
Editor Desain Custom — Panduan Lengkap
Editor desain adalah jantung platform POD Anda. Pelanggan upload logo, foto, atau teks langsung di browser — tanpa Photoshop. Bab ini menjelaskan setiap toolbar, area cetak, scale pricing, dan tips agar hasil cetak sesuai harapan.
Sebagai pemilik toko, pahami limitasi editor: preview di layar ≠ 100% identik dengan hasil fisik (terutama magic mug & sublim). Jelaskan ke pelanggan sebelum produksi.
File desain tersimpan otomatis ke order — tim produksi download dari detail order admin, tidak perlu minta ulang ke pelanggan.
ANDA
Mockup editor canvas — sidebar tools + preview kaos
4.1 Toolbar editor
| Tool | Fungsi | Tips Operasional |
|---|---|---|
| Teks | Ketik nama, slogan, nomor | Pilih font tebal untuk kaos gelap |
| Upload gambar | PNG/JPG logo atau foto | Resolusi min 300 DPI area cetak |
| Warna produk | Pilih Putih/Hitam/Navy/Merah | Dari varian colors produk |
| Ukuran cetak | Zoom desain — scale pricing | Harga naik jika scale_pricing aktif |
| Undo/Redo | Batalkan perubahan | Ajari pelanggan via FAQ |
| Preview | Lihat mockup 3D/simulasi | Sebelum add to cart |
| Simpan & Beli | Commit desain → keranjang | Desain ter-lock ke order item |
Pelanggan pilih warna & ukuran
Contoh: Kaos Hitam size L — dari dropdown produk.
Upload desain ke area cetak
Drag gambar ke canvas depan/belakang (print_sides).
Atur posisi & ukuran
Jangan melebihi garis area cetak — akan terpotong.
Preview & add to cart
Cek mockup, lanjut keranjang atau langsung checkout.
Mockup editor Mug Keramik — area cetak melingkar
4.2 Mockup types per produk
| Mockup key | Produk | Catatan Produksi |
|---|---|---|
| tshirt | Kaos O-Neck, Anak | DTF — area dada 28×35 cm default |
| polo | Kaos Polo | Area lebih kecil, hindari jahitan |
| mug | Mug Keramik, Magic Mug | Wrap-around sublimasi |
| bottle | Tumbler | UV print — surface melengkung |
| phonecase | Casing HP | Pilih model HP di varian size |
| poster | Poster, Akrilik, Crystal | Full bleed print |
Pelanggan komplain desain terpotong
Situasi: Logo startup terpotong 2mm di kaos hitam size M.
Langkah: Cek print_scale di order item — pelanggan zoom 110%. Produksi reprint dengan file asli scale 100%, QC extra ketat.
Hasil: Komplain diselesaikan, SOP: reminder garis safe area di FAQ homepage.
Checkout, Voucher, Dropship & Pembayaran
Checkout adalah momen pelanggan mengunci pesanan dan memilih cara bayar. Bab ini membahas form pengiriman, voucher CIPTA10/HEMAT25K, mode dropship, metode Tripay vs transfer manual, dan kode order CTK-XXXXXXXX yang dihasilkan otomatis.
Setiap field checkout tersimpan ke order — alamat salah = paket salah. Latih CS untuk konfirmasi alamat sebelum produksi jika order nominal besar.
Setelah checkout sukses, pelanggan redirect ke halaman order dengan instruksi pembayaran spesifik metode yang dipilih.
Total: Rp 168.000
Mockup checkout — data pelanggan & pilihan bayar
5.1 Alur checkout step-by-step
Review keranjang
Cek produk, qty, warna, size — edit dari keranjang jika salah.
Isi data pengiriman
Nama, HP, alamat lengkap, kota, kecamatan, kode pos — wajib valid untuk RajaOngkir.
Pilih kurir & ongkir
Hitung ongkir live atau flat rate — shipping_cost masuk total.
Masukkan voucher (opsional)
Kode CIPTA10 (10% min Rp 50rb) atau HEMAT25K (Rp 25rb min Rp 150rb).
Mode dropship (opsional)
Centang dropship — isi nama & HP pengirim alternatif.
Pilih metode bayar
Transfer BCA/Mandiri manual atau Tripay (QRIS, VA, e-wallet).
Submit order
Sistem generate CTK-XXXXXXXX, status pending_payment, kirim notifikasi created.
5.2 Voucher dari seeder
| Kode | Tipe | Nilai | Min. Belanja |
|---|---|---|---|
| CIPTA10 | Persen | 10% | Rp 50.000 |
| HEMAT25K | Nominal | Rp 25.000 | Rp 150.000 |
Pesanan CTK-A7B2K9M1
Status: Produksi
Estimasi SLA: 3 hari kerja
Mockup mobile — pelanggan lacak order setelah checkout
5.3 Metode pembayaran
| Metode | Verifikasi | Notifikasi |
|---|---|---|
| Transfer BCA/Mandiri | Manual — pelanggan upload bukti | paid setelah admin verify |
| Tripay QRIS | Otomatis via callback | POST /callback/tripay → paid |
| Tripay VA | Otomatis | Sama — tripay_status PAID |
| Tripay E-wallet | Otomatis | payment_expired jika EXPIRED/FAILED |
Order grosir 50 pcs dengan dropship
Situasi: Reseller Maya order 50 kaos anak ke alamat berbeda-beda (dropship).
Langkah: Aktifkan dropship di checkout, isi dropship_name per order, diskon dropship_level otomatis dari profil dropshipper admin.
Hasil: 50 order terpisah atau batch — produksi prioritaskan by SLA.
Panel Admin — 23 Menu & Dashboard
Panel admin di /admin adalah pusat kendali operasional harian. Sidebar menampilkan 23 menu — visibility tergantung role staff (STAFF_PERMISSIONS). Bab ini menjelaskan setiap menu, URL persis, dan siapa yang boleh akses.
Dashboard menampilkan ringkasan: order hari ini, pending payment, antrian produksi, komplain terbuka. Biasakan buka dashboard pertama kali login setiap pagi.
Jangan bagikan satu akun ke banyak orang — buat staff terpisah di /admin/staff dengan role cs, production, finance, dll.
Dashboard — Ringkasan Hari Ini
Admin| Kode | Pelanggan | Status | Total |
|---|---|---|---|
| CTK-A7B2K9M1 | Budi | Produksi | Rp 168.000 |
| CTK-X3Y8Z1W2 | Sari | Pending | Rp 95.000 |
Mockup dashboard admin — stat cards & order terbaru
6.1 Daftar 23 menu admin (dari admin.blade.php)
| # | Menu | URL Admin | Fungsi Utama | Section Permission |
|---|---|---|---|---|
| 1 | Dashboard |
/admin
|
Ringkasan metrik harian, order terbaru, alert operasional |
Semua staff
|
| 2 | Pesanan |
/admin/order
|
Daftar semua order, filter status, export CSV |
orders
|
| 3 | Verifikasi Bayar |
/admin/order/pembayaran
|
Antrian bukti transfer manual |
orders
|
| 4 | Produksi |
/admin/order/produksi
|
Antrian cetak, QC, packing, bulk action |
orders
|
| 5 | Produk |
/admin/produk
|
CRUD produk, varian, area cetak, mockup |
products
|
| 6 | Moderasi Desain |
/admin/moderasi-desain
|
Approve/tolak desain seller marketplace |
designs
|
| 7 | Toko Seller |
/admin/toko-seller
|
Kelola toko desainer terdaftar |
stores
|
| 8 | Voucher |
/admin/voucher
|
Kupon diskon persen/nominal |
coupons
|
| 9 | Dropshipper |
/admin/dropshipper
|
Approve registrasi & level dropship |
dropship
|
| 10 | Afiliasi |
/admin/afiliasi
|
Kelola affiliator & komisi referral |
referrals
|
| 11 | Payout Komisi |
/admin/payout
|
Approve pencairan seller/afiliasi |
payouts
|
| 12 | Ulasan |
/admin/ulasan
|
Moderasi review pelanggan |
reviews
|
| 13 | Komplain & Retur |
/admin/komplain
|
Tangani keluhan & retur |
complaints
|
| 14 | Jasa Desain |
/admin/jasa-desain
|
Permintaan desain custom on-demand |
design-requests
|
| 15 | Inquiry & Grosir |
/admin/inquiry
|
Lead B2B & form grosir |
inquiries
|
| 16 | Laporan |
/admin/laporan
|
Laporan penjualan, export |
reports
|
| 17 | Konten & CMS |
/admin/konten
|
Halaman statis, blog, FAQ |
pages
|
| 18 | Edit Homepage |
/admin/homepage
|
Blok hero, kategori, produk unggulan |
pages
|
| 19 | Tarif Ongkir |
/admin/ongkir
|
Flat rate manual atau RajaOngkir |
shipping
|
| 20 | Log Aktivitas |
/admin/log-aktivitas
|
Audit trail aksi admin |
audit
|
| 21 | Notifikasi Order |
/admin/notifikasi
|
Template email & WA per event |
settings
|
| 22 | Pengaturan |
/admin/pengaturan
|
Toko, bayar, ongkir, notifikasi, SLA |
settings
|
| 23 | Staff & Peran |
/admin/staff
|
Akun staff & hak akses section |
staff
|
6.2 Mapping permission section
| Section key | Menu terkait | Role tipikal |
|---|---|---|
| orders | Pesanan, Verifikasi, Produksi | cs, finance, production |
| products | Produk | catalog |
| designs | Moderasi Desain | designer, moderator |
| stores | Toko Seller | cs, marketing, moderator |
| coupons | Voucher | marketing |
| dropship | Dropshipper | cs, production |
| referrals | Afiliasi | finance, marketing |
| payouts | Payout Komisi | finance |
| reviews | Ulasan | cs, moderator, marketing |
| complaints | Komplain & Retur | cs, finance |
| design-requests | Jasa Desain | cs, designer |
| inquiries | Inquiry & Grosir | cs, marketing |
| reports | Laporan | Semua role kecuali designer saja |
| pages | Konten, Homepage | marketing |
| shipping | Tarif Ongkir | production |
| audit | Log Aktivitas | super_admin only |
| settings | Notifikasi, Pengaturan | super_admin |
| staff | Staff & Peran | super_admin |
Daftar Pesanan — /admin/order
AdminFilter: pending_payment | paid | production | shipped
| CTK- | Status | Stage |
|---|---|---|
| CTK-A7B2K9M1 | production | printing |
Mockup halaman pesanan dengan filter status
Staff CS tidak bisa buka Pengaturan
Situasi: Ani role cs ingin ubah rekening bank.
Langkah: CS tidak punya section settings — minta Super Admin ubah di /admin/pengaturan atau buat role finance.
Hasil: Keamanan terjaga, perubahan finansial hanya finance/owner.
Referensi mendalam — setiap menu admin
Bagian berikut menjelaskan setiap menu sidebar admin satu per satu. Gunakan sebagai onboarding staff baru — baca menu yang relevan dengan role Anda.
1. Dashboard
URL: /admin · Permission section: Semua staff.
Ringkasan metrik harian, order terbaru, alert operasional. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan dashboard. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Dashboard
Akses /admin → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
2. Pesanan
URL: /admin/order · Permission section: orders.
Daftar semua order, filter status, export CSV. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan pesanan. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Pesanan
Akses /admin/order → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
3. Verifikasi Bayar
URL: /admin/order/pembayaran · Permission section: orders.
Antrian bukti transfer manual. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan verifikasi bayar. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Verifikasi Bayar
Akses /admin/order/pembayaran → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
4. Produksi
URL: /admin/order/produksi · Permission section: orders.
Antrian cetak, QC, packing, bulk action. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan produksi. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Produksi
Akses /admin/order/produksi → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
5. Produk
URL: /admin/produk · Permission section: products.
CRUD produk, varian, area cetak, mockup. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan produk. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Produk
Akses /admin/produk → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
6. Moderasi Desain
URL: /admin/moderasi-desain · Permission section: designs.
Approve/tolak desain seller marketplace. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan moderasi desain. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Moderasi Desain
Akses /admin/moderasi-desain → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
7. Toko Seller
URL: /admin/toko-seller · Permission section: stores.
Kelola toko desainer terdaftar. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan toko seller. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Toko Seller
Akses /admin/toko-seller → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
8. Voucher
URL: /admin/voucher · Permission section: coupons.
Kupon diskon persen/nominal. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan voucher. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Voucher
Akses /admin/voucher → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
9. Dropshipper
URL: /admin/dropshipper · Permission section: dropship.
Approve registrasi & level dropship. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan dropshipper. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Dropshipper
Akses /admin/dropshipper → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
10. Afiliasi
URL: /admin/afiliasi · Permission section: referrals.
Kelola affiliator & komisi referral. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan afiliasi. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Afiliasi
Akses /admin/afiliasi → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
11. Payout Komisi
URL: /admin/payout · Permission section: payouts.
Approve pencairan seller/afiliasi. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan payout komisi. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Payout Komisi
Akses /admin/payout → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
12. Ulasan
URL: /admin/ulasan · Permission section: reviews.
Moderasi review pelanggan. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan ulasan. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Ulasan
Akses /admin/ulasan → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
13. Komplain & Retur
URL: /admin/komplain · Permission section: complaints.
Tangani keluhan & retur. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan komplain & retur. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Komplain & Retur
Akses /admin/komplain → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
14. Jasa Desain
URL: /admin/jasa-desain · Permission section: design-requests.
Permintaan desain custom on-demand. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan jasa desain. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Jasa Desain
Akses /admin/jasa-desain → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
15. Inquiry & Grosir
URL: /admin/inquiry · Permission section: inquiries.
Lead B2B & form grosir. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan inquiry & grosir. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Inquiry & Grosir
Akses /admin/inquiry → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
16. Laporan
URL: /admin/laporan · Permission section: reports.
Laporan penjualan, export. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan laporan. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Laporan
Akses /admin/laporan → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
17. Konten & CMS
URL: /admin/konten · Permission section: pages.
Halaman statis, blog, FAQ. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan konten & cms. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Konten & CMS
Akses /admin/konten → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
18. Edit Homepage
URL: /admin/homepage · Permission section: pages.
Blok hero, kategori, produk unggulan. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan edit homepage. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Edit Homepage
Akses /admin/homepage → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
19. Tarif Ongkir
URL: /admin/ongkir · Permission section: shipping.
Flat rate manual atau RajaOngkir. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan tarif ongkir. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Tarif Ongkir
Akses /admin/ongkir → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
20. Log Aktivitas
URL: /admin/log-aktivitas · Permission section: audit.
Audit trail aksi admin. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan log aktivitas. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Log Aktivitas
Akses /admin/log-aktivitas → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
21. Notifikasi Order
URL: /admin/notifikasi · Permission section: settings.
Template email & WA per event. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan notifikasi order. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Notifikasi Order
Akses /admin/notifikasi → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
22. Pengaturan
URL: /admin/pengaturan · Permission section: settings.
Toko, bayar, ongkir, notifikasi, SLA. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan pengaturan. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Pengaturan
Akses /admin/pengaturan → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
23. Staff & Peran
URL: /admin/staff · Permission section: staff.
Akun staff & hak akses section. Staff dengan section permission yang sesuai akan melihat menu ini di sidebar admin.blade.php. Super admin (staff_role=super_admin, permission *) selalu melihat semua 23 menu.
Operasional harian: buka menu ini ketika tugas Anda melibatkan staff & peran. Jika menu tidak muncul, minta super admin cek role di /admin/staff — bukan bug, melainkan STAFF_PERMISSIONS sengaja membatasi akses.
Quick action Staff & Peran
Akses /admin/staff → gunakan filter & search → export CSV jika perlu laporan → eskalasi ke super_admin untuk pengaturan di luar scope role Anda.
Panduan onboarding staff per role
Role: cs
Fokus: /admin/order, /admin/order/pembayaran, /admin/komplain, /admin/inquiry, /admin/jasa-desain. KPI: response time WA < 15 menit.
Sections: orders, complaints, design-requests, inquiries, reviews, dropship, stores, reports.
Role: finance
Fokus: verifikasi bayar, /admin/payout, /admin/afiliasi. Jangan share Tripay private key.
Sections: orders, payouts, referrals, complaints, stores, reports.
Role: production
Fokus: /admin/order/produksi, input resi, /admin/ongkir read-only. KPI: SLA 3 HD.
Sections: orders, shipping, dropship, reports.
Role: designer
Fokus: /admin/jasa-desain, /admin/moderasi-desain. Deliver file print-ready.
Sections: design-requests, designs, reports.
Role: moderator
Fokus: approve/tolak desain seller, moderasi ulasan toxic/spam.
Sections: designs, reviews, stores.
Role: catalog
Fokus: /admin/produk — harga, deskripsi, featured flag.
Sections: products, reports.
Role: marketing
Fokus: voucher, homepage, CMS, afiliasi, ulasan publish.
Sections: coupons, reviews, referrals, pages, inquiries, stores, reports.
Order, Produksi, QC, Resi & SLA
Bab ini adalah SOP inti tim produksi dan CS. Order dengan status paid masuk antrian produksi. Tiga tahap internal: printing → qc → packing. Setelah resi diinput, status menjadi shipped.
Kode order CTK-XXXXXXXX muncul di semua layar — selalu gunakan kode ini saat komunikasi internal, bukan nama pelanggan saja.
SLA default 3 hari kerja (production_sla_days) dihitung dari paid_at. Lampaui SLA = risiko komplain — prioritaskan order mendekati deadline.
7.1 Delapan status order
| Kode | Label | Operasional | Event notifikasi |
|---|---|---|---|
| pending_payment | Menunggu Pembayaran | Order baru, belum lunas | created, reminder_payment |
| paid | Dibayar | Siap antrian produksi | paid |
| production | Produksi | Cetak → QC → packing | production |
| shipped | Dikirim | Resi sudah diinput | shipped, tracking_update |
| completed | Selesai | Paket diterima / dikonfirmasi | completed |
| complaint | Komplain | Ada keluhan pelanggan | complaint |
| refund | Refund | Dana dikembalikan | refund |
| cancelled | Dibatalkan | Order tidak jadi | cancelled, payment_expired |
7.2 Tiga tahap produksi (production_stage)
Cetak
Quality Control
Kemas + Resi
| Stage | Label | Aksi admin |
|---|---|---|
| printing | Cetak | File desain dicetak ke media (kaos, mug, dll.) |
| qc | QC | Quality control — cek warna, posisi, cacat |
| packing | Packing | Kemas, timbangan, input nomor resi |
Order paid → mulai produksi
Dari detail order klik Mulai Produksi atau bulk di /admin/order/produksi.
Update stage printing
Tim cetak download file desain, cetak, lalu update stage ke qc.
QC pass/fail
qc_status: passed → lanjut packing. failed → catat qc_note, kembali printing.
Packing & input resi
Input tracking_number, courier — status auto shipped, notifikasi shipped terkirim.
Completed
Setelah paket diterima atau auto-complete, status completed — komisi afiliasi dihitung.
Antrian Produksi — /admin/order/produksi
Admin| Order | Stage | QC | SLA |
|---|---|---|---|
| CTK-A7B2K9M1 | printing | pending | 2 hr lagi |
| CTK-B8C3L0N4 | qc | passed | OK |
Mockup antrian produksi dengan stage & QC
CTK-A7B2K9M1 · Budi Pelanggan
Item: Kaos Custom O-Neck × 2 · Hitam · L · Rp 150.000
Mockup detail order — timeline status visual
QC gagal — kaos ada noda tinta
Situasi: Order CTK-B8C3L0N4 QC failed, noda di lengan kanan.
Langkah: qc_note: reprint lengan. Kembalikan stage printing, produksi ulang 1 pcs, QC kedua passed, kirim dengan bonus sticker permintaan maaf.
Hasil: Pelanggan puas, retensi terjaga.
Workflow status — skenario lengkap
- Order normal POD: pending_payment → paid → production(printing→qc→packing) → shipped → completed
- Transfer manual: pending_payment → [upload bukti] → [admin verify] → paid → ...
- Tripay QRIS: pending_payment → [bayar QR] → [callback POST /callback/tripay] → paid → ...
- Tripay expired: pending_payment → [EXPIRED] → payment_expired notif → cancelled atau reorder
- Komplain quality: completed → complaint → [reprint/refund] → completed/refund
- Cancel before prod: pending_payment/paid → cancelled (CS confirm dulu)
- QC fail reprint: production qc failed → printing ulang → qc passed → packing → shipped
- Dropship order: Sama + is_dropship label + dropship_name di packing
- Affiliate order: completed → komisi referrer_id → payout queue
- Guest track: Any status visible via /lacak + CTK-XXX + phone
SOP produksi extended — checklist per stage
Stage: printing
- Download file desain PNG/PDF dari order detail
- Cek resolusi min 300 DPI area cetak
- Match warna kaos/produk dengan order item color
- Cetak test strip jika warna kritis (brand corporate)
- Update production_stage=printing di admin
- Catat mesin/operator di catatan internal order
Stage: qc
- Periksa posisi cetak vs preview editor
- Cek noda, gores, blur, warna fade
- Ukur ukuran print vs spec produk
- qc_status=passed atau failed + qc_note wajib jika failed
- Foto sample untuk order corporate (opsional)
- Update production_stage=qc
Stage: packing
- Lipat/kemas sesuai SOP produk (polybag, box mug)
- Timbang berat untuk ongkir claim
- Tempel label alamat — cek dropship_name jika is_dropship
- Input tracking_number + courier → auto shipped
- Notifikasi shipped + WA ke pelanggan
- Update production_stage=packing, packed_at timestamp
Produk, Kategori & Scale Pricing
Katalog produk dikelola di /admin/produk. Setiap produk punya kategori, harga dasar, varian warna/ukuran, teknik cetak (DTF, Sublimation, UV), mockup type, dan opsi scale pricing.
Saat instalasi, seeder mengisi 20 produk sample — Anda bisa edit harga/nama atau nonaktifkan produk yang tidak dijual.
Role catalog hanya akses products + reports — cocok untuk staff yang fokus update harga & stok virtual (POD tidak perlu stok fisik, tapi lead time per produk).
8.1 Katalog lengkap dari DatabaseSeeder
| Kategori | Nama Produk | Harga Dasar | Teknik Cetak | Featured |
|---|---|---|---|---|
| Apparel | Kaos Custom O-Neck Cotton Combed 24s | Rp 75.000 | DTF | Ya |
| Apparel | Kaos Polo Custom Lacoste CVC | Rp 110.000 | DTF | Ya |
| Apparel | Hoodie Jumper Custom Fleece | Rp 195.000 | DTF | Ya |
| Apparel | Sweater Crewneck Custom | Rp 165.000 | DTF | Tidak |
| Apparel | Jaket Bomber Custom Fullprint | Rp 245.000 | Sublimation | Tidak |
| Apparel | Kaos Anak Custom Lucu | Rp 55.000 | DTF | Tidak |
| Aksesoris | Tote Bag Kanvas Custom | Rp 45.000 | DTF | Ya |
| Aksesoris | Topi Trucker Custom | Rp 65.000 | DTF | Tidak |
| Aksesoris | ID Card / Name Tag Custom | Rp 25.000 | UV Print | Tidak |
| Aksesoris | Gantungan Kunci Akrilik Custom | Rp 15.000 | UV Print | Tidak |
| Mug & Botol | Mug Keramik Custom Full Color | Rp 45.000 | Sublimation | Ya |
| Mug & Botol | Magic Mug Bunglon Custom | Rp 65.000 | Sublimation | Ya |
| Mug & Botol | Tumbler Stainless Custom | Rp 95.000 | UV Print | Tidak |
| Home Decor | Bantal Custom Foto | Rp 70.000 | Sublimation | Ya |
| Home Decor | Jam Dinding Custom | Rp 85.000 | UV Print | Tidak |
| Cetak Foto & Art | Photo Crystal 3D Custom | Rp 150.000 | Laser Engrave | Ya |
| Cetak Foto & Art | Poster Custom HD | Rp 40.000 | Digital Print | Tidak |
| Cetak Foto & Art | Foto Akrilik Custom | Rp 120.000 | UV Print | Tidak |
| Casing HP | Casing HP Custom Softcase | Rp 55.000 | UV Print | Ya |
| Casing HP | Casing HP Custom Hardcase Glossy | Rp 60.000 | Sublimation | Tidak |
Buat produk baru
/admin/produk/baru — pilih kategori, isi nama, harga, material.
Set varian colors & sizes
JSON colors: Putih, Hitam, Navy. Sizes: S–XXL atau model HP.
Pilih mockup & print_sides
Mockup tshirt/mug/phonecase — front/back untuk kaos.
Aktifkan scale_pricing jika perlu
Harga naik saat pelanggan perbesar desain di editor.
Publish
is_active=true, optional is_featured untuk homepage.
Edit Produk — Kaos Custom O-Neck
AdminHarga dasar: Rp 75.000 · DTF · Scale pricing: ON
Colors: Putih, Hitam, Navy, Merah · Sizes: S–XXL
Lead time: 2 hari · Sold: 1240 · Rating: 4.9
Mockup form edit produk admin
| Produk | Kategori | Harga | Aktif |
|---|---|---|---|
| 👕 Kaos Custom O-Neck | Apparel | Rp 75.000 | ✓ |
| ☕ Mug Keramik | Mug & Botol | Rp 45.000 | ✓ |
Mockup daftar produk admin
Tambah produk Hoodie musim dingin
Situasi: Toko di Bandung ingin jual Hoodie Fleece Rp 195rb (sudah ada di seeder).
Langkah: Edit produk seeder: upload foto asli, sesuaikan deskripsi SEO, set featured=true untuk homepage musim hujan.
Hasil: Penjualan hoodie naik 40% tanpa buat produk dari nol.
Panduan operasional per produk seeder
Setiap produk di bawah ini di-seed otomatis saat install. Tim produksi dan CS wajib pahami material & teknik cetak agar bisa jawab pertanyaan pelanggan.
Kaos Custom O-Neck Cotton Combed 24s
Kategori: Apparel · Harga dasar Rp 75.000 · Teknik: DTF · Featured di homepage.
Tips produksi/CS: DTF — cuci terbalik, suhu max 40°C. Area cetak dada default.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Kaos Polo Custom Lacoste CVC
Kategori: Apparel · Harga dasar Rp 110.000 · Teknik: DTF · Featured di homepage.
Tips produksi/CS: DTF — cuci terbalik, suhu max 40°C. Area cetak dada default.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Hoodie Jumper Custom Fleece
Kategori: Apparel · Harga dasar Rp 195.000 · Teknik: DTF · Featured di homepage.
Tips produksi/CS: Fleece tebal — perbesar waktu pressing.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Sweater Crewneck Custom
Kategori: Apparel · Harga dasar Rp 165.000 · Teknik: DTF · Katalog standar.
Tips produksi/CS: Teknik DTF — ikuti SOP workshop.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Jaket Bomber Custom Fullprint
Kategori: Apparel · Harga dasar Rp 245.000 · Teknik: Sublimation · Katalog standar.
Tips produksi/CS: Teknik Sublimation — ikuti SOP workshop.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Kaos Anak Custom Lucu
Kategori: Apparel · Harga dasar Rp 55.000 · Teknik: DTF · Katalog standar.
Tips produksi/CS: DTF — cuci terbalik, suhu max 40°C. Area cetak dada default.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Tote Bag Kanvas Custom
Kategori: Aksesoris · Harga dasar Rp 45.000 · Teknik: DTF · Featured di homepage.
Tips produksi/CS: Kanvas — jahit ulang jika beban berat.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Topi Trucker Custom
Kategori: Aksesoris · Harga dasar Rp 65.000 · Teknik: DTF · Katalog standar.
Tips produksi/CS: Teknik DTF — ikuti SOP workshop.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
ID Card / Name Tag Custom
Kategori: Aksesoris · Harga dasar Rp 25.000 · Teknik: UV Print · Katalog standar.
Tips produksi/CS: Teknik UV Print — ikuti SOP workshop.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Gantungan Kunci Akrilik Custom
Kategori: Aksesoris · Harga dasar Rp 15.000 · Teknik: UV Print · Katalog standar.
Tips produksi/CS: Teknik UV Print — ikuti SOP workshop.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Mug Keramik Custom Full Color
Kategori: Mug & Botol · Harga dasar Rp 45.000 · Teknik: Sublimation · Featured di homepage.
Tips produksi/CS: Sublimasi — dishwasher safe tapi hindari microwave lama.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Magic Mug Bunglon Custom
Kategori: Mug & Botol · Harga dasar Rp 65.000 · Teknik: Sublimation · Featured di homepage.
Tips produksi/CS: Sublimasi — dishwasher safe tapi hindari microwave lama.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Tumbler Stainless Custom
Kategori: Mug & Botol · Harga dasar Rp 95.000 · Teknik: UV Print · Katalog standar.
Tips produksi/CS: UV print — hand wash recommended.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Bantal Custom Foto
Kategori: Home Decor · Harga dasar Rp 70.000 · Teknik: Sublimation · Featured di homepage.
Tips produksi/CS: Teknik Sublimation — ikuti SOP workshop.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Jam Dinding Custom
Kategori: Home Decor · Harga dasar Rp 85.000 · Teknik: UV Print · Katalog standar.
Tips produksi/CS: Teknik UV Print — ikuti SOP workshop.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Photo Crystal 3D Custom
Kategori: Cetak Foto & Art · Harga dasar Rp 150.000 · Teknik: Laser Engrave · Featured di homepage.
Tips produksi/CS: Packaging extra bubble — fragile.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Poster Custom HD
Kategori: Cetak Foto & Art · Harga dasar Rp 40.000 · Teknik: Digital Print · Katalog standar.
Tips produksi/CS: Gulung kertas art paper — jangan lipat.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Foto Akrilik Custom
Kategori: Cetak Foto & Art · Harga dasar Rp 120.000 · Teknik: UV Print · Katalog standar.
Tips produksi/CS: Teknik UV Print — ikuti SOP workshop.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Casing HP Custom Softcase
Kategori: Casing HP · Harga dasar Rp 55.000 · Teknik: UV Print · Featured di homepage.
Tips produksi/CS: Konfirmasi model HP exact sebelum cetak.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Casing HP Custom Hardcase Glossy
Kategori: Casing HP · Harga dasar Rp 60.000 · Teknik: Sublimation · Katalog standar.
Tips produksi/CS: Konfirmasi model HP exact sebelum cetak.
Pelanggan desain via editor mockup type otomatis dari nama produk. Download file produksi dari detail order admin setelah status paid.
Tripay Sandbox/Production & Callback
Tripay adalah payment gateway untuk QRIS, Virtual Account, dan e-wallet. Mode sandbox untuk testing — production untuk uang riil. Callback webhook POST ke /callback/tripay mengupdate order otomatis saat pelanggan bayar.
Konfigurasi di /admin/pengaturan tab Pembayaran: merchant code, API key, private key, tripay_mode (sandbox/production).
Jangan campur kredensial sandbox & production — order bisa stuck pending_payment selamanya.
9.1 Alur Tripay otomatis
Tripay
tripay_checkout_url
/callback/tripay
notifikasi
Daftar merchant Tripay
Dapatkan kode merchant, API key, private key.
Set callback URL
https://domain-anda.com/callback/tripay — method POST di dashboard Tripay.
Isi di Pengaturan admin
tripay_mode=sandbox untuk test, production untuk live.
Test checkout QRIS
Order test Rp 10.000 — bayar via sandbox — cek status paid otomatis.
Go live
Ganti tripay_mode=production, ganti kredensial live, test sekali lagi.
9.2 Status Tripay vs order
| tripay_status | Aksi sistem | Notifikasi |
|---|---|---|
| PAID | Order → paid, paid_at set | paid |
| EXPIRED | Tetap pending_payment | payment_expired |
| FAILED | Tetap pending_payment | payment_expired |
| UNPAID | Menunggu pelanggan | created, reminder_payment |
POST https://domain-anda.com/callback/tripay Content-Type: application/json Signature: HMAC-SHA256 (Tripay private key) Response order paid → status: paid → event notifikasi: paid
Pembayaran Tripay
Mode:
Merchant: T12345 · Callback: /callback/tripay
Channel aktif: QRIS, BCA VA, GoPay
Mockup pengaturan Tripay di admin
Callback 404 — order tidak pernah paid otomatis
Situasi: Toko live, pelanggan bayar QRIS tapi status pending.
Langkah: Cek URL callback typo (http vs https). Whitelist IP Tripay jika firewall. Test curl POST ke /callback/tripay.
Hasil: Callback fixed, 15 order backdated di-verify manual via dashboard Tripay.
Troubleshooting Tripay — 15 skenario
- Callback URL salah protocol (http vs https) — Tripay tidak bisa POST.
- Firewall block IP Tripay — whitelist di hosting.
- Private key typo — signature validation fail, callback ignored.
- Sandbox key di production mode — semua payment fail.
- Order reference mismatch — jangan edit order_code manual di DB.
- tripay_expired_at lewat — pelanggan bayar terlambat → payment_expired.
- Double payment — cek Tripay dashboard sebelum manual mark paid.
- QRIS not displayed — tripay_qr_url empty, regenerate checkout.
- VA number wrong — pelanggan transfer ke VA lama — arahkan cek email Tripay.
- GoPay pending lama — normal 5-15 menit, jangan panic cancel.
- Webhook log empty — cek route POST /callback/tripay registered.
- CSRF on callback — route must exclude CSRF (already configured).
- SSL certificate expired — callback fail silently.
- Merchant inactive — contact Tripay support.
- Amount mismatch — total order vs Tripay amount must match exactly.
Ongkir Manual & RajaOngkir
Biaya ongkir dihitung saat checkout berdasarkan berat/volume dan tujuan. Dua mode: tarif flat manual per provinsi, atau integrasi RajaOngkir Komerce API live.
Origin pengiriman (kota warehouse) harus benar — ongkir salah = rugi atau pelanggan batal.
Role production punya akses shipping untuk update tarif jika kurir naikan harga.
Buka /admin/ongkir
Pilih mode: manual flat rate atau RajaOngkir API.
Manual: set tarif per provinsi
Contoh: Jawa Rp 10rb, luar Jawa Rp 25rb — simple tapi kurang akurat.
RajaOngkir: isi API key
Dapatkan dari dashboard Komerce, set origin city ID.
Test di checkout
Masukkan alamat Bandung — muncul JNE/TIX/SICEPAT dengan harga live.
Tracking sync (opsional)
Enable tracking di notifikasi — status AWB live di email/WA.
| Mode | Kelebihan | Kekurangan |
|---|---|---|
| Manual flat | Gratis, simple, predictable | Tidak akurat berat/volume |
| RajaOngkir live | Akurat, multi kurir | Butuh API key berbayar |
| Hybrid | Fallback manual jika API down | Perlu monitor error log |
Tarif Ongkir — /admin/ongkir
AdminOrigin: Bandung · Mode: RajaOngkir
| Kurir | Service | Estimasi |
|---|---|---|
| JNE | REG | 2–3 hari |
| J&T | EZ | 2–4 hari |
Mockup konfigurasi ongkir admin
Ongkir Rp 0 ke Papua
Situasi: Pelanggan checkout Hoodie ke Jayapura, ongkir gratis (bug tarif).
Langkah: Cek fallback manual — provinsi Papua belum di-set. Tambah tarif manual Rp 85rb atau fix API coverage.
Hasil: Kerugian ongkir terhindari sebelum produksi.
Notifikasi Email, WA & Template
Sistem mengirim notifikasi otomatis pada setiap perubahan status order — via email (Mailketing/SMTP) dan WhatsApp (StarSender). Template dikustomisasi di /admin/notifikasi dengan placeholder dinamis.
Ada 11 event notifikasi (NotificationTemplates::EVENTS) dan 32 placeholder keys yang bisa dipakai di subject/body.
Placeholder {{order_code}} selalu CTK-XXXXXXXX — jangan hardcode contoh kode di template production.
11.1 Sebelas event notifikasi
| Event key | Label Indonesia |
|---|---|
| created | Order dibuat (menunggu bayar) |
| paid | Pembayaran terverifikasi |
| production | Masuk produksi |
| shipped | Order dikirim |
| tracking_update | Update resi / tracking |
| completed | Order selesai |
| cancelled | Order dibatalkan |
| complaint | Komplain dibuka |
| refund | Refund diproses |
| reminder_payment | Pengingat bayar |
| payment_expired | Pembayaran Tripay gagal/kedaluwarsa |
11.2 Tiga puluh dua placeholder keys
| Placeholder | Deskripsi |
|---|---|
| customer_name | Nama pelanggan |
| customer_phone | Nomor HP pelanggan |
| customer_email | Email pelanggan |
| order_code | Kode order CTK-XXXXXXXX |
| status | Label status Indonesia |
| status_key | Kode status (paid, production, dll) |
| total | Total order format Rp |
| subtotal | Subtotal merchandise |
| shipping_cost | Biaya ongkir |
| payment_method | Metode pembayaran |
| courier | Nama kurir |
| courier_code | Kode kurir (jne, jnt) |
| tracking_number | Nomor resi/AWB |
| tracking_url | URL lacak paket |
| tracking_status | Status tracking kurir |
| tracking_summary | Ringkasan tracking |
| tracking_origin | Asal pengiriman |
| tracking_destination | Tujuan pengiriman |
| tracking_receiver | Nama penerima paket |
| shipping_address | Alamat jalan |
| city | Kota |
| district | Kecamatan |
| postal_code | Kode pos |
| shipping_full | Alamat lengkap gabungan |
| order_url | URL halaman order |
| payment_url | URL konfirmasi/bayar |
| tripay_checkout_url | URL checkout Tripay |
| tripay_pay_code | Kode bayar Tripay |
| store_name | Nama toko |
| store_phone | Telepon toko |
| store_email | Email toko |
| sla_days | SLA produksi (hari kerja) |
| notes | Catatan order |
Pembayaran Terverifikasi ✅
Halo Budi Pelanggan, pembayaran order CTK-A7B2K9M1 sudah kami verifikasi.
Total: Rp 168.000 · Kurir: JNE → Bandung
Pantau Status PesananMockup email notifikasi paid dengan placeholder terisi
Buka /admin/notifikasi
Daftar event: created, paid, production, shipped, dll.
Edit template email/WA
Gunakan {{customer_name}}, {{order_code}}, {{total}}, dll.
Toggle email_enabled / wa_enabled
Matikan channel yang tidak dipakai.
Test kirim
Buat order test — verifikasi setiap event.
| Event | WA | |
|---|---|---|
| created | ✓ | ✓ |
| paid | ✓ | ✓ |
| shipped | ✓ | ✓ |
| payment_expired | ✓ | ✓ |
Subject paid: Pembayaran {{order_code}} lunas...
Mockup halaman template notifikasi admin
WA tidak terkirim — API StarSender error
Situasi: Pelanggan protes tidak dapat update shipped.
Langkah: Cek token StarSender di Pengaturan, test WA manual. Fallback: CS kirim resi manual sambil fix API.
Hasil: Template WA diperbaiki, monitoring error log harian.
Detail setiap event notifikasi
StarCustomPrinting mengirim notifikasi pada 11 event berikut (NotificationTemplates::EVENTS). Masing-masing punya template email HTML dan WhatsApp default dengan placeholder {{order_code}}, dll.
Event: created — Order dibuat (menunggu bayar)
Dipicu saat checkout selesai, status pending_payment. Berisi total, metode bayar, link payment_url dan order_url. Pastikan pelanggan terima within 1 menit — cek Mailketing/StarSender.
Edit template di /admin/notifikasi → tab created. Toggle email_enabled dan wa_enabled per event.
Event: paid — Pembayaran terverifikasi
Dipicu saat admin verifikasi transfer manual ATAU Tripay callback PAID. Konfirmasi lunas — tim produksi siap action.
Edit template di /admin/notifikasi → tab paid. Toggle email_enabled dan wa_enabled per event.
Event: production — Masuk produksi
Dipicu saat status → production. Menyebut sla_days dari production_sla_days setting.
Edit template di /admin/notifikasi → tab production. Toggle email_enabled dan wa_enabled per event.
Event: shipped — Order dikirim
Dipicu saat resi diinput. Wajib isi {{tracking_number}}, {{courier}}, {{tracking_url}}.
Edit template di /admin/notifikasi → tab shipped. Toggle email_enabled dan wa_enabled per event.
Event: tracking_update — Update resi / tracking
Dipicu saat sync RajaOngkir atau update manual tracking — optional di pengaturan.
Edit template di /admin/notifikasi → tab tracking_update. Toggle email_enabled dan wa_enabled per event.
Event: completed — Order selesai
Order selesai — ajak pelanggan review. Komisi afiliasi/seller dihitung di tahap ini.
Edit template di /admin/notifikasi → tab completed. Toggle email_enabled dan wa_enabled per event.
Event: cancelled — Order dibatalkan
Order batal — CS harus follow up jika pelanggan tidak expect cancel.
Edit template di /admin/notifikasi → tab cancelled. Toggle email_enabled dan wa_enabled per event.
Event: complaint — Komplain dibuka
Pelanggan buka komplain — tone empati, link order_url ke detail tiket.
Edit template di /admin/notifikasi → tab complaint. Toggle email_enabled dan wa_enabled per event.
Event: refund — Refund diproses
Proses refund — koordinasi finance, jangan janji timeline tanpa konfirmasi.
Edit template di /admin/notifikasi → tab refund. Toggle email_enabled dan wa_enabled per event.
Event: reminder_payment — Pengingat bayar
Scheduler otomatis untuk pending_payment stale — butuh cron schedule:run.
Edit template di /admin/notifikasi → tab reminder_payment. Toggle email_enabled dan wa_enabled per event.
Event: payment_expired — Pembayaran Tripay gagal/kedaluwarsa
Tripay EXPIRED/FAILED — arahkan checkout ulang atau hubungi CS.
Edit template di /admin/notifikasi → tab payment_expired. Toggle email_enabled dan wa_enabled per event.
Panduan placeholder notifikasi (32 keys)
Placeholder ditulis {{nama_key}} di template email subject/body dan WA body. Sistem mengganti otomatis via NotificationTemplates::render() saat order event fired.
{{customer_name}} — Nama pelanggan
{{customer_phone}} — Nomor HP pelanggan
{{customer_email}} — Email pelanggan
{{order_code}} — Kode order CTK-XXXXXXXX (Selalu format CTK-XXXXXXXX — jangan typo di template.)
{{status}} — Label status Indonesia
{{status_key}} — Kode status (paid, production, dll)
{{total}} — Total order format Rp (Sudah format Rp dengan thousand separator.)
{{subtotal}} — Subtotal merchandise
{{shipping_cost}} — Biaya ongkir
{{payment_method}} — Metode pembayaran
{{courier}} — Nama kurir
{{courier_code}} — Kode kurir (jne, jnt)
{{tracking_number}} — Nomor resi/AWB
{{tracking_url}} — URL lacak paket (URL lacak paket — fallback order_url jika kosong.)
{{tracking_status}} — Status tracking kurir
{{tracking_summary}} — Ringkasan tracking
{{tracking_origin}} — Asal pengiriman
{{tracking_destination}} — Tujuan pengiriman
{{tracking_receiver}} — Nama penerima paket
{{shipping_address}} — Alamat jalan
{{city}} — Kota
{{district}} — Kecamatan
{{postal_code}} — Kode pos
{{shipping_full}} — Alamat lengkap gabungan (Gabungan alamat + kecamatan + kota + kode pos.)
{{order_url}} — URL halaman order
{{payment_url}} — URL konfirmasi/bayar (Link unggah bukti transfer manual.)
{{tripay_checkout_url}} — URL checkout Tripay (Link bayar Tripay — hanya order Tripay.)
{{tripay_pay_code}} — Kode bayar Tripay (Kode bayar VA/QRIS Tripay.)
{{store_name}} — Nama toko
{{store_phone}} — Telepon toko
{{store_email}} — Email toko
{{sla_days}} — SLA produksi (hari kerja) (Angka hari kerja dari setting production_sla_days.)
{{notes}} — Catatan order
Seller, Dropship, Afiliasi & Payout
Platform mendukung tiga model partner: Seller Store (desainer jual desain), Dropshipper (reseller dengan diskon level), dan Afiliasi (komisi referral link). Semua komisi dicatat otomatis saat order completed.
Payout dicairkan manual oleh finance di /admin/payout setelah partner request — verifikasi rekening & saldo minimum.
Moderasi desain seller wajib sebelum tampil publik — cegah konten SARA/copyright.
12.1 Seller Store
Desainer daftar & buat toko
Profil seller, slug unik /shop/nama-toko.
Upload desain ke produk
Desain masuk antrian /admin/moderasi-desain.
Admin approve
Moderator/designer review — approve atau tolak dengan alasan.
Desain live di storefront
Royalty seller dihitung per order completed.
12.2 Dropshipper
Registrasi dropship
Form di storefront — antrian /admin/dropshipper.
Admin set level & diskon
Level 1/2/3 dengan dropship_discount berbeda.
Checkout mode dropship
is_dropship=true, label pengirim custom.
12.3 Afiliasi
Affiliator dapat link ?ref=KODE
Cookie tracking 30 hari.
Order completed → komisi
referrer_id tercatat di order.
Request payout
Finance approve di /admin/payout.
Payout Komisi — /admin/payout
Admin| Partner | Saldo | Status |
|---|---|---|
| Seller: DesainKita | Rp 450.000 | Pending |
| Affiliator: KOL123 | Rp 120.000 | Approved |
Mockup antrian payout komisi
Desain seller tolak — logo merek terkenal
Situasi: Seller upload logo Nike tanpa izin.
Langkah: Moderator tolak di /admin/moderasi-desain, catat alasan copyright. Notify seller via email.
Hasil: Risiko legal terhindari, seller upload desain original.
Pengaturan Toko, Tema & Staff
Menu Pengaturan (/admin/pengaturan) adalah control panel global: profil toko, rekening bank, Tripay, ongkir, SLA produksi, integrasi email/WA, dan tema warna brand purple/cyan.
Staff & Peran (/admin/staff) mengelola akun tim dengan STAFF_PERMISSIONS — 8 role predefined.
Hanya super_admin yang boleh mengubah pengaturan finansial dan menambah staff.
13.1 Tab pengaturan utama
| Tab | Isi penting |
|---|---|
| Profil Toko | store_name, phone, email, alamat |
| Pembayaran | Rekening BCA/Mandiri, Tripay keys, tripay_mode |
| Ongkir | Origin, RajaOngkir key, fallback manual |
| Notifikasi | Mailketing, StarSender tokens |
| Produksi | production_sla_days (default 3 HD) |
| Tema | Brand color purple, accent cyan — Plus Jakarta Sans |
13.2 Delapan role staff (STAFF_PERMISSIONS)
| Role | Sections | Deskripsi |
|---|---|---|
| super_admin | * | Pemilik toko — akses semua 23 menu admin |
| cs | orders, complaints, design-requests, inquiries, reviews, dropship, stores, reports | Customer service & follow-up pelanggan |
| finance | orders, payouts, referrals, complaints, stores, reports | Verifikasi bayar, payout, komisi |
| production | orders, shipping, dropship, reports | Tim cetak, QC, packing, resi |
| designer | design-requests, designs, reports | Jasa desain & moderasi file |
| moderator | designs, reviews, stores | Moderasi marketplace seller |
| catalog | products, reports | Manajemen katalog & harga |
| marketing | coupons, reviews, referrals, pages, inquiries, stores, reports | Promo, konten, afiliasi |
Buat staff baru
/admin/staff → nama, email, password, pilih staff_role.
Verifikasi menu visible
Login sebagai staff — pastikan sidebar sesuai permission.
Rotate password berkala
Setiap 90 hari untuk role finance & super_admin.
Pengaturan Toko
AdminNama: StarCustomPrinting · SLA: 3 HD
Tripay: sandbox · Email: Mailketing ✓ · WA: StarSender ✓
Mockup halaman pengaturan global
| Nama | Role | |
|---|---|---|
| Ani CS | cs | ani@toko.com |
| Budi Produksi | production | prod@toko.com |
Mockup manajemen staff & peran
Tema brand toko diganti ke hijau
Situasi: Owner ingin rebrand warna hijau, bukan purple default.
Langkah: Pengaturan → Tema → ubah brand hex. Clear cache config. Preview storefront.
Hasil: Brand konsisten di admin & storefront dalam 5 menit.
Akun Pelanggan — Semua Submenu
Pelanggan terdaftar punya dashboard akun untuk kelola pesanan, alamat, desain tersimpan, komplain, jasa desain, dan profil dropship/afiliasi jika terdaftar sebagai partner.
Pelanggan tamu (guest) tetap bisa order & lacak via CTK-XXXXXXXX + nomor HP tanpa registrasi.
AJari CS cara panduan pelanggan login dan cek status — kurangi pertanyaan berulang di WA.
14.1 Menu akun pelanggan
| Menu | Fungsi |
|---|---|
| Pesanan Saya | Daftar order + status timeline |
| Alamat | Simpan alamat default pengiriman |
| Desain Saya | Desain tersimpan dari editor |
| Komplain | Buka tiket keluhan per order |
| Jasa Desain | Request desain by designer toko |
| Toko Saya | Dashboard seller jika approved |
| Dropship | Status & level dropshipper |
| Afiliasi | Link referral & saldo komisi |
| Profil | Nama, HP, ganti password |
Registrasi / login
Email + password atau login saat checkout.
Lihat pesanan
Klik order → detail sama seperti /order/CTK-XXX.
Upload bukti bayar
Jika transfer manual & status pending_payment.
Buka komplain
Setelah received jika ada masalah kualitas.
Pesanan CTK-A7B2K9M1
Status: Produksi
Estimasi SLA: 3 hari kerja
Mockup tampilan mobile — pelanggan cek status order
Pelanggan lupa password tapi mau komplain
Situasi: Order CTK-X9Y2Z5W1 completed, kaos rusak setelah cuci pertama.
Langkah: CS arahkan ke /lacak + HP verifikasi, atau reset password via email. Buka komplain dari detail order.
Hasil: Tiket komplain terbuka, produksi reprint gratis.
FAQ 25+ & Decision Tree Troubleshooting
Bab ini mengumpulkan pertanyaan operasional paling sering dari pemilik toko, CS, dan produksi — dengan jawaban actionable. Gunakan sebagai cheat sheet harian.
Decision tree sederhana: Identifikasi gejala → cek menu admin terkait → verifikasi log/konfigurasi → eskalasi ke super_admin/IT.
Tambahkan FAQ internal toko Anda di halaman CMS /admin/konten untuk pelanggan.
15.1 FAQ operasional (25 pertanyaan)
Pelanggan sudah transfer tapi status masih Menunggu Pembayaran?
Buka menu Verifikasi Bayar di /admin/order/pembayaran. Cari order CTK-XXXXXXXX, buka bukti transfer, klik Verifikasi jika nominal dan rekening cocok. Notifikasi paid otomatis terkirim.
Tripay sudah bayar tapi order tidak berubah?
Pastikan callback URL di dashboard Tripay: https://domain.com/callback/tripay (POST). Cek tripay_mode sandbox vs production di Pengaturan. Lihat log di storage/logs/laravel.log.
Bagaimana cara lacak order tanpa login?
Pelanggan buka /order/CTK-XXXXXXXX atau /lacak — masukkan kode order + nomor HP. Kode format selalu CTK- diikuti 8 karakter alfanumerik.
Editor desain tidak tampil / blank?
Pastikan browser modern (Chrome/Edge). Cek koneksi internet untuk font CDN. Kosongkan cache browser. File desain besar (>10MB) bisa lambat — kompres PNG/JPG dulu.
Ongkir Rp 0 atau tidak muncul?
Cek Pengaturan → Ongkir: mode manual harus punya tarif per provinsi, atau RajaOngkir API key valid. Origin kota pengiriman harus diisi.
Staff produksi tidak lihat menu Produk?
Normal — role production hanya punya section orders, shipping, dropship, reports. Ubah role di /admin/staff jika perlu akses products.
Voucher tidak bisa dipakai?
Cek min_spend, tanggal aktif, dan kode persis (CIPTA10, HEMAT25K dari seeder). Voucher percent vs fixed berbeda perhitungan di checkout.
Order stuck di Produksi lama?
Buka /admin/order/produksi, cek production_stage: printing → qc → packing. Update stage manual. SLA default 3 hari kerja (production_sla_days).
QC gagal — harus reprint?
Set qc_status ke failed, catat qc_note, kembalikan production_stage ke printing. Komunikasikan ke pelanggan via catatan order.
Resi sudah diinput tapi pelanggan tidak dapat WA?
Cek template shipped di /admin/notifikasi, pastikan wa_enabled ON. Verifikasi StarSender API token di Pengaturan.
Komplain — status order jadi complaint?
Pelanggan buka komplain dari halaman order. Admin tangani di /admin/komplain. Status order bisa complaint sambil produksi ulang.
Refund — langkah admin?
Ubah status ke refund setelah transfer balik. Template refund otomatis terkirim. Catat di catatan order untuk audit.
Seller store tidak muncul di homepage?
Toko harus approved di /admin/toko-seller. Desain harus lulus moderasi. Homepage block seller di /admin/homepage.
Dropship — label pengirim beda?
Checkout mode dropship: isi dropship_name & dropship_phone. Order flag is_dropship=true, label resi pakai nama dropshipper.
Afiliasi — kapan komisi cair?
Komisi dihitung saat order completed. Payout request di /admin/payout setelah saldo minimum. Cookie referral 30 hari.
Install ulang tanpa hapus data?
Hapus storage/app/installed, akses /install lagi — hati-hati overwrite .env. Backup database dulu.
Email notifikasi tidak terkirim?
Cek Mailketing API key / SMTP di Pengaturan. Test kirim dari halaman notifikasi. Cek spam folder pelanggan.
Produk scale pricing — harga berubah saat zoom?
Scale pricing aktif: harga naik proporsional saat desain diperbesar di editor (print_scale). Nonaktifkan di edit produk jika tidak diinginkan.
Bulk produksi — update banyak order sekaligus?
Di /admin/order/produksi centang beberapa order → Bulk Update Stage atau Bulk Resi di menu terkait.
Cron job wajib?
Ya — untuk payment reminder, tracking sync, cleanup. Set * * * * * php /path/artisan schedule:run di cPanel cron.
SQLite database locked error?
Terjadi saat traffic concurrent tinggi. Migrasi ke MySQL. Sementara kurangi staff yang save bersamaan.
Magic mug preview tidak akurat?
Editor menampilkan preview simulasi. Hasil cetak thermal mug berbeda saat panas — jelaskan ke pelanggan di deskripsi produk.
Password admin lupa?
Reset via php artisan tinker atau update users table di database. Jangan share akun super_admin ke staff.
Export laporan CSV?
Menu Laporan /admin/laporan → Export. Pesanan /admin/order/export untuk data order mentah.
Halaman CMS 404?
Buat halaman di /admin/konten dengan slug yang benar. Seed default pages jika kosong.
15.2 Decision tree — order tidak jadi paid
FAQ tambahan — referensi teknis
Bagaimana format kode order?
Selalu CTK- diikuti 8 karakter A-Z0-9 uppercase. Contoh: CTK-A7B2K9M1. Generated saat checkout submit.
Apakah pelanggan bisa edit desain setelah order?
Tidak setelah checkout — harus cancel (jika belum produksi) dan order ulang, atau CS escalate reprint.
Berapa lama cookie afiliasi?
30 hari sejak klik link ?ref=KODE.
Apa beda complaint vs refund status?
complaint = ada masalah aktif; refund = proses uang kembali, bisa overlap.
Siapa bisa lihat Log Aktivitas?
Hanya super_admin — section audit tidak ada di STAFF_PERMISSIONS role lain.
Apakah Notifikasi Order same as Pengaturan?
Notifikasi (/admin/notifikasi) bagian section settings — hanya super_admin.
Default admin seeder email?
admin@ciptaloka.test / password — GANTI segera setelah install.
Sample customer seeder?
budi@ciptaloka.test — untuk test order flow.
Bulk verify payment?
POST /admin/pembayaran/bulk-verifikasi dari halaman Verifikasi Bayar.
Export order CSV?
GET /admin/order/export dengan filter status optional.
SOP Operasional Harian (08:00–17:00)
Standard Operating Procedure harian untuk toko POD skala kecil-menengah. Sesuaikan dengan jumlah staff — toko 1 orang gabungkan beberapa slot waktu.
Target KPI: verifikasi bayar < 30 menit, paid → production < 24 jam, SLA produksi 3 HD, respon komplain < 4 jam.
Print SOP ini dan tempel di wall produksi sebagai checklist.
16.1 Jadwal per jam
| Jam | Aktivitas | Detail / Menu Admin |
|---|---|---|
| 08:00 | Buka admin | Login /admin, cek dashboard: order baru, pending payment, produksi hari ini. |
| 08:15 | Verifikasi bayar | Proses antrian /admin/order/pembayaran — target < 30 menit respon. |
| 08:45 | Brief produksi | Review order paid kemarin, assign ke mesin/staff, prioritaskan SLA dekat deadline. |
| 09:00 | Cetak batch | Download file desain dari detail order, jalankan printing stage. |
| 10:00 | QC pagi | Periksa hasil cetak kemarin, update qc passed/failed, reprint jika perlu. |
| 10:30 | CS inbox | Balas WA/email komplain, inquiry grosir, jasa desain pending. |
| 11:00 | Packing & resi | Order QC lulus → packing → input resi → status shipped. |
| 12:00 | Istirahat | Handover ke staff shift siang jika ada. |
| 13:00 | Moderasi | Approve desain seller & ulasan baru (moderator/marketing). |
| 13:30 | Tripay monitor | Cek order pending_payment > 2 jam, payment_expired, kirim reminder manual jika perlu. |
| 14:00 | Produksi siang | Batch cetak order masuk siang, update production_stage di admin. |
| 15:00 | Ongkir & tracking | Sync RajaOngkir tracking_update notifikasi jika enabled. |
| 15:30 | Laporan harian | Export /admin/laporan, catat omzet & order selesai. |
| 16:00 | Payout & afiliasi | Finance review request payout seller/afiliasi. |
| 16:30 | Backup & closing | Backup DB, cek order stuck, catatan untuk shift besok. |
| 17:00 | Tutup operasional | Pastikan tidak ada paid tanpa masuk produksi > 24 jam. |
16.2 Checklist buka toko (pagi)
- Login /admin — cek dashboard
- Verifikasi bayar semua pending
- Review antrian produksi & SLA
- Cek komplain & inquiry baru
- Test cron scheduler jalan (opsional)
16.3 Checklist tutup toko (sore)
- Semua paid hari ini masuk produksi
- Resi hari ini terinput
- Export laporan harian
- Backup database
- Catat order stuck untuk besok
Board Produksi Harian
AdminMockup board KPI produksi harian
Ramadan — volume 3× lipat
Situasi: Order naik dari 20/hari ke 60/hari selama Ramadan.
Langkah: Tambah shift produksi 08–21, hire staff production role, extend SLA comunication ke pelanggan via banner, prioritas order paid tertua.
Hasil: SLA breach <5%, rating toko tetap 4.8.
Glosarium A–Z & Referensi URL Lengkap
Referensi cepat istilah teknis & operasional dalam bahasa Indonesia, plus daftar URL penting storefront dan admin.
Bookmark bab ini — gunakan Ctrl+F untuk cari istilah atau path URL.
Semua URL relatif ke domain Anda (contoh: https://tokoanda.com/admin/order).
17.1 Glosarium A–Z
| Istilah | Definisi |
|---|---|
| AWB | Air Waybill — nomor resi pengiriman kurir. |
| Admin Panel | Area /admin untuk mengelola toko, hanya user role admin/staff. |
| Afiliasi | Program komisi untuk promotor dengan link ?ref=KODE. |
| Alpine.js | Library JavaScript ringan untuk interaksi UI di Blade. |
| Area cetak | Zona di mockup produk tempat desain pelanggan ditempatkan. |
| Blade | Template engine Laravel untuk halaman HTML server-side. |
| CS | Customer Service — role staff untuk order & komplain. |
| CTK-XXXXXXXX | Format kode order unik 8 karakter setelah prefix CTK-. |
| Callback Tripay | Webhook POST ke /callback/tripay saat status bayar berubah. |
| Canvas editor | Editor desain HTML5 untuk upload teks/gambar di produk. |
| Catalog Manager | Role staff dengan akses products + reports. |
| Complaint | Status order saat pelanggan laporkan masalah kualitas/pengiriman. |
| Coupon / Voucher | Kode diskon persen atau nominal (contoh CIPTA10). |
| DTF | Direct to Film — teknik cetak kaos populer. |
| Dropship | Mode order where reseller kirim atas nama sendiri. |
| Finance | Role staff untuk verifikasi bayar & payout. |
| Laravel | Framework PHP backend StarCustomPrinting. |
| Lead time | Estimasi hari pengerjaan per produk (1–3 hari dari seeder). |
| Mailketing | Layanan email API opsional untuk notifikasi transaksi. |
| Mockup | Gambar template produk di editor (tshirt, mug, dll.). |
| Moderasi desain | Proses approve/tolak desain seller marketplace. |
| Order code | Sama dengan CTK-XXXXXXXX — ID utama pesanan. |
| POD | Print-on-Demand — cetak satuan tanpa minimum order. |
| Packing | Tahap produksi terakhir sebelum input resi. |
| Payment confirmation | Bukti transfer manual yang diunggah pelanggan. |
| Payout | Pencairan komisi seller/afiliasi ke rekening. |
| Production stage | Sub-tahap: printing, qc, packing saat status production. |
| QC | Quality Control — pemeriksaan hasil cetak sebelum kirim. |
| RajaOngkir | Integrasi API ongkir live atau manual fallback. |
| Referral | Program afiliasi dengan tracking cookie. |
| SLA | Service Level Agreement — target hari produksi (default 3 HD). |
| SQLite | Database file-based, cocok hosting kecil. |
| Scale pricing | Harga dinamis berdasarkan ukuran desain di editor. |
| Seeder | Data awal saat install: produk Kaos, Mug, dll. |
| Seller store | Toko desainer independen di /shop/{slug}. |
| StarSender | API WhatsApp untuk notifikasi order ke pelanggan. |
| Storefront | Halaman publik toko yang dilihat pelanggan. |
| Sublimation | Teknik cetak mug, jersey full print. |
| Super Admin | Akun pemilik dengan permission * (semua menu). |
| Template notifikasi | Email/WA dengan placeholder {{order_code}}, dll. |
| Transfer manual | Bayar ke rekening BCA/Mandiri + upload bukti. |
| Tripay | Payment gateway QRIS, e-wallet, VA otomatis. |
| UV Print | Teknik cetak ID card, akrilik, tumbler. |
| Verifikasi bayar | Admin approve bukti transfer di menu khusus. |
17.2 Referensi URL lengkap
| Nama | Path | Keterangan |
|---|---|---|
| Storefront | / | Homepage toko |
| Katalog | /produk | Daftar semua produk |
| Detail produk | /produk/{slug} | Halaman produk + tombol desain |
| Editor | /desain/{slug} | Canvas custom design |
| Keranjang | /keranjang | Cart sebelum checkout |
| Checkout | /checkout | Form order & pembayaran |
| Lacak order | /lacak | Tracking tanpa login |
| Detail order | /order/{CTK-XXXXXXXX} | Status & bukti bayar |
| Install wizard | /install | Setup awal (sekali) |
| Tripay callback | /callback/tripay | Webhook POST Tripay |
| Admin dashboard | /admin | Dashboard |
| Pesanan | /admin/order | Daftar order |
| Verifikasi bayar | /admin/order/pembayaran | Antrian transfer |
| Produksi | /admin/order/produksi | Antrian cetak/QC/pack |
| Produk | /admin/produk | Katalog admin |
| Moderasi desain | /admin/moderasi-desain | Approve desain seller |
| Toko seller | /admin/toko-seller | Kelola seller |
| Voucher | /admin/voucher | Kupon diskon |
| Dropshipper | /admin/dropshipper | Registrasi dropship |
| Afiliasi | /admin/afiliasi | Program referral |
| Payout | /admin/payout | Cairkan komisi |
| Ulasan | /admin/ulasan | Moderasi review |
| Komplain | /admin/komplain | Retur & keluhan |
| Jasa desain | /admin/jasa-desain | Permintaan desain custom |
| Inquiry | /admin/inquiry | Lead B2B/grosir |
| Laporan | /admin/laporan | Report & export |
| Konten CMS | /admin/konten | Halaman statis |
| Homepage | /admin/homepage | Edit blok homepage |
| Ongkir | /admin/ongkir | Tarif pengiriman |
| Log aktivitas | /admin/log-aktivitas | Audit trail |
| Notifikasi | /admin/notifikasi | Template email/WA |
| Pengaturan | /admin/pengaturan | Config toko global |
| Staff | /admin/staff | Akun & permission |
17.3 Ringkasan angka penting
| Item | Nilai |
|---|---|
| Format order code | CTK-XXXXXXXX (8 karakter) |
| Status order | 8 status |
| Tahap produksi | 3 stage: printing, qc, packing |
| Menu admin | 23 item sidebar |
| Placeholder notifikasi | 32 keys |
| Event notifikasi | 11 events |
| Produk seeder | 20 produk, 6 kategori |
| Staff roles | 8 roles (STAFF_PERMISSIONS) |
| SLA default | 3 hari kerja |
| Callback Tripay | POST /callback/tripay |
| Install wizard | GET /install |
| Versi manual | 2.0 |
CTK-A7B2K9M1 CTK-X3Y8Z1W2 CTK-M4N8P2Q7
Glosarium tambahan
- Batch produksi: Grup order dicetak bersamaan untuk efisiensi mesin.
- BCA VA: Virtual Account BCA via Tripay.
- Blind dropship: Paket tanpa branding toko asal — opsi packing.
- Combed cotton: Bahan kaos premium halus — produk seeder 24s/30s.
- Cookie referral: Browser cookie tracking afiliasi 30 hari.
- DTG: Direct to Garment — alternatif DTF, tidak dipakai default seeder.
- Fulfillment: Seluruh proses paid → shipped.
- Guest checkout: Order tanpa registrasi akun.
- Heat press: Mesin press DTF ke kaos.
- Komerce: RajaOngkir API platform terbaru.
- Line item: Satu baris produk dalam order (OrderItem).
- Middleware install.guest: Hanya allow /install jika belum installed.
- Minimum order: POD = 1 pcs, tidak ada MOQ platform.
- OPcache: PHP cache — rekomendasi production performance.
- Payment confirmation: Record bukti transfer manual pending/verified/rejected.
- Print scale: Persen ukuran desain di editor — affect scale pricing.
- Reprint: Cetak ulang karena QC fail — cost internal toko.
- Royalty: Bagian seller dari harga jual desain marketplace.
- Safe area: Garis batas area cetak di editor mockup.
- Sandbox Tripay: Mode test tanpa uang riil.
- Schedule runner: Cron artisan schedule:run untuk reminder & sync.
- Section permission: Key STAFF_PERMISSIONS: orders, products, dll.
- Store profile: Setting nama/phone/email toko global.
- Thermal mug: Magic mug coating bunglon.
- Webhook: HTTP callback POST dari Tripay ke aplikasi.