๐Ÿฝ๏ธ FoodScan Docs Beli Source Code
๐Ÿ“–
v2.0 ยท Juni 2026

Dokumentasi FoodScan

Panduan lengkap dari setup pertama sampai operasional harian โ€” QR Menu, POS, KDS, Inventory, Loyalty, Expense Tracking, Payroll, P&L, AI BYOK, SaaS Multi-Tenant.

๐Ÿ“– Pengantar

FoodScan adalah Restaurant Operating System modern all-in-one. Dari QR menu sampai laporan keuangan, satu sistem terintegrasi.

๐Ÿ“ฑ
QR Menu + Contactless Order
Scan, browse, pesan dari HP โ€” tanpa install aplikasi
๐Ÿ’ณ
POS + Multi-Pembayaran
Cash, QRIS, EDC, e-wallet, FoodScan Wallet
๐Ÿณ
KDS Realtime
Reverb broadcast โ€” dapur terima order langsung
๐Ÿ“ฆ
Inventory + Resep + HPP
Auto-deduct stok saat order dibayar
๐Ÿ’ฐ
Expense + Payroll + Laba Rugi
Pengeluaran, komisi karyawan, P&L bottom-line
๐Ÿค–
AI BYOK (Bawa Key Sendiri)
Demand forecast, translate, chatbot, sentiment
๐Ÿ’ผ
SaaS Multi-Tenant Ready
Subdomain provisioning + billing engine
๐Ÿ”
Programmatic SEO
Auto-generated long-tail landing pages
48
Menu Admin
22
Halaman Laporan
103
Tabel Database
230+
Route

๐Ÿ—‚๏ธ Struktur Menu Admin

Semua menu di panel admin dikelompokkan berdasarkan alur bisnis. Setiap menu punya icon Heroicon unik dan label bahasa Indonesia.

GroupMenuJenis
๐Ÿช RestoranOutlet, Meja & QRResource
๐Ÿฝ๏ธ MenuKategori, Item, Modifier, Jadwal MenuResource
๐Ÿ“ฆ PesananPesanan, Order Aggregator, RefundResource
๐Ÿ›Ž๏ธ ReservasiReservasi, WaitlistResource
๐Ÿ‘ฅ Customer & LoyaltyCustomer, Review, Promo, VoucherResource
๐Ÿ“ฆ InventorySupplier, Bahan Baku, Resep, Wastage, POResource
๐Ÿ‘จโ€๐Ÿณ StaffKaryawan, Shift, AbsensiResource
๐Ÿ’ฐ KeuanganLaba Rugi, Laporan Pengeluaran, Pengeluaran, Laporan Pajak, HPP & Margin, Cash Flow Forecast, Payroll, Revenue Split, Ambil Gaji, EOD ReconciliationPage + Resource
๐Ÿ“Š AnalyticsPeak Hours, Menu Engineering, Upsell, RFM, Staff Perf, Churn, Cohort, InvestorPage
๐Ÿ’Œ MarketingBirthday Campaign, Win-Back, Drip CampaignResource
๐ŸŽฎ GamifikasiChallenge, Affiliate, Meal PlanResource
๐Ÿญ OperasionalCatering Order, Corporate Account, Panggilan WaiterResource
๐ŸŒ EkosistemDelivery ZoneResource
๐Ÿค– AI ProviderDemand Forecast, Chatbot Config, Chat History, Provider, Model, Feature Mapping, Dynamic Pricing Rule, Waste PredictionPage + Resource
๐Ÿ’ผ SaaSPlan, Tenant, Subscription, Invoice, Usage MetricResource
๐Ÿ”Œ HardwareThermal PrinterPage
โš™๏ธ SettingsLaporan, Webhook, API Key, User, SettingsPage + Resource

Total: 48 Resource + 22 Custom Page = 70 menu di sidebar admin.

๐Ÿš€ Setup Pertama Kali

Prasyarat

  • PHP 8.2+, MySQL 8+, Composer 2+, Node 18+
  • Laragon (Windows) atau LAMP/LEMP (Linux)
  • Browser modern (Chrome, Edge, Firefox)

Install Dependencies

cd foodscan
composer install
npm install
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan db:seed
php artisan storage:link
php artisan filament:assets

Konfigurasi Database

Edit .env:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=sq_food_scan
DB_USERNAME=root
DB_PASSWORD=

APP_URL=http://localhost:8000
APP_LOCALE=id
APP_TIMEZONE=Asia/Jakarta

BROADCAST_CONNECTION=reverb
QUEUE_CONNECTION=database

Jalankan Server

Buka 3 terminal:

Terminal 1 โ€” Web server:

php artisan serve

Terminal 2 โ€” Queue worker:

php artisan queue:work

Terminal 3 โ€” Reverb (KDS realtime):

php artisan reverb:start

๐Ÿ” Akun & Login

Akun Demo (sudah ter-seed)

RoleEmailPasswordAkses
Super Adminadmin@foodscan.testpasswordSemua fitur, AI Provider, SaaS
Managermanager@foodscan.testpasswordMenu, staff, laporan
Kasircashier@foodscan.testpasswordPOS + bayar pesanan
Kitchenkitchen@foodscan.testpasswordKDS

URL Login

๐Ÿช Setup Restoran

A. Edit Outlet

Sidebar ๐Ÿช Restoran โ†’ Outlet โ†’ klik outlet โ†’ tab General:

  • Nama, alamat, telepon, email
  • Jam operasional per hari
  • Konfigurasi pajak (PPN 11%, service 5%)
  • Kategori masakan (untuk pSEO + filter)
  • Logo + foto cover
  • Kemampuan: dine-in, takeaway, delivery, reservasi

B. Meja + Generate QR

Sidebar ๐Ÿช Restoran โ†’ Meja โ†’ Tambah:

  • Kode: T-09
  • Kapasitas: 4
  • Section: Indoor / Outdoor / VIP
  • QR token auto-generate (40 karakter random)

Di list Meja, ada 4 aksi per baris:

  • ๐Ÿ‘๏ธ Preview QR โ€” modal preview QR + URL menu
  • โฌ‡๏ธ Download SVG โ€” file qr-{outlet}-meja-{kode}.svg
  • ๐Ÿ–จ๏ธ Print QR โ€” buka tab baru, auto-print
  • ๐Ÿ“‹ Copy URL Menu โ€” salin URL ke clipboard

Bulk pilih โ†’ Print QR Sheet โ†’ 1 halaman A4 semua QR + label meja.

๐Ÿ“ฑ Customer (QR Order)

Flow Customer di Meja

  1. Scan QR meja โ†’ buka /menu/{slug}?t={token}
  2. Browse menu per kategori, cari
  3. Tap โค๏ธ simpan favorit (login dulu)
  4. Tap item โ†’ pilih variasi/modifier โ†’ tambah ke keranjang
  5. Tap keranjang โ†’ review โ†’ pilih metode bayar:
    • Tunai di kasir (default)
    • FoodScan Wallet (saldo cukup)
    • QRIS
  6. Apply kode promo (opsional) + tip (0/5/10/15/20%)
  7. Pesan โ†’ diarahkan ke halaman tracking status 6-langkah

Tipe Pesanan

TipeDeteksiCatatan
dine_inScan QR mejaOtomatis attach table_id
takeawayBuka /menu/{slug} tanpa ?t=โ€”
deliveryPilih di keranjang + alamat tersimpanLogin dulu

Dashboard Akun

Login โ†’ /account:

  • ๐Ÿ‘ค Profil โ€” edit nama, telepon, bahasa, password
  • ๐Ÿ“ฆ Pesanan โ€” riwayat, reorder 1-klik, beri ulasan
  • โญ Poin Loyalty โ€” saldo + tangga tier + riwayat
  • ๐Ÿ’ณ Wallet โ€” saldo + topup (preset Rp 50rbโ€“2jt)
  • ๐Ÿ—“๏ธ Reservasi โ€” daftar reservasi
  • โค๏ธ Favorit โ€” item & resto disukai
  • ๐Ÿ“ Alamat โ€” address book untuk delivery

๐Ÿ’ต POS & Pembayaran

Flow Kasir

  1. Login cashier@foodscan.test โ†’ ๐Ÿ“ฆ Pesanan โ†’ Pesanan filter status pending
  2. Klik baris pesanan โ†’ tombol ๐Ÿ’ต Bayar
  3. Form:
    • Metode: ketik bebas (tunai, qris, edc_bca, gopay, dll.)
    • Jumlah: auto-isi dari total
    • Referensi: opsional
  4. Submit โ†’ event OrderPaid โ†’ 4 listener otomatis:
    • Kurangi stok bahan (resep โ†’ ingredient)
    • Tambah poin loyalty (ร— multiplier tier)
    • Kirim notifikasi ke customer
    • Trigger webhook outbound
  5. Auto-redirect ke struk โ†’ tombol ๐Ÿ–จ๏ธ Cetak Struk

