YVA Hotel - Property Management System

Panduan Penggunaan (User Guide)


Daftar Isi

1. [Pendahuluan](#1-pendahuluan)

2. [Akses & Login](#2-akses--login)

3. [Role & Hak Akses](#3-role--hak-akses)

4. [Manajemen Kamar](#4-manajemen-kamar)

5. [Reservasi](#5-reservasi)

6. [Digital Key & RFID](#6-digital-key--rfid)

7. [Payment Gateway](#7-payment-gateway)

8. [POS Restoran](#8-pos-restoran)

9. [POS Services (Spa & Layanan)](#9-pos-services-spa--layanan)

10. [QRIS Menu Publik](#10-qris-menu-publik)

11. [CCTV Monitor](#11-cctv-monitor)

12. [Smart Room Control (IoT)](#12-smart-room-control-iot)

13. [Housekeeping](#13-housekeeping)

14. [Status Kamar](#14-status-kamar)

15. [Laporan Keuangan](#15-laporan-keuangan)

16. [Guest History / CRM](#16-guest-history--crm)

17. [Notifikasi Otomatis](#17-notifikasi-otomatis)

18. [SEO Management](#18-seo-management)

19. [Manajemen Pengguna](#19-manajemen-pengguna)

20. [OTA Channel & Webhook](#20-ota-channel--webhook)

21. [Delivery API (Grab/GoFood)](#21-delivery-api-grabgofood)

22. [Menu & Rekomendasi](#22-menu--rekomendasi)


1. Pendahuluan

**YVA Hotel PMS** adalah sistem manajemen properti hotel terintegrasi yang mencakup:

  • **Reservasi & Manajemen Kamar** — booking, check-in/out, status kamar
  • **Operasional** — POS Restoran & Spa, Housekeeping, CCTV, IoT Smart Room
  • **Pembayaran** — Multi-channel payment gateway (VA, QRIS, Kartu Kredit)
  • **Digital Key** — Kunci kamar digital + RFID + PIN
  • **Front-end Publik** — QRIS Menu untuk pemesanan makanan dari kamar
  • **Integrasi** — OTA webhook (Booking.com, dll), Delivery API (GrabFood/GoFood)
  • **Laporan** — Keuangan per departemen, histori tamu, log notifikasi
  • **Tech Stack:** Laravel 12 + PHP 8.2, MySQL, Filament v3 Admin Panel

    **URL Admin:** `https://hotel.yvatech.site/admin`

    **URL Publik:** `https://hotel.yvatech.site/`


    2. Akses & Login

    Halaman Login

    1. Buka `https://hotel.yvatech.site/admin`

    2. Masukkan **Email** dan **Password**

    3. Klik **Sign In**

    Akun Bawaan (untuk testing)

    Role Email | Password-------------|----------Owner `demo@yvatech.site` | `password`Resepsionis `receptionist@yvatech.site` | `password`Housekeeping `hk@yvatech.site` | `password`Dapur `kitchen@yvatech.site` | `password`Spa Staff `spa@yvatech.site` | `password`

    > **Penting:** Segera ganti password setelah login pertama kali.


    3. Role & Hak Akses

    Sistem memiliki 6 role dengan akses berbeda:

    Role Akses-------------**Owner** Full akses semua fitur termasuk laporan keuangan & manajemen pengguna**Admin** Full akses semua fitur kecuali manajemen pengguna**Resepsionis** Reservasi, Kamar, Digital Key, Pembayaran, Status Kamar**Housekeeping** Tugas Housekeeping, Status Kamar, Data Kamar**Dapur** Menu, Order, POS Restoran**Spa Staff** Layanan Spa, POS Services

    Manajemen Role

    1. **Owner/Admin** → buka menu **Pengaturan > Pengguna**

    2. Klik **Buat Pengguna** atau edit pengguna yang sudah ada

    3. Pilih **Role** yang sesuai

    4. Simpan


    4. Manajemen Kamar

    Menu: **Kamar** (di sidebar)

    Menambahkan Kamar Baru

    1. Klik **Buat Kamar**

    2. Isi data:

    - **Nomor Kamar** — unik, contoh: 101

    - **Tipe Kamar** — Standard / Deluxe / Suite / Presidential

    - **Lantai** — pilih lantai

    - **Tipe Tempat Tidur** — Single / Twin / Double / Queen / King

    - **Max Tamu** — jumlah maksimal tamu

    - **Luas (m²)** — ukuran kamar

    - **Harga per Malam** — dalam Rupiah

    3. **Fasilitas** — centang fasilitas yang tersedia (WiFi, AC, TV, Bathtub, dll)

    4. **Deskripsi** — keterangan tambahan

    5. **Foto Kamar** — upload beberapa foto (bisa crop & edit)

    Status Kamar

  • **Tersedia** — siap dipesan
  • **Terisi** — sedang ditempati tamu
  • **Perbaikan** — maintenance
  • Status Kebersihan

  • **Bersih** — siap pakai
  • **Kotor** — perlu dibersihkan
  • **DiBersihkan** — sedang diproses
  • **Inspeksi** — sedang diperiksa
  • > **Otomatis:** Saat tamu check-out, status kebersihan otomatis berubah ke "Kotor".


    5. Reservasi

    Menu: **Reservasi > Reservasi**

    Membuat Reservasi Baru

    1. Klik **Buat Reservasi**

    2. Pilih **Kamar** (hanya kamar tersedia yang muncul)

    3. Isi **Nama Tamu**, **No. Telepon**

    4. Pilih **Tanggal Check-in** dan **Check-out**

    5. **Total Harga** — otomatis terhitung (harga kamar × durasi)

    6. **Status** — default "Menunggu"

    7. Klik **Simpan**

    Mengubah Status Reservasi

  • **Menunggu** → **Dikonfirmasi** → **Selesai** (check-out)
  • Atau **Dibatalkan**
  • Fitur Otomatis saat Konfirmasi

  • ✅ Status kamar berubah menjadi "Terisi"
  • ✅ Digital Key & PIN otomatis dibuat
  • ✅ Guest profile otomatis tercatat di CRM
  • ✅ Notifikasi WhatsApp terkirim ke tamu
  • Aksi per Reservasi

  • **Edit** — ubah data reservasi
  • **Cetak Invoice** — download PDF invoice
  • **Kirim WA** — buka WhatsApp dengan pesan konfirmasi
  • **Link Check-in** — kirim link check-in online via WA

  • 6. Digital Key & RFID

    Menu: **Reservasi > Digital Key**

    Digital key otomatis dibuat saat reservasi dikonfirmasi.

    Data Digital Key

    Kolom Keterangan------------------Key Code Kode unik 32 karakter (hex)PIN Code PIN 6 digit untuk akses kamarStatus Active / ExpiredBerlaku Sesuai check-in s/d check-out

    API Endpoints

  • `GET /api/digital-key/verify/{key_code}` — verifikasi kunci
  • `GET /api/digital-key/room/{room_id}` — daftar kunci aktif per kamar

  • 7. Payment Gateway

    Menu: **Finance > Payment Channels** & **Finance > Payments**

    Channel Pembayaran

    5 channel yang tersedia:

    1. **BCA Virtual Account**

    2. **Mandiri Virtual Account**

    3. **GoPay**

    4. **QRIS**

    5. **Kartu Kredit**

    Setting channel di **Pengaturan > Payment Channels**:

  • Nama channel
  • Biaya/admin fee
  • Status aktif/non-aktif
  • Transaksi Pembayaran

    Meliputi semua payment dengan status:

  • **Pending** — menunggu pembayaran
  • **Success** — berhasil dibayar
  • **Failed** — gagal
  • **Expired** — kadaluarsa
  • **Refunded** — dikembalikan
  • API Endpoints

  • `POST /api/payment/process` — proses pembayaran
  • `POST /api/payment/callback` — callback dari payment gateway
  • `GET /api/payment/status/{external_id}` — cek status

  • 8. POS Restoran

    Menu: **F&B > POS Restoran**

    POS Restoran untuk memproses pesanan makanan & minuman dari tamu.

    Cara Penggunaan

    1. Pilih **Kategori** (Makanan / Minuman / Snack)

    2. Klik **menu** untuk menambahkan ke keranjang

    3. Atur **quantity** (+ / -)

    4. Pilih **Kamar** (atau biarkan walk-in)

    5. Klik **Kirim Pesanan**

    6. Pesanan masuk ke dapur dengan status "pending"

    Fitur

  • Grid menu dengan gambar + harga
  • Badge ⭐ untuk item rekomendasi
  • Hitung total otomatis
  • Bisa untuk walk-in customer (tanpa kamar)

  • 9. POS Services (Spa & Layanan)

    Menu: **Guest Services > POS Services**

    Untuk memproses layanan hotel seperti spa, laundry, transportasi, dll.

    Kategori Layanan

    Kategori Contoh------------------Spa & Pijat Body Massage, Reflexology, Facial, Hot StoneLaundry Cuci Kering, Dry Cleaning, SetrikaTransportasi Taxi, Rental Mobil, Driver HarianLainnya Snack Box, Florist, Doctor On Call, Baby Sitting

    Cara Penggunaan

    1. Pilih **kategori layanan** (tab)

    2. Klik **layanan** yang diinginkan

    3. Atur quantity

    4. Pilih kamar

    5. Klik **Kirim Pesanan**


    10. QRIS Menu Publik

    Menu: **Lainnya > QRIS Menu** (di admin) atau buka `https://hotel.yvatech.site/qris-menu`

    Halaman publik untuk pemesanan makanan langsung dari kamar via HP.

    Cara Penggunaan (Tamu)

    1. Scan **QR Code** yang ada di kamar

    2. Lihat menu makanan/minuman/snack

    3. ⭐ **Rekomendasi Hari Ini** muncul di bagian atas

    4. Klik **+ Pesan** pada item yang diinginkan

    5. Keranjang muncul di bagian bawah

    6. Masukkan **Nama** dan pilih **Kamar**

    7. Klik **Kirim Pesanan**

    Fitur

  • Mobile-friendly
  • Gambar menu tampil
  • Kategori tabs
  • Cart drawer
  • Auto-submit ke dapur hotel
  • QR Code Menu

    `https://hotel.yvatech.site/qris-menu/qr` — tampilkan QR code untuk dicetak dan ditempel di kamar.


    11. CCTV Monitor

    Menu: **Operasional > Monitor CCTV**

    Live view kamera CCTV hotel dalam grid.

    Fitur

  • Grid layout (2×2, 3×3, 4×4)
  • Fullscreen mode per kamera
  • Online/offline indicator
  • 6 tipe stream: RTSP, RTMP, HLS, FLV, WebRTC, YouTube Live
  • Setup Kamera

    1. Buka **Operasional > Kamera**

    2. Klik **Buat Kamera**

    3. Masukkan:

    - Nama kamera

    - URL stream

    - Tipe stream

    - Posisi/urutan


    12. Smart Room Control (IoT)

    Menu: **Operasional > Smart Control**

    Kontrol perangkat pintar di kamar hotel.

    Perangkat yang Didukung

    Tipe Contoh--------------**AC** Nyalakan/mati, set suhu**Lampu** On/off, dimmer**TV** On/off, ganti channel**Tirai** Buka/tutup**Thermostat** Atur suhu**Door Lock** Kunci/buka**Speaker** Volume**Other** Perangkat lain

    Cara Penggunaan

    1. Pilih **kamar** dari dropdown

    2. Lihat daftar perangkat terpasang

    3. Klik **On/Off** atau **atur nilai**

    4. Status perangkat terupdate real-time

    Setup Perangkat

    1. Buka **Operasional > Perangkat Kamar**

    2. Tambah perangkat baru dengan:

    - Nama perangkat

    - Tipe

    - Kamar

    - Status awal


    13. Housekeeping

    Menu: **Housekeeping > Tugas**

    Membuat Tugas Housekeeping

    1. Klik **Buat Tugas**

    2. Pilih **Kamar**

    3. Pilih **Jenis Tugas**:

    - **Kebersihan Rutin** — pembersihan harian

    - **Deep Clean** — pembersihan menyeluruh

    - **Inspeksi** — pemeriksaan kamar

    - **Restock** — isi ulang perlengkapan

    - **Turndown Service** — evening service

    4. Pilih **Petugas** (staff housekeeping)

    5. Atur **Jadwal** (tanggal & jam)

    6. Tambahkan **Catatan** jika perlu

    Status Tugas

  • **Menunggu** — belum dikerjakan
  • **Dikerjakan** — sedang diproses
  • **Selesai** — sudah selesai
  • **Dibatalkan**
  • Update Status

    1. Buka tugas yang akan diupdate

    2. Ubah status sesuai kondisi

    3. Jika "Selesai", sistem otomatis mencatat waktu selesai


    14. Status Kamar

    Menu: **Operasional > Status Kamar**

    Grid visual status seluruh kamar hotel.

    Informasi per Kamar

  • **Nomor Kamar** — tampil besar
  • **Status Kamar** — indikator warna (Tersedia/Terisi/Perbaikan)
  • **Status Kebersihan** — badge warna (Bersih/Kotor/DiBersihkan/Inspeksi)
  • **Info Tamu Aktif** — nama tamu + tanggal check-in/out (jika terisi)
  • **Dropdown** — ubah status kebersihan langsung (Housekeeping/Admin)
  • Warna Indikator

    Status Warna---------------Tersedia HijauTerisi BiruPerbaikan MerahBersih HijauKotor MerahDiBersihkan KuningInspeksi Biru

    15. Laporan Keuangan

    Menu: **Finance > Laporan Keuangan** (Owner/Admin)

    Ringkasan

    8 kartu informasi:

  • Pendapatan Kamar
  • Pendapatan Restoran
  • Pendapatan Layanan (Spa, dll)
  • **Total Pendapatan**
  • **PPN 11%** (dihitung otomatis)
  • **Pendapatan Setelah PPN**
  • Jumlah Reservasi
  • Jumlah Pesanan Makanan
  • Filter Periode

    1. Pilih **Dari Tanggal** dan **Sampai Tanggal**

    2. Data akan otomatis diperbarui

    Rincian Harian

    Tabel per tanggal dengan breakdown per departemen + total.

    Transaksi Terbaru

    20 transaksi terakhir dari semua sumber (kamar, restoran, layanan).

    Download

  • **Unduh PDF** — laporan keuangan lengkap
  • **Excel** — data harian dalam format CSV

  • 16. Guest History / CRM

    Menu: **Reservasi > Tamu**

    Sistem CRM untuk mencatat histori setiap tamu.

    Data Tamu

  • Nama, No. Telepon, Email
  • No. KTP/Paspor
  • Alamat
  • Preferensi (tag: non-smoking, extra pillow, lantai tinggi)
  • Catatan internal
  • Informasi Otomatis

  • **Total Kunjungan** — bertambah setiap booking baru
  • **Total Belanja** — akumulasi dari semua transaksi
  • **Kamar yang pernah ditempati**
  • **Menu Favorit** — dari riwayat pesanan
  • Histori Tamu

    Klik **Histori** pada data tamu untuk melihat:

    1. **Profil Tamu** — ringkasan data + statistik

    2. **Riwayat Reservasi** — semua booking dengan detail

    3. **Pesanan Restoran** — riwayat makan

    4. **Pesanan Layanan** — riwayat spa/laundry

    Auto-sync

    Saat reservasi dikonfirmasi, sistem otomatis:

  • Mencari tamu berdasarkan nomor telepon
  • Jika ada → update total kunjungan + belanja
  • Jika baru → buat data tamu baru

  • 17. Notifikasi Otomatis

    Menu: **Pengaturan > Notifikasi**

    Log semua notifikasi yang dikirim ke tamu.

    Jenis Notifikasi

    Tipe Trigger | Isi---------------|-----**Konfirmasi Booking** Booking di-confirm | Detail reservasi, total harga**Pengingat Check-in** H-1 check-in | Link check-in online**Invoice** Manual dari admin | Link download invoice

    Channel

  • **WhatsApp** — via `wa.me` link (staff tinggal klik untuk kirim)
  • Status Notifikasi

  • **Menunggu** — belum dikirim
  • **Terkirim** — sudah diproses
  • **Gagal** — error saat pengiriman
  • Cara Kirim Notifikasi Manual

    1. Buka **Reservasi**

    2. Pilih booking yang akan dikirimi notifikasi

    3. Klik **Kirim WA** atau **Link Check-in**

    4. WhatsApp terbuka dengan pesan otomatis

    5. Klik **Kirim** di WhatsApp


    18. SEO Management

    Menu: **Pengaturan > SEO**

    Mengatur meta tag untuk halaman publik hotel.

    Halaman yang Bisa Diatur

    Halaman URL--------------Beranda `/`QRIS Menu `/qris-menu`

    Field SEO

  • **Meta Title** — judul halaman di hasil pencarian (max 70 char)
  • **Meta Description** — deskripsi singkat (max 300 char)
  • **Keywords** — kata kunci pencarian
  • **OG Title** — judul untuk social media preview
  • **OG Description** — deskripsi social media
  • **OG Image** — gambar preview social media
  • **Canonical URL** — URL utama (hindari duplikat konten)
  • **Custom Scripts Head** — Google Analytics, Pixel, dll (dirender sebelum `</head>`)
  • **Custom Scripts Body** — Chat widget, dll (dirender sebelum `</body>`)
  • Cara Setting

    1. Buka **Pengaturan > SEO**

    2. Klik **Buat SEO** atau edit yang sudah ada

    3. Pilih **Halaman**

    4. Isi meta tag yang diinginkan

    5. Aktifkan toggle **Aktif**

    6. Simpan


    19. Manajemen Pengguna

    Menu: **Pengaturan > Pengguna** (Owner/Admin)

    Membuat Pengguna Baru

    1. Klik **Buat Pengguna**

    2. Isi:

    - **Nama** — nama lengkap

    - **Email** — digunakan untuk login

    - **Role** — pilih role yang sesuai

    - **Password** — minimal 8 karakter

    3. Simpan

    Edit/Delete Pengguna

  • Klik **Edit** untuk mengubah data
  • Klik **Delete** untuk menghapus (hati-hati)

  • 20. OTA Channel & Webhook

    Menu: **Pengaturan > OTA Channels**

    Mengelola channel Online Travel Agent (Booking.com, Traveloka, Tiket.com, Agoda, dll).

    Setup Channel

    1. Buka **Pengaturan > OTA Channels**

    2. Klik **Buat Channel**

    3. Masukkan:

    - **Nama Channel** — contoh: Booking.com

    - **API Key** — dari OTA

    - **API Secret** — dari OTA

    - **Webhook URL** — endpoint untuk menerima booking

    4. Simpan

    Webhook Endpoint

    `POST /api/ota/booking`

    Saat OTA mengirim booking baru, sistem otomatis:

  • ✅ Membuat reservasi baru
  • ✅ Update status kamar
  • ✅ Mencatat log

  • 21. Delivery API (Grab/GoFood)

    Menu: **Pengaturan > Delivery Channels**

    Mengelola channel delivery food (GrabFood, GoFood, ShopeeFood).

    Setup Channel

    1. Buka **Pengaturan > Delivery Channels**

    2. Klik **Buat Channel**

    3. Masukkan data channel

    4. Simpan

    Webhook Endpoint

    `POST /api/delivery/order`

    Saat delivery order masuk, sistem otomatis:

  • ✅ Membuat order di tabel orders
  • ✅ Pesanan masuk ke dapur

  • 22. Menu & Rekomendasi

    Menu: **F&B > Menu**

    Mengelola Menu Restoran

    1. Buka **F&B > Menu**

    2. Klik **Buat Menu** atau edit yang sudah ada

    3. Isi:

    - **Nama Menu** — nama makanan/minuman

    - **Kategori** — Makanan / Minuman / Snack

    - **Harga** — dalam Rupiah

    - **Gambar** — upload foto atau ambil dari kamera (📷)

    - **Bahan Baku** — komposisi/resep (opsional)

    - **Tersedia?** — toggle ketersediaan

    - **Rekomendasi Hari Ini** — tandai sebagai rekomendasi

    4. Simpan

    Upload Gambar

  • Klik area upload untuk pilih dari galeri
  • Klik **📷 Ambil Foto dari Kamera** untuk foto langsung
  • Di HP: akan buka kamera otomatis
  • Di Desktop: buka overlay kamera
  • Rekomendasi Hari Ini

  • Tandai menu dengan toggle **Rekomendasi Hari Ini**
  • Muncul di bagian atas **QRIS Menu** dengan badge ⭐
  • Muncul badge ⭐ di **POS Restoran**
  • Maksimal 6 item direkomendasikan

  • Tips & Trik

    1. **Shortcut Navigasi**: Gunakan sidebar kiri untuk pindah antar menu

    2. **Pencarian**: Hampir semua tabel punya fitur search

    3. **Filter**: Gunakan filter untuk menyaring data

    4. **Bulk Action**: Centang beberapa item lalu pilih aksi massal

    5. **Dark Mode**: Filament mendukung dark mode otomatis


    Troubleshooting

    Lupa Password

    Hubungi Owner/Admin untuk reset password.

    Halaman Error 403

    Anda tidak memiliki akses ke halaman tersebut. Login dengan akun yang memiliki role sesuai.

    Gambar Tidak Muncul

    Pastikan path storage benar: `public/storage/...` (bukan `storage/...`)

    Data Tidak Update

    Coba refresh halaman atau logout/login ulang.


    *YVA Hotel PMS v1.0 — Dibangun dengan Laravel 12 + Filament v3*

    *© 2026 YVA Hotel - Property Management System*