Happy Hour (Promo Terjadwal)
Otomatisasi diskon spesial pada hari dan jam tertentu untuk meningkatkan penjualan di periode sepi pengunjung.
Gambaran Umum
Banyak bisnis retail dan F&B yang mengalami fluktuasi jumlah pengunjung yang sangat tajam di waktu-waktu tertentu. Misalnya, restoran sering kali kosong melompong antara jam makan siang dan makan malam (pukul 14.00 hingga 17.00). Untuk memaksimalkan pendapatan di jam-jam sepi (off-peak hours) ini, taktik “Happy Hour” atau diskon waktu terbatas adalah solusi klasik. Namun, menyerahkan tugas mengingat dan menerapkan diskon secara manual kepada kasir di jam-jam tersebut adalah praktik yang rawan kesalahan (human error).
Fitur Happy Hour di Temuya POS didesain untuk menghilangkan kerepotan manual tersebut sepenuhnya. Pengelola dapat membuat aturan promo berbasis kalender kronologis (scheduler) di backoffice. Pada hari dan rentang jam yang telah dikonfigurasi, harga produk di menu akan secara otomatis berubah menjadi harga diskon, tanpa kasir perlu mengetik kode apapun atau menekan tombol diskon tambahan. Fitur ini tidak hanya memastikan promosi berjalan mulus, tapi juga menghindari konflik dengan pelanggan terkait perdebatan “apakah sudah masuk jam diskon atau belum”, karena penentu validitasnya adalah jam aktual sistem operasi server kasir.
Alur Kerja
Skenario Bisnis Praktis: Sebuah bar & kafe memiliki program “Thirsty Thursday”, di mana setiap hari Kamis antara pukul 18.00 hingga 21.00 malam, semua menu Bir Lokal dan Koktail akan mendapatkan potongan harga flat Rp 20.000 per gelas. Manajer menyetel aturan penjadwalan ini di Temuya Backoffice.
Pada hari Kamis jam 17.45, ketika pelanggan memesan bir, harga di layar sentuh kasir masih harga normal (Rp 80.000). Namun, tepat pada jam 18.00, tanpa kasir me-restart aplikasi, sinkronisasi waktu terjadi di latar belakang. Jika pelanggan berikutnya memesan menu yang sama di jam 18.05, harganya otomatis tercantum menjadi Rp 60.000 dengan penanda khusus (ikon Happy Hour) di layar POS. Ketika jam dinding melewati 21.01, semua pesanan baru akan secara instan kembali ke harga normal. Hal ini mengamankan prosedur transaksi agar staf kasir tidak bisa mengeksploitasi promosi di luar waktu yang telah diputuskan.
flowchart TD
A[Mulai: Tambah Item ke Keranjang] --> B["Sistem Cek Waktu Sistem (Hari & Jam)"]
B --> C{Ada Jadwal Happy Hour Aktif?}
C -->|Tidak Ada| D[Gunakan Harga Master Normal]
C -->|Ada| E{Apakah Produk Termasuk Kategori Promo?}
E -->|Bukan Target Promo| D
E -->|Masuk Target Promo| F[Hitung & Terapkan Harga Diskon]
F --> G[Tandai Item dengan Tag Happy Hour]
D --> H[Subtotal Keranjang]
G --> H
H --> I[Pembayaran Selesai]
Teknologi & Infrastruktur
Tantangan utama dari modul penjadwalan promo ini adalah pemrosesan zona waktu (Timezone) dan deteksi rentang waktu dinamis (dynamic time-range matching) setiap kali barang dimasukkan ke dalam keranjang, tanpa memberikan beban berlebih pada database lokal di tablet POS.
| Tabel Database | Deskripsi Fungsi |
|---|---|
happy_hour_schedules | Berisi definisi utama promo, nama, dan nilai diskon (persen/nominal). |
happy_hour_times | Memetakan jadwal ke hari (Senin=1, Selasa=2, dst) dengan kolom start_time dan end_time tipe time. |
happy_hour_items | Daftar persimpangan yang mendaftar produk atau kategori apa saja yang mendapat diskon ini. |
| Endpoint API | Kegunaan |
|---|---|
GET /api/v1/happy-hours/active | Secara rutin ditarik (polling) oleh client POS untuk mengetahui jadwal promo hari itu. |
POST /api/v1/admin/happy-hours | (Backoffice) Endpoint membuat setelan kalender baru, mendukung rentang waktu melintasi tengah malam (misal 22:00 ke 02:00). |
Untuk memastikan respons instan, POS menyimpan konfigurasi Happy Hour hari itu dalam cache memori lokal. Ketika waktu lokal (waktu device kasir) masuk dalam rentang, mesin perhitungan harga (pricing engine) akan mencegat (intercept) harga master dan melempar harga override-nya.
Keterkaitan dengan Fitur Lain
Otomatisasi waktu ini bersinergi dengan modul-modul pengelolaan produk yang lebih besar:
- Katalog & Kategori Produk: Happy Hour jarang diterapkan ke semua barang secara sporadis. Biasanya, fitur ini menargetkan grup Kategori tertentu. Oleh karena itu, pengkategorian menu (seperti “Minuman”, “Appetizer”) yang rapi di database sangat penting agar penyetelan Happy Hour tidak perlu dilakukan item-per-item secara menyiksa.
- Sinkronisasi Offline Mode: Modul Temuya POS didesain agar tetap bisa mengenali jadwal Happy Hour meskipun koneksi internet terputus di tengah jalan, karena jadwal hari tersebut telah di-cache ke lokal memori device.
- Reservasi & Dine-In Table: Ada kasus di mana pelanggan Seated di jam 16.50 sebelum Happy Hour, lalu memesan tambahan di jam 17.10 saat Happy Hour dimulai. Sistem cukup cerdas untuk menetapkan harga normal pada pesanan pertama, dan harga diskon pada pesanan tambahan (add-on) dalam bill yang sama, karena setiap pemesanan akan dicap stempel waktunya (timestamp).
flowchart LR
A[Pricing Engine Lokal POS] -->|Cek Cache Jadwal| B(Modul Happy Hour)
B --> C[Manajemen Kategori Produk]
B --> D[Manajemen Tabel Waktu Offline]
B --> E[Stempel Waktu Pemesanan per Baris]
Hal Penting yang Perlu Diketahui
- Lintas Tengah Malam (Cross-Midnight): Restoran yang buka larut (seperti Bar) sering membuat promo dari jam 22.00 hingga 02.00 pagi. Sistem Temuya POS dirancang agar mendukung konfigurasi end-time yang lebih kecil dari start-time, secara otomatis memaknainya sebagai berganti hari kalender tanpa error.
- Prioritas Harga: Bagaimana jika suatu barang sedang dalam harga diskon Happy Hour, lalu kasir secara manual memasukkan Diskon Per Item lagi? SOP default merekomendasikan sistem memblokir diskon manual tambahan untuk mencegah “Diskon Ganda” (Double Dipping). Pastikan kebijakan bisnis Anda disetel dengan benar di bagian konfigurasi prioritas harga.
- Stempel Waktu Saat Check-Out vs Saat Pesan: Aturan mendasar adalah: Diskon ditentukan pada SAAT BARANG DIPESAN (Sent to Kitchen), bukan pada saat pelanggan membayar (Check Out). Jika tamu memesan bir promo jam 17.50, dan baru membayar jam 19.00 setelah makan malam selesai, sistem akan mengunci harga barang pada harga waktu barang tersebut ditambahkan ke meja.