Distribusi Tip

Kalau customer kasih tip, klik ๐Ÿ’ Bagi Tip di detail pesanan โ†’ pilih karyawan โ†’ split otomatis.

Refund

Sidebar ๐Ÿ“ฆ Pesanan โ†’ Refund โ†’ pilih pembayaran + jumlah + alasan. Workflow: pending โ†’ approve โ†’ process.

๐Ÿณ Kitchen Display (KDS)

Login kitchen@foodscan.test โ†’ buka /kds.

Layout 3 Kolom Kanban

โณ Antrian๐Ÿ”ฅ Sedang Dimasakโœ… Siap Antar
Pesanan baruSedang dikerjakanSiap diantar

Fitur

  • Filter stasiun: ๐ŸŒ Semua / ๐Ÿณ Kitchen / ๐Ÿน Bar
  • Info per kartu: nomor pesanan, meja, item ร— qty, instruksi khusus
  • Waktu berlalu โ†’ merah + animasi shimmer kalau >20 menit
  • Tombol: Mulai Masak โ†’ Siap Antar โ†’ Sudah Diantar
  • Polling 30 detik + Reverb realtime push + audio ping pesanan baru

๐Ÿ›Ž๏ธ Reservasi

Customer Booking

Buka /reservasi:

  • Pilih outlet, tanggal, jam (min 2 jam advance)
  • Jumlah tamu: 1/2/4/6/8/10
  • Nama, telepon, email auto-isi (jika login)
  • Catatan khusus

Manager Konfirmasi

Sidebar ๐Ÿ›Ž๏ธ Reservasi โ†’ filter "hari ini" atau "mendatang":

  • Konfirmasi (pending โ†’ confirmed)
  • Tamu Datang (confirmed โ†’ seated)
  • Batal (any โ†’ cancelled)

โญ Loyalty & Wallet

Tier Ladder

TierMin Belanja/TahunMultiplier Poin
๐Ÿฅ‰ BronzeRp 01.00ร—
๐Ÿฅˆ SilverRp 1jt1.25ร—
๐Ÿฅ‡ GoldRp 5jt1.50ร—
๐Ÿ’Ž PlatinumRp 15jt2.00ร—

Perolehan Poin

Otomatis saat OrderPaid. Formula: poin = floor(subtotal ร— rate ร— multiplier_tier)

Rate default 0.001 (1 poin per Rp 1.000). Configurable di โš™๏ธ Settings โ†’ Loyalty.

Welcome Bonus

Customer baru otomatis dapat 100 poin saat daftar.

Referral

URL: /register?ref=ABC12345. Referrer dapat reward 200 poin setelah referred customer order pertama.

Wallet Topup

Customer: /account/wallet โ†’ pilih jumlah โ†’ pilih metode (Transfer Bank / QRIS / GoPay / OVO / DANA).

Bayar pakai wallet: di keranjang pilih FoodScan Wallet โ†’ saldo cukup โ†’ langsung paid + saldo terpotong.

๐Ÿ“ฆ Inventory & Resep

Master Data

  • Supplier โ€” data vendor
  • Bahan Baku โ€” nama, unit, stok saat ini, level reorder, harga per unit
  • Resep โ€” link item menu ke bahan baku + jumlah pemakaian
  • Wastage โ€” log pemborosan dengan alasan
  • Purchase Order โ€” PO ke supplier

Auto-Deduct Saat Order Dibayar

Listener DeductIngredientStock otomatis:

  1. Loop item pesanan
  2. Cari resep untuk item
  3. Kurangi ingredient.current_stock sebesar qty ร— order qty
  4. Insert Stock record (type=sale, reference=Order)

Notifikasi Stok Rendah

Job CheckLowStock tiap hari jam 8 pagi โ€” cari bahan dengan stok โ‰ค reorder level โ†’ notifikasi ke admin.

๐Ÿ‘จโ€๐Ÿณ Staff & Shift

Karyawan

Sidebar ๐Ÿ‘จโ€๐Ÿณ Staff โ†’ Karyawan โ†’ Tambah: link ke User, posisi (kasir/waiter/dapur/manager/chef/dll.), tarif per jam, komisi per item (Rp), tanggal mulai.

Shift

Sub-menu Shift: buka shift dengan saldo awal โ†’ tutup shift dengan saldo akhir โ†’ selisih auto-kalkulasi.

Absensi

Absensi: jam masuk / jam pulang / menit istirahat.

๐Ÿ’ณ Ringkasan Menu Keuangan

Group ๐Ÿ’ฐ Keuangan mencakup semua fitur finansial โ€” dari pengeluaran harian sampai laporan laba rugi:

MenuRouteFungsi
Laba Rugi (P&L)/admin/profit-lossRevenue - HPP - Expense - Payroll = Laba Bersih
Laporan Pengeluaran/admin/expense-reportRingkasan per kategori + per hari
Pengeluaran/admin/expensesCRUD input pengeluaran operasional
Laporan Pajak/admin/tax-reportBreakdown PPn 11% + PB1 10% per transaksi
HPP & Margin/admin/hpp-marginHPP per item vs harga jual + margin %
Cash Flow Forecast/admin/cash-flow-forecastProyeksi revenue 30 hari ke depan
Payroll/admin/payroll-processorGaji + komisi + ambil gaji + sisa gaji
Ambil Gaji/admin/payroll-advancesCatat uang muka gaji karyawan
Revenue Split/admin/revenue-split-reportBagi hasil multi-pihak
EOD Reconciliation/admin/eod-reconciliationRekonsiliasi kasir tutup hari

๐Ÿงพ Pengeluaran (Expense)

Catat semua pengeluaran operasional harian: beli bahan, listrik, sewa, gaji, dll.

Input Pengeluaran

Sidebar ๐Ÿ’ฐ Keuangan โ†’ Pengeluaran โ†’ Tambah:

  • Tanggal
  • Kategori: bebas (bahan baku, listrik, sewa, transport, dll.)
  • Deskripsi: apa yang dibeli (contoh: "Susu GREENFIELDS 2 kotak")
  • Qty + Satuan + Harga Satuan
  • Total: auto-hitung qty ร— harga satuan, atau input manual
  • Outlet: opsional, untuk filter per cabang

Laporan Pengeluaran

Sidebar ๐Ÿ’ฐ Keuangan โ†’ Laporan Pengeluaran:

  • Filter tanggal dari โ†’ sampai
  • Kartu total pengeluaran
  • Tabel per kategori: jumlah transaksi + total
  • Tabel per hari: ringkasan harian

Data expense langsung terhubung ke Laba Rugi (P&L) secara otomatis.

๐Ÿ’ธ Payroll & Komisi

Setup Komisi Karyawan

Sidebar ๐Ÿ‘จโ€๐Ÿณ Staff โ†’ Karyawan โ†’ edit โ†’ isi Komisi per Item (misal: Rp 2.000).

Contoh: karyawan jual 100 gelas kopi โ†’ komisi = 100 ร— Rp 2.000 = Rp 200.000.

Ambil Gaji (Uang Muka)

Sidebar ๐Ÿ’ฐ Keuangan โ†’ Ambil Gaji โ†’ Tambah:

  • Pilih karyawan
  • Tanggal
  • Jumlah (Rp)
  • Catatan (opsional)

Kalkulasi Payroll Bulanan

Sidebar ๐Ÿ’ฐ Keuangan โ†’ Payroll โ€” pilih bulan:

KolomSumber Data
Total JamDari tabel shift (start_at โ†’ end_at)
Qty TerjualSUM(order_items.qty) WHERE cashier_id = karyawan
KomisiQty Terjual ร— komisi_per_item
Ambil GajiSUM(payroll_advances) bulan ini
Gaji Kotor(Jam reguler ร— hourly_rate) + (Jam lembur ร— hourly_rate ร— overtime_rate) + Komisi
Sisa GajiGaji Kotor โˆ’ Ambil Gaji

๐Ÿ“Š Laba Rugi (P&L)

Sidebar ๐Ÿ’ฐ Keuangan โ†’ Laba Rugi (P&L). Laporan bottom-line menggabungkan semua data:

+ Pendapatan (Revenue)dari orders (completed)
โˆ’ HPP (Harga Pokok)qty ร— cost_price dari resep
= Laba Kotor
โˆ’ Diskondiscount_amount
โˆ’ Pengeluarandari tabel expenses
โˆ’ Ambil Gajidari tabel payroll_advances
= Laba Bersih

Fitur

  • Filter tanggal dari โ†’ sampai
  • 5 kartu stat di atas: Pendapatan, HPP, Laba Kotor, Pengeluaran, Gaji
  • 3 kartu besar: Total Pesanan + Revenue, Laba Kotor + Margin %, Laba Bersih + Margin %
  • Tabel detail harian: revenue, HPP, laba kotor, pengeluaran, gaji, laba bersih โ€” per hari

๐Ÿ”’ EOD Reconciliation

Sidebar ๐Ÿ’ฐ Keuangan โ†’ EOD Reconciliation. Tutup hari kasir:

  1. Pilih outlet + tanggal
  2. Sistem tampilkan: total pesanan, revenue kotor, diskon, refund, pajak, service charge, breakdown per metode bayar, ekspektasi kas
  3. Kasir input Uang Tunai Aktual di laci
  4. Klik Tutup Hari Ini โ†’ sistem simpan EOD record + hitung selisih

๐Ÿ“ˆ Laporan Lainnya

Laporan Penjualan

Sidebar โš™๏ธ Settings โ†’ Laporan โ€” filter tanggal:

  • Revenue total, total pesanan, rata-rata nilai pesanan
  • Revenue per hari (tabel)
  • Top 10 menu (qty + revenue)
  • Breakdown per metode bayar
  • Top 10 customer LTV

Laporan Pajak

๐Ÿ’ฐ Keuangan โ†’ Laporan Pajak: PPn 11% dan PB1 10% per transaksi. Siap export untuk laporan pajak bulanan.

HPP & Margin

๐Ÿ’ฐ Keuangan โ†’ HPP & Margin: kalkulasi HPP per item dari resep + harga bahan baku terkini. Tampilkan margin % tiap item.

Cash Flow Forecast

๐Ÿ’ฐ Keuangan โ†’ Cash Flow Forecast: proyeksi revenue 30 hari ke depan berdasarkan rata-rata per hari-dalam-minggu dari 8 minggu terakhir.

Investor Dashboard

๐Ÿ“Š Analytics โ†’ Investor Dashboard: MRR, growth vs bulan lalu, top 10 item, grafik revenue 6 bulan. Cocok untuk presentasi ke investor.

๐Ÿค– AI Provider (BYOK โ€” Bawa Key Sendiri)

Anti-pattern: tidak ada hardcode provider, model, atau API key. Semua input user sendiri.

Setup Provider

  1. Sidebar ๐Ÿค– AI Provider โ†’ Provider โ†’ Tambah
  2. Isi:
    • Nama: bebas ("OpenAI Saya", "DeepSeek Murah", "Local Ollama")
    • Format API: openai_compatible / anthropic / gemini
    • Base URL: bebas โ€” https://api.openai.com/v1, http://localhost:11434/v1, dll.
    • API Key: paste, otomatis terenkripsi
  3. Model โ†’ tambah model dengan model_id bebas + harga
  4. Feature Mapping โ†’ assign provider untuk fitur apa:
    • demand_forecast โ€” prediksi permintaan
    • translate โ€” terjemahan menu
    • sentiment โ€” analisis ulasan
    • seo_content โ€” generate konten pSEO

Format Adapter

FormatCocok untuk
openai_compatibleOpenAI, DeepSeek, Groq, Mistral, Together, Fireworks, OpenRouter, xAI, Ollama, LM Studio, vLLM, Cerebras โ€” 20+ provider
anthropicAnthropic Claude
geminiGoogle Gemini

AI Demand Forecast

๐Ÿค– AI Provider โ†’ Demand Forecast โ†’ pilih outlet โ†’ Generate. AI prediksi 7 hari ke depan.

AI Translate Menu

Edit item โ†’ klik ๐ŸŒ Translate via AI โ†’ auto-isi nama + deskripsi bahasa Inggris (cache 7 hari).

๐Ÿ’ฌ AI Chatbot (RAG)

Chatbot mengambang di semua halaman storefront. AI menjawab berdasarkan data nyata dari database (RAG โ€” Retrieval-Augmented Generation), bukan halusinasi.

Cara Kerja

  1. Customer ketik pertanyaan di widget chat
  2. Sistem ambil data dari DB: info outlet, daftar item & harga, FAQ owner, riwayat pesanan customer
  3. Data + pertanyaan dikirim ke AI Provider
  4. AI jawab berdasarkan data nyata
  5. Bot bisa sarankan item โ†’ klik langsung tambah ke keranjang

Setup Chatbot

  1. ๐Ÿค– AI Provider โ†’ Chatbot Config
  2. Set nama bot, persona, FAQ
  3. Pilih AI Provider dari dropdown
  4. Toggle aktif โ†’ simpan

Histori Chat

๐Ÿค– AI Provider โ†’ Chat History โ€” lihat percakapan lengkap per customer. Berguna untuk quality control.

๐Ÿ’Œ Marketing Automation

Tiga jenis campaign berjalan otomatis via Scheduler โ€” tanpa trigger manual.

1. Birthday Campaign (Tiap Hari 08:00)

Auto kirim voucher ke customer yang berulang tahun bulan ini. Setup: ๐Ÿ’Œ Marketing โ†’ Birthday Campaign.

2. Win-Back Campaign (Tiap Hari 09:30)

Target customer tidak order >30 hari. Auto-buat voucher tarik balik. Setup: ๐Ÿ’Œ Marketing โ†’ Win-Back Campaign โ€” set threshold hari, diskon, minimum order.

3. Drip Campaign (Tiap Hari 10:00)

Email sequence berdasarkan 5 trigger: register, first_order, inactive_7d, inactive_14d, birthday_month. Setup: ๐Ÿ’Œ Marketing โ†’ Drip Campaign.

๐ŸŽฎ Gamifikasi & Streak

Streak Order

Customer order setiap hari berturut-turut โ†’ multiplier poin naik. Setiap 5 hari streak = +0.1 (max 2.0ร—). Skip 1 hari = reset ke 1.

Challenges (Tantangan)

Setup: ๐ŸŽฎ Gamifikasi โ†’ Challenge โ€” 4 tipe target:

  • order_count โ€” selesaikan X pesanan
  • spend_amount โ€” total belanja Rp X
  • streak_days โ€” streak X hari
  • try_categories โ€” coba X kategori berbeda

Reward: loyalty points. Evaluasi otomatis setiap ada pesanan baru.

Leaderboard

Customer bisa toggle tampil di leaderboard dari profil. Owner lihat top spender di Analytics.

๐Ÿ“Š RFM Segmentation & Churn

RFM Scoring

Sistem otomatis menilai setiap customer 1โ€“5:

DimensiScore 5Score 1
R โ€” RecencyOrder โ‰ค7 hari lalu>60 hari lalu
F โ€” Frequencyโ‰ฅ10 order0 order
M โ€” Monetaryโ‰ฅRp 5 juta<Rp 100rb

Segmen: champions, loyal, at_risk, cant_lose, new_customers, lost, promising.

Lihat: ๐Ÿ“Š Analytics โ†’ RFM Segmentation. Klik "Recalculate" untuk update manual.

Churn Dashboard

๐Ÿ“Š Analytics โ†’ Churn Dashboard. Tiga grup risiko: ๐ŸŸข Safe (>60), ๐ŸŸ  At Risk (30โ€“60), ๐Ÿ”ด Churned (<30). Bisa langsung arahkan ke Win-Back Campaign.

๐Ÿ’ฐ Dynamic Pricing & A/B Test

Dynamic Pricing

Harga item naik/turun otomatis berdasarkan kondisi: peak hours, hari tertentu, stok rendah.

Setup: ๐Ÿค– AI Provider โ†’ Dynamic Pricing Rule โ€” pilih outlet โ†’ condition type โ†’ multiplier (1.2 = +20%, 0.9 = -10%).

A/B Testing

Test dua versi item (nama, harga, foto) bersamaan. Setup: ๐Ÿ“Š Analytics โ†’ A/B Test โ€” pilih item โ†’ isi Variant B โ†’ aktifkan. Hasil: impressions A/B, conversions A/B, conversion rate, winner otomatis.

๐Ÿค Affiliate, Split Bill & Meal Plan

Affiliate Program

Link referral untuk influencer: /ref/{kode}. Setup: ๐ŸŽฎ Gamifikasi โ†’ Affiliate โ€” set nama, komisi %, kode unik 8 karakter.

Split Bill

Satu meja patungan โ€” tiap orang bayar item masing-masing. URL: /split-bill/{orderId}. Assign item ke nama โ†’ submit โ†’ total per orang.

Meal Plan Subscription

Langganan paket makan harian/mingguan. Setup: ๐ŸŽฎ Gamifikasi โ†’ Meal Plan โ€” pilih customer, hari, jam, harga per makan. Order dibuat otomatis setiap pagi jam 07:00.

๐Ÿ”” Order Tracking & Review Gate

Order Tracking Real-Time

URL: /track/{token}. Status stepper: Confirmed โ†’ Preparing โ†’ Ready โ†’ Served โ†’ Completed. Auto-update setiap 5 detik.

Review Gate

Saat status Completed: customer beri bintang 1โ€“5.

  • โ‰ฅ4 bintang โ†’ redirect ke Google Review outlet (boost rating Google)
  • <4 bintang โ†’ form feedback internal โ€” owner bisa baca & follow-up

Setup: edit Outlet โ†’ isi Google Review URL.

๐Ÿ“บ Digital Signage & Kiosk

Digital Signage (TV)

URL: /signage/{slug}. Buka di browser TV โ†’ F11 fullscreen. Item berganti otomatis tiap 8 detik (animasi fade). Promo berjalan di ticker bawah.

Self-Order Kiosk (Tablet)

URL: /menu/{slug}?table=X. Layout fullscreen, no navigation. 3 menit idle โ†’ auto-reset ke halaman awal.

๐Ÿข Corporate & Catering + Delivery

Corporate Account

Untuk perusahaan yang rutin order besar โ€” sistem kredit, bayar akhir bulan. ๐Ÿญ Operasional โ†’ Corporate Account.

Catering Order

Order event/akad dengan DP tracking. ๐Ÿญ Operasional โ†’ Catering Order โ€” isi klien, tanggal event, item, DP, jatuh tempo. remainingBalance() otomatis.

Delivery Zone

๐ŸŒ Ekosistem โ†’ Delivery Zone โ€” atur zona per outlet: nama, radius km, biaya kirim, minimum order, estimasi menit.

๐Ÿ’ผ SaaS Multi-Tenant

๐Ÿ’ก
Harga SaaS โ‰  Harga Standalone

Standalone = beli source code sekali bayar. SaaS = pelanggan bayar bulanan ke kamu. Satu codebase, dua model bisnis.

Harga Standalone (Source Code)

TierHargaYang Didapat
Self-Host LiteRp 2,9 jtSource code ยท 1 outlet ยท update 1 tahun
Self-Host ProRp 7,9 jtSource code ยท 5 outlet ยท update 2 tahun
Self-Host EnterpriseRp 19 jtUnlimited outlet ยท update seumur hidup ยท hak custom branding
SaaS EditionRp 40 jtMulti-tenant ยท billing engine ยท tenant provisioning ยท lifetime update

Mode Standalone vs SaaS (Teknis)

  • Standalone: LICENSE_MODE=standalone โ€” tidak ada deteksi tenant, tenant_id nullable
  • SaaS: LICENSE_MODE=saas โ€” ResolveTenant middleware detect via subdomain/domain/header, TenantScope filter semua query

Menu SaaS

Sidebar ๐Ÿ’ผ SaaS: Plans (tier harga), Tenants (pelanggan), Subscriptions (status langganan), Invoices (tagihan), Usage Metrics (pemakaian per tenant).

๐Ÿ” Programmatic SEO

Route Patterns

URLContoh
/restaurantsDirektori semua outlet
/r/{city}/r/jakarta
/r/{city}/{cuisine}/r/jakarta/indonesia
/best-{cuisine}-in-{city}/best-indonesian-in-jakarta
/{dish}-near-me/nasi-goreng-near-me
/compare/{a}-vs-{b}Perbandingan dua outlet

Setiap halaman punya: JSON-LD schema (LocalBusiness/ItemList/FAQPage), full meta tags, konten 300+ kata unik, auto-included di /sitemap.xml.

๐Ÿช Webhook & API

Webhook

โš™๏ธ Settings โ†’ Webhook: URL target, pilih event (order.paid, *), secret untuk HMAC signature. Delivery log + retry.

API Key

โš™๏ธ Settings โ†’ API Key: nama + abilities (orders.read, customers.write) + expires_at. Raw key tampil 1ร— saja.

๐Ÿ› ๏ธ Troubleshooting

KDS Kosong

Filter stasiun terlalu sempit โ†’ klik ๐ŸŒ Semua. Pastikan item pesanan berstatus pending/preparing/ready.

Receipt PDF Error

php artisan storage:link
chmod -R 775 storage   # Linux only

Reverb Tidak Konek

Cek port 8080 tidak diblok firewall. Set REVERB_HOST=127.0.0.1 di .env.

Filament Panel Blank

php artisan filament:assets
php artisan view:clear
composer dump-autoload

Query Lambat Data 10rb+

Index sudah ada di kolom yang sering di-query. Jalankan php artisan optimize untuk production.

๐Ÿ“ธ Fitur Lengkap โ€” Screenshot Tiap Menu

Berikut screenshot setiap menu di admin panel โ€” 67 halaman lengkap dikelompokkan sesuai alur bisnis. Klik gambar untuk zoom.

๐Ÿ“Š Dashboard

admin/dashboard
Dashboard utama dengan 7 widget realtime: Statistik Overview (pendapatan hari ini, order aktif, customer baru), Revenue Chart (grafik penjualan harian/mingguan/bulanan), Top Items (menu terlaris), Recent Orders (pesanan terbaru), Pending Approvals (transaksi perlu approval), dan shortcut POS. Semua widget auto-refresh tiap 30 detik via Livewire polling.
๐Ÿ” Klik untuk zoom

Dashboard utama dengan 7 widget realtime: Statistik Overview (pendapatan hari ini, order aktif, customer baru), Revenue Chart (grafik penjualan harian/mingguan/bulanan), Top Items (menu terlaris), Recent Orders (pesanan terbaru), Pending Approvals (transaksi perlu approval), dan shortcut POS. Semua widget auto-refresh tiap 30 detik via Livewire polling.

๐Ÿช Restoran

admin/outlets
Kelola semua cabang restoran Anda dari satu panel. Setiap outlet punya nama, alamat lengkap, jam operasional, logo, cover image, koordinat GPS, konfigurasi pajak (tax rate + service charge), cuisine types, dan flag accepts (dine-in, takeaway, delivery, reservation). Support multi-currency per outlet.
๐Ÿ” Klik untuk zoom

Kelola semua cabang restoran Anda dari satu panel. Setiap outlet punya nama, alamat lengkap, jam operasional, logo, cover image, koordinat GPS, konfigurasi pajak (tax rate + service charge), cuisine types, dan flag accepts (dine-in, takeaway, delivery, reservation). Support multi-currency per outlet.

admin/tables
Manajemen meja restoran lengkap dengan QR code generator. Setiap meja punya kode unik, kapasitas, section (Indoor/Outdoor/VIP), dan status realtime (available/occupied/reserved). QR code di-generate otomatis
๐Ÿ” Klik untuk zoom

Manajemen meja restoran lengkap dengan QR code generator. Setiap meja punya kode unik, kapasitas, section (Indoor/Outdoor/VIP), dan status realtime (available/occupied/reserved). QR code di-generate otomatis โ€” tempel di meja, customer scan untuk akses menu digital. Support multi-floor plan.

๐Ÿฝ๏ธ Menu

admin/categories
Kategori menu untuk grouping item
๐Ÿ” Klik untuk zoom

Kategori menu untuk grouping item โ€” Makanan, Minuman, Snack, Dessert, dll. Setiap kategori punya icon emoji, nama multilingual (ID/EN), sort order, dan jadwal tampil. Kategori bisa di-schedule untuk muncul hanya di jam tertentu (breakfast, lunch, dinner).

admin/items
Master data item menu dengan fitur lengkap: nama multilingual, deskripsi, SKU, harga dasar + compare-at price (coret), foto + gallery, dietary tags (halal, vegan, gluten-free, allergens), level pedas (0-3), estimasi waktu masak (prep time), status 86 (habis), featured item, dan available hours. Item bisa di-assign ke outlet spesifik.
๐Ÿ” Klik untuk zoom

Master data item menu dengan fitur lengkap: nama multilingual, deskripsi, SKU, harga dasar + compare-at price (coret), foto + gallery, dietary tags (halal, vegan, gluten-free, allergens), level pedas (0-3), estimasi waktu masak (prep time), status 86 (habis), featured item, dan available hours. Item bisa di-assign ke outlet spesifik.

admin/modifiers
Modifier Group untuk variasi item: pilih max/min opsi, required/optional. Contoh: Level Pedas (Tidak Pedas, Sedang, Pedas, Sangat Pedas), Extra Topping (Keju, Telur, Daging), Pilihan Ukuran (Small, Medium, Large). Satu modifier group bisa di-attach ke banyak item sekaligus.
๐Ÿ” Klik untuk zoom

Modifier Group untuk variasi item: pilih max/min opsi, required/optional. Contoh: Level Pedas (Tidak Pedas, Sedang, Pedas, Sangat Pedas), Extra Topping (Keju, Telur, Daging), Pilihan Ukuran (Small, Medium, Large). Satu modifier group bisa di-attach ke banyak item sekaligus.

admin/schedules
Jadwal tampil menu per hari & jam. Atur item mana yang muncul di menu breakfast (06:00-10:00), lunch (11:00-14:00), dinner (17:00-22:00). Support hari spesifik (Senin-Jumat vs Weekend). Item yang tidak masuk jadwal otomatis hidden dari menu QR customer.
๐Ÿ” Klik untuk zoom

Jadwal tampil menu per hari & jam. Atur item mana yang muncul di menu breakfast (06:00-10:00), lunch (11:00-14:00), dinner (17:00-22:00). Support hari spesifik (Senin-Jumat vs Weekend). Item yang tidak masuk jadwal otomatis hidden dari menu QR customer.

๐Ÿ“ฆ Pesanan

admin/orders
Daftar semua order dari berbagai channel: QR scan, POS kasir, aggregator (GoFood/GrabFood), Web, dan API. Tabel menampilkan order number, tipe (dine-in/takeaway/delivery), status (pendingโ†’paidโ†’preparingโ†’readyโ†’servedโ†’completed), total, customer, dan timestamp. Filter by status, tanggal, outlet, dan source. Bisa klik detail untuk lihat item, pembayaran, history status.
๐Ÿ” Klik untuk zoom

Daftar semua order dari berbagai channel: QR scan, POS kasir, aggregator (GoFood/GrabFood), Web, dan API. Tabel menampilkan order number, tipe (dine-in/takeaway/delivery), status (pendingโ†’paidโ†’preparingโ†’readyโ†’servedโ†’completed), total, customer, dan timestamp. Filter by status, tanggal, outlet, dan source. Bisa klik detail untuk lihat item, pembayaran, history status.

admin/aggregator
Integrasi order dari platform aggregator: GoFood, GrabFood, ShopeeFood. Order masuk otomatis dengan format standar
๐Ÿ” Klik untuk zoom

Integrasi order dari platform aggregator: GoFood, GrabFood, ShopeeFood. Order masuk otomatis dengan format standar โ€” nama item, qty, harga, customer info. Bisa accept/reject, update status preparingโ†’ready, dan sync status balik ke platform aggregator. Satu dashboard untuk semua channel.

admin/refunds
Manajemen refund & void order. Staff bisa ajukan refund dengan alasan (customer request, wrong item, quality issue), atur nominal, dan approval workflow (pendingโ†’approvedโ†’rejectedโ†’processed). Support partial refund. History refund tercatat lengkap dengan timestamp approver.
๐Ÿ” Klik untuk zoom

Manajemen refund & void order. Staff bisa ajukan refund dengan alasan (customer request, wrong item, quality issue), atur nominal, dan approval workflow (pendingโ†’approvedโ†’rejectedโ†’processed). Support partial refund. History refund tercatat lengkap dengan timestamp approver.

๐Ÿ›Ž๏ธ Reservasi

admin/list
Kelola booking meja dari customer. Setiap reservasi tercatat: nama customer, kontak, jumlah tamu, meja yang dipilih, jam reservasi, durasi, dan status (pendingโ†’confirmedโ†’seatedโ†’completed / no-show / cancelled). Support sumber reservasi: web, telepon, walk-in. View kalender untuk lihat okupansi per hari.
๐Ÿ” Klik untuk zoom

Kelola booking meja dari customer. Setiap reservasi tercatat: nama customer, kontak, jumlah tamu, meja yang dipilih, jam reservasi, durasi, dan status (pendingโ†’confirmedโ†’seatedโ†’completed / no-show / cancelled). Support sumber reservasi: web, telepon, walk-in. View kalender untuk lihat okupansi per hari.

๐Ÿ‘ฅ Customer & Loyalty

admin/list
Database pelanggan dengan profil lengkap: nama, kontak, tanggal lahir, gender, loyalty tier (Bronze/Silver/Gold/Platinum), total spending, total order, poin balance, streak days, dan churn score. Support segmentasi RFM (Recency, Frequency, Monetary) otomatis. Bisa lihat riwayat order per customer.
๐Ÿ” Klik untuk zoom

Database pelanggan dengan profil lengkap: nama, kontak, tanggal lahir, gender, loyalty tier (Bronze/Silver/Gold/Platinum), total spending, total order, poin balance, streak days, dan churn score. Support segmentasi RFM (Recency, Frequency, Monetary) otomatis. Bisa lihat riwayat order per customer.

admin/reviews
Review & rating dari customer. Tiap review terhubung ke outlet, item, dan customer. Rating bintang 1-5, komentar teks, status verified (berdasarkan order asli), dan status publish. Bisa filter by rating, item, outlet, dan rentang tanggal. Review ditampilkan di halaman publik untuk social proof.
๐Ÿ” Klik untuk zoom

Review & rating dari customer. Tiap review terhubung ke outlet, item, dan customer. Rating bintang 1-5, komentar teks, status verified (berdasarkan order asli), dan status publish. Bisa filter by rating, item, outlet, dan rentang tanggal. Review ditampilkan di halaman publik untuk social proof.

admin/promos
Engine promo lengkap: diskon persentase, flat amount, buy-one-get-one (BOGO), bundle pricing, free delivery. Setiap promo punya syarat: minimum order, maksimum diskon, user spesifik (first-order, member tier), tanggal berlaku, dan kuota pemakaian. Support stackable rules dengan prioritas.
๐Ÿ” Klik untuk zoom

Engine promo lengkap: diskon persentase, flat amount, buy-one-get-one (BOGO), bundle pricing, free delivery. Setiap promo punya syarat: minimum order, maksimum diskon, user spesifik (first-order, member tier), tanggal berlaku, dan kuota pemakaian. Support stackable rules dengan prioritas.

admin/vouchers
Generate & kelola kode voucher. Setiap voucher linked ke promo dengan batasan: max uses (total pemakaian), used count (sudah terpakai), expired date, dan status aktif/nonaktif. Bisa generate bulk voucher codes. Voucher bisa didistribusikan via email blast, WhatsApp blast, atau printed card.
๐Ÿ” Klik untuk zoom

Generate & kelola kode voucher. Setiap voucher linked ke promo dengan batasan: max uses (total pemakaian), used count (sudah terpakai), expired date, dan status aktif/nonaktif. Bisa generate bulk voucher codes. Voucher bisa didistribusikan via email blast, WhatsApp blast, atau printed card.

๐Ÿ’Œ Marketing

admin/birthday
Kampanye otomatis ultah customer. Sistem deteksi customer yang ultah dalam X hari ke depan, auto-kirim voucher diskon via email/WhatsApp/push notification. Set campaign: berapa hari sebelum ultah, berapa hari setelah, voucher validity, dan jenis diskon. Log pengiriman tercatat lengkap.
๐Ÿ” Klik untuk zoom

Kampanye otomatis ultah customer. Sistem deteksi customer yang ultah dalam X hari ke depan, auto-kirim voucher diskon via email/WhatsApp/push notification. Set campaign: berapa hari sebelum ultah, berapa hari setelah, voucher validity, dan jenis diskon. Log pengiriman tercatat lengkap.

admin/winback
Kampanye untuk menarik balik customer yang sudah lama tidak order (churn). Atur trigger: berapa hari inactive (7/14/30), jenis diskon (persentase/fixed), dan channel pengiriman. Sistem otomatis deteksi customer yang memenuhi kriteria dan kirim penawaran spesial.
๐Ÿ” Klik untuk zoom

Kampanye untuk menarik balik customer yang sudah lama tidak order (churn). Atur trigger: berapa hari inactive (7/14/30), jenis diskon (persentase/fixed), dan channel pengiriman. Sistem otomatis deteksi customer yang memenuhi kriteria dan kirim penawaran spesial.

admin/drip
Email/WhatsApp drip campaign
๐Ÿ” Klik untuk zoom

Email/WhatsApp drip campaign โ€” rangkaian pesan otomatis bertahap berdasarkan trigger event. Contoh: Welcome Series (signup โ†’ email 0h "Selamat datang" โ†’ email 24h "Coba menu kami" โ†’ email 72h "Diskon first order"). Set step: delay, message template, channel.

๐ŸŽฎ Gamifikasi

admin/challenges
Challenge & achievement system untuk engagement customer. Jenis challenge: Order Count (order X kali), Spend Amount (total belanja Rp X), Try Categories (coba X kategori berbeda), Streak Days (order X hari berturut-turut). Setiap challenge punya reward poin. Customer lihat progress & leaderboard.
๐Ÿ” Klik untuk zoom

Challenge & achievement system untuk engagement customer. Jenis challenge: Order Count (order X kali), Spend Amount (total belanja Rp X), Try Categories (coba X kategori berbeda), Streak Days (order X hari berturut-turut). Setiap challenge punya reward poin. Customer lihat progress & leaderboard.

admin/affiliates
Program affiliate/referral. Customer dapat kode referral unik, share ke teman, dapat komisi per order yang masuk via kode tersebut. Dashboard menampilkan: total clicks, total referral, total komisi, performance per affiliate. Support payout tracking.
๐Ÿ” Klik untuk zoom

Program affiliate/referral. Customer dapat kode referral unik, share ke teman, dapat komisi per order yang masuk via kode tersebut. Dashboard menampilkan: total clicks, total referral, total komisi, performance per affiliate. Support payout tracking.

๐Ÿ“ฆ Inventory

admin/suppliers
Database supplier/pemasok bahan baku. Setiap supplier punya nama, kontak person, telepon, email, alamat, payment terms, dan status aktif. Supplier linked ke purchase order untuk tracking procurement.
๐Ÿ” Klik untuk zoom

Database supplier/pemasok bahan baku. Setiap supplier punya nama, kontak person, telepon, email, alamat, payment terms, dan status aktif. Supplier linked ke purchase order untuk tracking procurement.

admin/ingredients
Master data bahan baku dapur: nama, unit (kg/gram/liter/pcs), harga beli per unit, reorder level (minimum stok sebelum alert), supplier default, dan stok terkini. Auto-deduct stok saat order item dibayar (via BOM/recipe). Low-stock alert muncul di dashboard.
๐Ÿ” Klik untuk zoom

Master data bahan baku dapur: nama, unit (kg/gram/liter/pcs), harga beli per unit, reorder level (minimum stok sebelum alert), supplier default, dan stok terkini. Auto-deduct stok saat order item dibayar (via BOM/recipe). Low-stock alert muncul di dashboard.

admin/recipes
Bill of Material (BOM)
๐Ÿ” Klik untuk zoom

Bill of Material (BOM) โ€” resep setiap item menu. Setiap resep mendaftar bahan baku yang dibutuhkan: ingredient, quantity, unit, dan biaya per porsi. Total HPP (Harga Pokok Produksi) dihitung otomatis. Digunakan untuk auto-deduct stok dan kalkulasi margin.

admin/wastages
Log pemborosan/waste bahan baku dengan alasan: expired (kadaluarsa), spilled (tumpah), burnt (gosong), spoiled (busuk), theft (hilang). Catat quantity, biaya kerugian, outlet, dan tanggal. Laporan waste membantu identifikasi pola boros dan optimasi purchasing.
๐Ÿ” Klik untuk zoom

Log pemborosan/waste bahan baku dengan alasan: expired (kadaluarsa), spilled (tumpah), burnt (gosong), spoiled (busuk), theft (hilang). Catat quantity, biaya kerugian, outlet, dan tanggal. Laporan waste membantu identifikasi pola boros dan optimasi purchasing.

admin/po
Purchase Order ke supplier. Buat PO dengan daftar item: ingredient, quantity, harga. Status PO: draftโ†’sentโ†’partial (sebagian diterima)โ†’received (lengkap). Stok otomatis bertambah saat PO diterima. History PO lengkap dengan timestamp.
๐Ÿ” Klik untuk zoom

Purchase Order ke supplier. Buat PO dengan daftar item: ingredient, quantity, harga. Status PO: draftโ†’sentโ†’partial (sebagian diterima)โ†’received (lengkap). Stok otomatis bertambah saat PO diterima. History PO lengkap dengan timestamp.

๐Ÿญ Operasional

admin/catering
Manajemen pesanan katering untuk event besar. Setiap catering order punya: corporate account, nama event, tanggal event, jumlah tamu, menu yang dipesan, total biaya, dan status (pendingโ†’confirmedโ†’preparingโ†’completed). Cocok untuk order perusahaan, wedding, workshop, seminar.
๐Ÿ” Klik untuk zoom

Manajemen pesanan katering untuk event besar. Setiap catering order punya: corporate account, nama event, tanggal event, jumlah tamu, menu yang dipesan, total biaya, dan status (pendingโ†’confirmedโ†’preparingโ†’completed). Cocok untuk order perusahaan, wedding, workshop, seminar.

admin/corporate
Akun perusahaan/klien korporat dengan fitur: nama perusahaan, kontak person, discount khusus (%), credit limit, payment terms, dan status aktif. Linked ke catering order untuk billing. Support invoice generation per corporate account.
๐Ÿ” Klik untuk zoom

Akun perusahaan/klien korporat dengan fitur: nama perusahaan, kontak person, discount khusus (%), credit limit, payment terms, dan status aktif. Linked ke catering order untuk billing. Support invoice generation per corporate account.

admin/delivery
Zona pengiriman per outlet: nama zona, radius dalam km, biaya kirim, minimum order, dan status aktif. Customer yang alamatnya di dalam zona bisa pilih delivery. Support multi-zona per outlet dengan biaya berbeda.
๐Ÿ” Klik untuk zoom

Zona pengiriman per outlet: nama zona, radius dalam km, biaya kirim, minimum order, dan status aktif. Customer yang alamatnya di dalam zona bisa pilih delivery. Support multi-zona per outlet dengan biaya berbeda.

๐Ÿ‘จโ€๐Ÿณ Staff

admin/employees
Manajemen data karyawan: nama, posisi (cashier/waiter/kitchen/chef/manager/cleaner), hourly rate, overtime rate, tanggal mulai kerja, outlet assignment, komisi per item, info bank (untuk payroll), dan status aktif. Linked ke user account untuk login.
๐Ÿ” Klik untuk zoom

Manajemen data karyawan: nama, posisi (cashier/waiter/kitchen/chef/manager/cleaner), hourly rate, overtime rate, tanggal mulai kerja, outlet assignment, komisi per item, info bank (untuk payroll), dan status aktif. Linked ke user account untuk login.

admin/shifts
Jadwal shift kerja: karyawan, tanggal, jam masuk, jam pulang, outlet. Fitur buka shift (input opening cash) dan tutup shift (input closing cash โ†’ sistem hitung variance). History shift lengkap dengan cash reconciliation.
๐Ÿ” Klik untuk zoom

Jadwal shift kerja: karyawan, tanggal, jam masuk, jam pulang, outlet. Fitur buka shift (input opening cash) dan tutup shift (input closing cash โ†’ sistem hitung variance). History shift lengkap dengan cash reconciliation.

admin/attendance
Absensi harian: karyawan clock-in (jam masuk) dan clock-out (jam pulang) per outlet. Status: present, late, absent, sick, leave. Rekapitulasi absensi per bulan untuk perhitungan gaji dan evaluasi kedisiplinan.
๐Ÿ” Klik untuk zoom

Absensi harian: karyawan clock-in (jam masuk) dan clock-out (jam pulang) per outlet. Status: present, late, absent, sick, leave. Rekapitulasi absensi per bulan untuk perhitungan gaji dan evaluasi kedisiplinan.

๐Ÿ’ฐ Keuangan

admin/expenses
Input pengeluaran operasional harian per outlet: kategori (listrik, air, gas, internet, gaji, bahan baku, transport, marketing, sewa, dll), jumlah, deskripsi, tanggal, dan bukti. Filter by kategori, outlet, dan rentang tanggal. Total expense dihitung untuk P&L report.
๐Ÿ” Klik untuk zoom

Input pengeluaran operasional harian per outlet: kategori (listrik, air, gas, internet, gaji, bahan baku, transport, marketing, sewa, dll), jumlah, deskripsi, tanggal, dan bukti. Filter by kategori, outlet, dan rentang tanggal. Total expense dihitung untuk P&L report.

admin/pl
Laporan Laba Rugi (Profit & Loss). Menampilkan: Total Revenue (dari order), Total COGS (dari BOM ร— qty terjual), Gross Profit, Operating Expenses (dari input expense), Net Profit. Filter by periode (bulanan/tahunan), outlet. Bisa export PDF.
๐Ÿ” Klik untuk zoom

Laporan Laba Rugi (Profit & Loss). Menampilkan: Total Revenue (dari order), Total COGS (dari BOM ร— qty terjual), Gross Profit, Operating Expenses (dari input expense), Net Profit. Filter by periode (bulanan/tahunan), outlet. Bisa export PDF.

admin/expense-report
Ringkasan pengeluaran per kategori dalam periode tertentu. Chart pie/bar menampilkan proporsi expense: listrik vs air vs gaji vs bahan baku vs dll. Identifikasi kategori pengeluaran terbesar untuk optimasi cost.
๐Ÿ” Klik untuk zoom

Ringkasan pengeluaran per kategori dalam periode tertentu. Chart pie/bar menampilkan proporsi expense: listrik vs air vs gaji vs bahan baku vs dll. Identifikasi kategori pengeluaran terbesar untuk optimasi cost.

admin/tax
Laporan pajak: PPN 11%, PB1 (pajak restoran), dan pajak lainnya. Menampilkan: Dasar Pengenaan Pajak (DPP), PPN Keluaran, PPN Masukan, PPN Kurang/Lebih Bayar. Data siap untuk pelaporan SPT Masa PPN.
๐Ÿ” Klik untuk zoom

Laporan pajak: PPN 11%, PB1 (pajak restoran), dan pajak lainnya. Menampilkan: Dasar Pengenaan Pajak (DPP), PPN Keluaran, PPN Masukan, PPN Kurang/Lebih Bayar. Data siap untuk pelaporan SPT Masa PPN.

admin/hpp
Analisis HPP (Harga Pokok Produksi) dan margin per item menu. Menampilkan: selling price, cost price (dari BOM), gross margin (Rp), margin percentage (%). Identifikasi item dengan margin tertinggi dan terendah untuk optimasi pricing.
๐Ÿ” Klik untuk zoom

Analisis HPP (Harga Pokok Produksi) dan margin per item menu. Menampilkan: selling price, cost price (dari BOM), gross margin (Rp), margin percentage (%). Identifikasi item dengan margin tertinggi dan terendah untuk optimasi pricing.

admin/cashflow
Proyeksi arus kas ke depan berdasarkan data historis. Chart menampilkan: Cash In (dari penjualan), Cash Out (dari expense + purchasing), Net Cash Flow per minggu/bulan. Bantu owner antisipasi defisit kas.
๐Ÿ” Klik untuk zoom

Proyeksi arus kas ke depan berdasarkan data historis. Chart menampilkan: Cash In (dari penjualan), Cash Out (dari expense + purchasing), Net Cash Flow per minggu/bulan. Bantu owner antisipasi defisit kas.

admin/eod
End-of-Day Reconciliation
๐Ÿ” Klik untuk zoom

End-of-Day Reconciliation โ€” tutup buku harian. Input: opening cash, expected cash (dari total penjualan tunai), actual cash (hasil hitung fisik). Sistem hitung variance (selisih). Catat notes dan nama kasir yang closing. History EOD tersimpan.

admin/rev-split
Revenue split
๐Ÿ” Klik untuk zoom

Revenue split โ€” bagi hasil pendapatan per channel atau per pihak. Atur aturan split: persentase per party (owner, investor, partner). Chart menampilkan breakdown revenue per channel (dine-in, takeaway, delivery, aggregator).

๐Ÿ“Š Analytics

admin/peak
Heatmap jam sibuk (peak hours) per hari dalam seminggu. Visualisasi warna intens: hijau (sepi) โ†’ merah (ramai). Identifikasi jam dan hari tersibuk untuk optimasi staffing, stok bahan, dan promo. Data 12 bulan terakhir.
๐Ÿ” Klik untuk zoom

Heatmap jam sibuk (peak hours) per hari dalam seminggu. Visualisasi warna intens: hijau (sepi) โ†’ merah (ramai). Identifikasi jam dan hari tersibuk untuk optimasi staffing, stok bahan, dan promo. Data 12 bulan terakhir.

admin/menu-eng
Menu Engineering Matrix
๐Ÿ” Klik untuk zoom

Menu Engineering Matrix โ€” klasifikasi item berdasarkan popularity (order count) vs profitability (margin). Empat kuadran: Stars (laris + margin tinggi), Puzzles (laris + margin rendah), Plowhorses (kurang laris + margin tinggi), Dogs (kurang laris + margin rendah). Panduan untuk pricing adjustment dan menu culling.

admin/upsell
Upsell Engine
๐Ÿ” Klik untuk zoom

Upsell Engine โ€” rekomendasi pasangan item yang sering dibeli bersama. Berdasarkan analisis order history: "Customer yang beli X, 70% juga beli Y". Tampilkan suggested upsell per item dengan conversion rate. Bisa langsung attach upsell ke item.

admin/rfm
RFM Segmentation
๐Ÿ” Klik untuk zoom

RFM Segmentation โ€” segmentasi customer berdasarkan Recency (kapan terakhir order), Frequency (seberapa sering order), Monetary (total spending). Klasifikasi otomatis: Champions, Loyal, Potential, At Risk, Lost. Setiap segmen dapat strategi marketing berbeda.

admin/staff-perf
Dashboard performa staff: revenue per kasir, order count per pelayan, avg prep time per kitchen, customer rating per waiter. Ranking & perbandingan antar staff. Data untuk evaluasi kinerja dan incentive calculation.
๐Ÿ” Klik untuk zoom

Dashboard performa staff: revenue per kasir, order count per pelayan, avg prep time per kitchen, customer rating per waiter. Ranking & perbandingan antar staff. Data untuk evaluasi kinerja dan incentive calculation.

admin/churn
Churn Dashboard
๐Ÿ” Klik untuk zoom

Churn Dashboard โ€” prediksi customer yang berpotensi berhenti order. Model scoring berdasarkan: days since last order, order frequency decline, spending trend. Kategorisasi: Low Risk, Medium Risk, High Risk. Trigger otomatis winback campaign untuk customer High Risk.

admin/cohort
Cohort Retention Analysis
๐Ÿ” Klik untuk zoom

Cohort Retention Analysis โ€” retensi customer per bulan registrasi. Tabel menampilkan: cohort (bulan join), retention rate bulan 1-12, dan trend penurunan. Identifikasi bulan mana yang menghasilkan customer paling loyal.

admin/investor
Dashboard khusus investor dengan KPI high-level: GMV (Gross Merchandise Volume), Revenue Growth (YoY), Customer Acquisition Cost, Customer Lifetime Value, Net Profit Margin, Burn Rate. Tampilan clean dengan chart minimalis
๐Ÿ” Klik untuk zoom

Dashboard khusus investor dengan KPI high-level: GMV (Gross Merchandise Volume), Revenue Growth (YoY), Customer Acquisition Cost, Customer Lifetime Value, Net Profit Margin, Burn Rate. Tampilan clean dengan chart minimalis โ€” cocok untuk pitch deck.

admin/abtest
A/B Testing engine untuk eksperimen harga, deskripsi, dan foto item. Set dua varian (A dan B) dengan parameter berbeda. Track: impressions (berapa kali dilihat), conversions (berapa kali dibeli), conversion rate. Statistik signifikan menentukan varian pemenang.
๐Ÿ” Klik untuk zoom

A/B Testing engine untuk eksperimen harga, deskripsi, dan foto item. Set dua varian (A dan B) dengan parameter berbeda. Track: impressions (berapa kali dilihat), conversions (berapa kali dibeli), conversion rate. Statistik signifikan menentukan varian pemenang.

๐Ÿค– AI Provider

admin/providers
Registry provider AI
๐Ÿ” Klik untuk zoom

Registry provider AI โ€” user bisa menambah provider sendiri (BYOK). Support format: OpenAI-compatible (OpenAI, DeepSeek, Groq, Ollama), Anthropic, Gemini. Setiap provider punya: nama, API base URL, API key (encrypted), default model. Test connection button. Full dynamic โ€” tidak hardcode vendor.

admin/models
Katalog model per provider. User bisa auto-fetch daftar model dari endpoint /v1/models, atau input manual. Setiap model punya: nama, provider, pricing rate (input/token & output/token), max tokens, dan capabilities (chat, image, audio, embedding).
๐Ÿ” Klik untuk zoom

Katalog model per provider. User bisa auto-fetch daftar model dari endpoint /v1/models, atau input manual. Setiap model punya: nama, provider, pricing rate (input/token & output/token), max tokens, dan capabilities (chat, image, audio, embedding).

admin/features
Feature-to-Model mapping
๐Ÿ” Klik untuk zoom

Feature-to-Model mapping โ€” tentukan fitur mana pakai provider & model apa. Fitur: Demand Forecast, Menu Translate, Chatbot, Sentiment Analysis, Photo Enhance, Description Generator, Category Auto-label. Per fitur: pilih provider, pilih model, budget cap opsional.

admin/chatbot
Konfigurasi AI Chatbot untuk FAQ restoran. Set: system prompt (personality bot), knowledge base (menu, jam buka, alamat), model yang digunakan, temperature, dan max tokens. Chatbot bisa di-embed di halaman menu QR. History chat tersimpan dengan token usage tracking.
๐Ÿ” Klik untuk zoom

Konfigurasi AI Chatbot untuk FAQ restoran. Set: system prompt (personality bot), knowledge base (menu, jam buka, alamat), model yang digunakan, temperature, dan max tokens. Chatbot bisa di-embed di halaman menu QR. History chat tersimpan dengan token usage tracking.

admin/demand
Demand Forecast
๐Ÿ” Klik untuk zoom

Demand Forecast โ€” prediksi penjualan besok berdasarkan data historis + faktor eksternal. AI menganalisis: trend penjualan, hari dalam minggu, musim, event khusus. Output: prediksi qty per item untuk besok. Bantu kitchen prep dan purchasing planning.

admin/waste
Waste Prediction
๐Ÿ” Klik untuk zoom

Waste Prediction โ€” prediksi waste bahan baku berdasarkan pola historis. AI identifikasi: bahan apa yang sering terbuang, kapan (hari/jam), penyebab (expired/burnt/spoiled). Rekomendasi: adjustment purchasing quantity, improve storage, atau revisi menu.

๐Ÿ’ผ SaaS

admin/plans
Paket langganan SaaS: Free (1 outlet, 50 item, 3 user), Growth (5 outlet, 500 item, 20 user, trial 14 hari), Enterprise (unlimited outlet, 9999 item, 999 user, trial 30 hari). Setiap plan punya harga bulanan & tahunan, fitur list, dan status aktif.
๐Ÿ” Klik untuk zoom

Paket langganan SaaS: Free (1 outlet, 50 item, 3 user), Growth (5 outlet, 500 item, 20 user, trial 14 hari), Enterprise (unlimited outlet, 9999 item, 999 user, trial 30 hari). Setiap plan punya harga bulanan & tahunan, fitur list, dan status aktif.

admin/tenants
Daftar tenant/klien SaaS. Setiap tenant punya: nama bisnis, subdomain, domain kustom, plan, status aktif, dan settings JSON (branding per tenant). Support tenant isolation
๐Ÿ” Klik untuk zoom

Daftar tenant/klien SaaS. Setiap tenant punya: nama bisnis, subdomain, domain kustom, plan, status aktif, dan settings JSON (branding per tenant). Support tenant isolation โ€” data per tenant terpisah total.

admin/subscriptions
Langganan aktif per tenant: plan, status (trial/active/past_due/cancelled), tanggal mulai, tanggal expired, dan auto-renew flag. History subscription lengkap dengan upgrade/downgrade tracking.
๐Ÿ” Klik untuk zoom

Langganan aktif per tenant: plan, status (trial/active/past_due/cancelled), tanggal mulai, tanggal expired, dan auto-renew flag. History subscription lengkap dengan upgrade/downgrade tracking.

admin/invoices
Invoice billing per tenant: periode, jumlah, status (pending/paid/overdue), tanggal bayar. Generate invoice otomatis setiap bulan berdasarkan subscription plan.
๐Ÿ” Klik untuk zoom

Invoice billing per tenant: periode, jumlah, status (pending/paid/overdue), tanggal bayar. Generate invoice otomatis setiap bulan berdasarkan subscription plan.

admin/usage
Metrik pemakaian per tenant: jumlah order, jumlah item, jumlah user aktif, storage terpakai (MB), dan API calls. Data per hari untuk monitoring dan limit enforcement.
๐Ÿ” Klik untuk zoom

Metrik pemakaian per tenant: jumlah order, jumlah item, jumlah user aktif, storage terpakai (MB), dan API calls. Data per hari untuk monitoring dan limit enforcement.

๐Ÿ”Œ Hardware

admin/printer
Konfigurasi thermal printer ESC/POS. Set: nama printer, tipe koneksi (USB/Network/Bluetooth), alamat IP/port, baud rate, dan paper width (58mm/80mm). Test print button. Printer digunakan untuk cetak struk POS dan kitchen ticket dari KDS.
๐Ÿ” Klik untuk zoom

Konfigurasi thermal printer ESC/POS. Set: nama printer, tipe koneksi (USB/Network/Bluetooth), alamat IP/port, baud rate, dan paper width (58mm/80mm). Test print button. Printer digunakan untuk cetak struk POS dan kitchen ticket dari KDS.

โš™๏ธ Settings

admin/users
Manajemen user & role admin panel. Buat user dengan role: Super Admin, Admin, Manager, Cashier, Kitchen, Waiter. Setiap role punya permission matrix (CRUD resource, akses laporan, akses settings). User bisa di-assign ke outlet spesifik.
๐Ÿ” Klik untuk zoom

Manajemen user & role admin panel. Buat user dengan role: Super Admin, Admin, Manager, Cashier, Kitchen, Waiter. Setiap role punya permission matrix (CRUD resource, akses laporan, akses settings). User bisa di-assign ke outlet spesifik.

admin/webhooks
Outbound webhook configuration. Daftar endpoint webhook dengan: nama, URL target, events trigger (order.created, order.paid, order.completed, dll), secret key untuk signature verification. Delivery log: status (success/failed), response code, attempt number, retry.
๐Ÿ” Klik untuk zoom

Outbound webhook configuration. Daftar endpoint webhook dengan: nama, URL target, events trigger (order.created, order.paid, order.completed, dll), secret key untuk signature verification. Delivery log: status (success/failed), response code, attempt number, retry.

admin/apikeys
API Key management untuk akses programmatic. Generate API key dengan: nama, permissions (read/write/admin), expiry, dan status aktif. Key ditampilkan sekali saat generate. Last used timestamp untuk monitoring.
๐Ÿ” Klik untuk zoom

API Key management untuk akses programmatic. Generate API key dengan: nama, permissions (read/write/admin), expiry, dan status aktif. Key ditampilkan sekali saat generate. Last used timestamp untuk monitoring.

admin/reports
Halaman ringkasan semua laporan: Sales Report, Expense Report, Tax Report, Staff Performance, Inventory Report. Setiap laporan punya filter tanggal, outlet, dan export PDF/Excel. One-stop page untuk quick overview.
๐Ÿ” Klik untuk zoom

Halaman ringkasan semua laporan: Sales Report, Expense Report, Tax Report, Staff Performance, Inventory Report. Setiap laporan punya filter tanggal, outlet, dan export PDF/Excel. One-stop page untuk quick overview.

admin/general
Pengaturan aplikasi lengkap dengan tab: Branding (nama, logo, favicon, warna), Umum (currency, locale, timezone), Tax & Service (rate + inclusive toggle), Order (prefix, min amount, auto-confirm, guest order), Loyalty (enable, point rate, redeem value), Reservation (enable, min/max advance), SEO (enable PSEO, site URL).
๐Ÿ” Klik untuk zoom

Pengaturan aplikasi lengkap dengan tab: Branding (nama, logo, favicon, warna), Umum (currency, locale, timezone), Tax & Service (rate + inclusive toggle), Order (prefix, min amount, auto-confirm, guest order), Loyalty (enable, point rate, redeem value), Reservation (enable, min/max advance), SEO (enable PSEO, site URL).

Total: 67 screenshot โ€” mencakup seluruh 48 resource + 22 custom page admin panel.

โ“ FAQ

Apa beda standalone vs SaaS?
Standalone: 1 install per server, tanpa tenant, semua data shared. SaaS: multi-tenant via tenant_id, tiap tenant punya outlet/user/pesanan sendiri, data terisolasi.
Bisa pakai printer thermal langsung?
Struk PDF sudah lebar 80mm. Ctrl+P di /receipt/{order} atau ?autoprint=1 auto-trigger. Untuk auto-print ke printer USB/network, integrasikan mike42/escpos-php.
Customer tidak punya akun bisa pesan?
Bisa. allow_guest_order = true di Settings. Info customer disimpan di kolom customer_name/phone/email di orders, tapi tidak dapat poin loyalty.
Bagaimana cara tracking pengeluaran harian?
Sidebar ๐Ÿ’ฐ Keuangan โ†’ Pengeluaran untuk input, ๐Ÿ’ฐ Keuangan โ†’ Laporan Pengeluaran untuk ringkasan, dan ๐Ÿ’ฐ Keuangan โ†’ Laba Rugi (P&L) untuk lihat bottom-line setelah semua biaya.
Komisi karyawan dihitung dari mana?
Set komisi per item di ๐Ÿ‘จโ€๐Ÿณ Staff โ†’ Karyawan. Sistem otomatis hitung dari qty item terjual oleh kasir tersebut ร— komisi per item. Lihat hasilnya di ๐Ÿ’ฐ Keuangan โ†’ Payroll.
Biaya AI Provider?
Anda bayar langsung ke provider (OpenAI/Claude/DeepSeek/dll.) sesuai pemakaian. FoodScan tidak ambil potongan. Pakai BYOK โ€” bawa key sendiri.
Mau beli source code?
Hubungi WhatsApp +62 812 9605 2010 untuk demo lengkap dan pricing.
๐Ÿ’ผ

Tertarik Beli Source Code?

Standalone source code โ€” 1ร— bayar, lifetime. Bukan subscription SaaS. Support 6 bulan.

+62 812 9605 2010 ยท Respons cepat dalam 1 jam