No Super Admin credential exists yet on this device. Create one now (12+ characters, upper/lowercase, number, special character). The password is never stored — only a salt and a derived verifier.
Invalid credentials.
← Use legacy single-property mode
QYRVIA ERP — Super Admin PortalLogged in as Super Admin
📊Dashboard
🏢Companies
🏨Properties
🏷️Departments
💳Subscriptions
👥Users
📋Audit Log
⚙️Settings
🔔 Notifications
Enterprise Resource Planning Suite
This is a public, browser-local demonstration build.
No account or password is required or stored.
QYRVIA ERP · Standalone Demo · Browser-local only, no backend, no credentials
QYRVIA ERP
Administrator Setup Required
No local administrator account has been set up yet. Create the first
administrator username and password to continue. This password is
never stored — only a random salt and a derived verifier.
Please correct the errors below.
Requires: 12+ characters, uppercase, lowercase, a number and a special character.
QYRVIA ERP · Enterprise Suite · Browser-local fallback setup
📵 You are offline — QYRVIA ERP is running from local cache. Changes will sync when connection is restored.
Dashboard
QYRVIA Enterprise Resource Planning System
--:--:--
✔ Saved
☁️ Synced
⚠️ 0 Alerts
AI Brain Assistant
QYRVIA ERP · AI Command Center
Live
▼
Ask anything about hotel operations…
Dashboard
OverviewReportsRevenueRooms
Loading...
★ Operations Snapshot
Today at a glance
Live KPIs, stock alerts and your financial overview, all in one place. Generate a full report for any date range.
Quick Actions
🔥 Top Consuming Items
♻️ Top Waste Items (by Value)
📊 Stock Value by Category
📈 Financial Overview (LKR)
🚨 MSQ Alert — Items Needing Restock
▶ Show
📦 Inventory
All items — add new items manually with + Add Item
📥 Goods Received Note
Record stock received — inventory updates automatically
🛒 Purchase Orders
Raise POs to suppliers — link to GRN on delivery
🛒
Total POs
0
⏳
Open
0
✅
Received
0
🔄
Partial
0
🚫
Cancelled
0
💰
Open Value
LKR 0
🍳 Kitchen Issuing
Issue items to kitchen — stock deducted automatically
Switch between Legacy single-property mode and Multi-Company SaaS mode. In SaaS mode, each property has fully isolated data, users, and reports.
💾 Storage Status
⬇️ Export Backup
Downloads your entire database as a timestamped .json file — bookings, inventory, invoices, GRN, waste, and all settings. Store it on Google Drive, USB, or email it to yourself.
✅ Recommended: Export a backup daily or after major data entry sessions.
⬆️ Import Backup
Restore from a previously exported .json backup file. Warning: this will replace all current data.
⚠️ Always export a fresh backup before importing to avoid accidental data loss.
📊 Export to Excel (.xlsx)
Choose which data to export as an Excel spreadsheet. Each dataset exports to its own worksheet tab.
🏨 Bookings
All room bookings with guest details, dates, rates, advance payments and GRC data
🧾 Invoices
All F&B invoices with line items, totals, service charges and payment methods
📦 Inventory
Full stock list with current quantities, costs, MSQ levels and stock values
📥 GRN Records
All goods received notes with supplier, items received and values
🍳 Issuing Records
All kitchen issuing notes with department, items and cost
♻️ Waste Log
All waste entries with item, quantity, reason and waste value
📋 Full Report (All Sheets)
Exports every dataset into one Excel file with multiple worksheets
🔐 Admin Password
The admin password is required to void invoices, GRN records, and issuing notes. Keep it secure.
12+ characters, uppercase, lowercase, number, special character.
⚠️ Danger Zone
These actions are irreversible. Always export a backup first.
🏘️ Property Setup
Configure this property's room inventory and categories
💾 Standalone Mode — room and category data is stored in this browser only. Connect the QYRVIA server to persist this centrally.
🏷️ Room Categories
Add Category
🛏️ Rooms
Add Room
🤖 AI Provider Settings
Provider, model and connection status for QYRVIA AI
🧭 Booking Engine — Direct Sales
Server-backed · fail-closed availability · never overbooks
Guided direct booking. The server confirms availability before creating a reservation; if availability can't be confirmed, the booking is safely declined.
Enter your stay and check availability.
👤 User Manager
Manage system users, roles and passwords — only Admin can add accounts
🔐 Role Access Guide
🔑 Admin
Full access to all modules, user management, reports, and system settings.
🛎️ Reception
Rooms, Invoices, Sales, Channel Manager. Full front desk operations.
🍳 Kitchen
Issuing, Waste, KOT Print only. No inventory or financial data.
📦 Store
Inventory, GRN, and Issuing. Full stores and stock management.
🍽️ Restaurant
Invoice creation, Sales view, KOT Print. Restaurant billing only.
🧹 Housekeeping
Room status editing only. Cannot create bookings or access financials.
📋 Requisitions
Department → Store workflow · Approval process · Auto-inventory integration
⏳
Pending
0
✅
Approved
0
📦
Fulfilled
0
❌
Rejected
0
Req #
Date
Department
Requested By
Items
Status
Approver
Actions
No requisitions yet. Click + New Requisition to create one.
🔐 Permission Manager
Module-level CRUD permissions per role · Property-scoped access control
Tick boxes to grant access. Admin always has full access.
Module
View
Create
Edit
Delete
Approve
Export
📜 Audit Log
User activity · Change history · Login tracking · Soft-delete records
Set your nightly base rate and per-OTA markup/discount. Net rate after commission is calculated automatically.
OTA
Commission %
Markup %
Published Rate
Net You Receive
Status
💡 Rate Parity Tip: Most OTAs require you not to list lower rates on other channels. Keep rates consistent or apply equal markup across all OTAs.
🏨 Live Room Inventory — Real-Time Availability
This is your live inventory pulled from Room Management. When a room is occupied, it is auto-blocked (stop-sell) across all OTA channels via your iCal feed.
🗓️ 14-Day Availability Forecast
📤 Push — Send Availability to OTAs
Instantly push your current room availability and rates to all connected OTA channels. Blocked rooms trigger auto stop-sell.
📥 Pull — Import OTA Reservation
Log a reservation received from an OTA. It auto-blocks the room and updates live inventory.
📋 OTA Reservations Log
OTA
Ref ID
Guest
Room
Check-In
Check-Out
Nights
Gross
Comm%
Net
Deposit
Payment
Status
No OTA reservations yet. Use Push/Pull tab to import one.
📊 Revenue by OTA Channel
Channel
Bookings
Gross Revenue
Total Commission
Net Revenue
Avg Booking Value
⛔ Out of Order (OOO)
Hard Block
Room is physically unavailable for sale. Removed from all OTA inventory immediately. Existing reservations flagged for relocation.
🚫 Out of Service (OOS)
Soft Block
Room is temporarily unavailable but not structurally damaged. Can be re-opened quickly. Still counted in sold-out calculations but not sold to new guests.
📋 OOO / OOS Active Log — Impact on OTA Inventory
Loading room status…
🔄 Guest Relocation Assistant
Auto-detects affected reservations
When a room goes OOO with active bookings, the system identifies affected guests and suggests available rooms of equal or higher category.
No active OOO relocation tasks. Mark a room OOO above to see affected reservations.
🛡️ Overbooking Prevention Engine
Validates PMS inventory against all reservation sources, OOO/OOS flags, group allocations, and travel agent allotments before publishing availability to any channel.
✅ PMS Inventory
Click Run Audit
🔒 OOO Blocked
Click Run Audit
🚫 OOS Blocked
Click Run Audit
📡 OTA Published
Click Run Audit
🤝 Agent Allotments
Click Run Audit
✔️ Net Sellable
—
Run audit to see detailed breakdown.
🔐 Double Booking Prevention — 9-Layer Validation
Every reservation passes through all 9 validation checkpoints before being confirmed. Conflicts trigger automatic rejection with detailed reason.
1 Direct booking date overlap check
2 Walk-in / front desk conflict scan
3 OTA inbound booking vs PMS inventory
4 Channel Manager import idempotency check
5 Reservation modification room re-validation
6 Room change / move conflict check
7 Room upgrade category inventory check
8 Group split / merge continuity check
9 OTA duplicate webhook idempotency guard
🔄 Room Change Engine
Move a guest's existing booking to a different room. Validates availability, releases old inventory, updates OTA sync, and logs audit trail.
⬆️ Room Upgrade Engine
Upgrade a guest to a higher room category. Adjusts rate, logs upgrade history, updates category inventory counts, and triggers OTA sync.
📋 Room Change / Upgrade History
Date/Time
Booking
Guest
From
To
Type
Rate Δ
Reason
By
No room changes or upgrades logged yet.
📈 Dynamic Pricing Rules
Automatically adjust rates based on occupancy thresholds, lead time, day of week, and seasonality.
No pricing rules set. Click + Add Rule.
🔗 Derived Rates
Automatically calculate OTA rates as a percentage of your master BAR (Best Available Rate). Changes to BAR cascade to all derived rates instantly.
Set BAR above to see derived rates.
🎯 Occupancy-Based Auto-Pricing
The yield engine automatically adjusts published rates when occupancy crosses these thresholds. Applied on next channel sync.
🟢
0–40% Occupancy
Discounted Rate
% vs BAR
🟡
40–70% Occupancy
BAR (Standard)
% vs BAR
🟠
70–85% Occupancy
Premium Rate
% vs BAR
🔴
85–100% Occupancy
Last Room Value
% vs BAR
🚧 Restriction Manager
Apply minimum stay, closed-to-arrival (CTA), closed-to-departure (CTD), and max-stay restrictions by date range and room type. Pushed to all OTA channels on sync.
No restrictions set.
🤝 Travel Agent & B2B Distribution Network
Manage B2B distribution partnerships with travel agents, tour operators, and corporate accounts. Each agent gets a unique access code, negotiated rate, allotment block, and commission structure.
No agents configured. Click + New Agent Contract to add your first B2B partner.
+ New Agent Contract
📋 Agent Booking Log
Agent
Booking Ref
Guest
Room
Check-In
Check-Out
Gross
Commission
Net
Status
No agent bookings logged yet.
🩺 Channel Ops — Diagnostics
Read-only diagnostics · sandbox probes only · no live OTA calls
Operational health and failed-sync recovery for connected channels. Connection tests are readiness-only (sandbox) and never expose credentials or payloads.
🔌 Test Connection
Enter a channel code and run a readiness-only sandbox probe.
📈 Sync Health
Loading…
🧯 DLQ / Failed Syncs
Failed sync operations for your property. Metadata only — guest, payment, and channel payloads are never shown.
ID
Channel
Action
Reservation
Attempts
Last Error
Reprocess?
Created
✅ No failed syncs. Your channel queue is clean.
🔁 Reprocess Queue
Entries you have flagged for reprocess. The background worker retries them — requesting reprocess does not trigger a live OTA sync directly.
🔐 Channel Credentials
Credentials are stored encrypted and are never displayed again after saving. This form only writes new values.
Channel
Ref
Type
Status
Configured
Updated
No credentials configured yet.
🗺️ Room / Rate Mapping
Map your internal room type (and rate plan) to each channel's codes. Operational metadata only.
Channel
Local room type
Channel room
Rate plan
Enabled
Ver
No mappings configured yet.
🧪 Channel Manager Smoke Tests
Runs the OTA import / cancel / modify, idempotency, no-overbooking, payment-state and distribution-core logic against a snapshot of your data, then restores it. Non-destructive — your live reservations are untouched. Results are also exposed on window.__qvSmoke for CI.
Press “Run All Tests” to verify the channel manager end-to-end.
#
Test
Result
Detail
Rooms
Manage bookings, availability & advance payments
✅
Guest Check-In
Select a confirmed booking to check in
🔵
Guest Check-Out
Select a checked-in booking to check out
All Rooms
🟢 Available
🔴 Occupied
🟡 Reserved
🔵 Checkout Today
⚫ Maintenance
📅 14-Day Availability Calendar
OccupiedReservedCheckoutAvailable
🏨
New Room Booking
🏨 Room Selection
Book multiple rooms under the same guest name
Combined Room Total:LKR 0.00
💳 Advance Payment
🩺 Guest Registration (GRC)
🏨
Booking Details
📦
Add New Item
📥
New Goods Received Note
Line Items
ItemQty ReceivedUnit Price (LKR)Total
🛒
Purchase Order
Ordered Items
ItemQty OrderedUnit Price (LKR)Total
🛒
Purchase Order
🍳
New Issuing Note
Items to Issue
ItemQty to IssueUnit Cost (LKR)Total Cost
🧾
New Invoice — Room & F&B
Selling prices include 10% Service Charge (auto-extracted in reports)
Applied on invoice total (after discount)
🏨 Room Accommodation Details
🍽️ F&B Items — Select from menu or type custom
CategoryMenu ItemQtyUnit Price (LKR)Disc%
💳 Payment Split
Payment MethodAmount (LKR)
Total AllocatedLKR 0.00
♻️
Log Kitchen Waste
🧾
Invoice Details
📥
GRN Details
📋 New Requisition
Requested Items
📋 Requisition
🚫 Void Record
⚠️ Voided records are kept for audit purposes but excluded from all totals and reports. This action cannot be undone without admin access.
💳 Record Balance Payment
📋
Guest Registration Card (GRC)
🎫
New Kitchen Order Ticket (KOT)
Order Items
💡 Press Enter to add first result · Arrow keys to navigate · Esc to close
Menu ItemQtyUnit Price
👤
Add User
📦
Add New Inventory Item
🍽️
Quick Add New Menu Item
🧹
Clean This Table?
This will archive all KOTs for this table as Completed and mark it ready for the next customer.
💸
Record Expense
💹
Record Income
💵
Receive Outstanding Payment
🏦
Bank Transaction
💰
Petty Cash
🛒
Supplier Payment
🧾
Customer Receipt
👥 Guest CRM
Repeat guests · Preferences · Loyalty points · Stay history
👥
Total Profiles
0
All guests on record
⭐
Repeat Guests
0
2+ stays
🏆
Gold / Platinum
0
Top-tier loyalty
💠
Loyalty Points
0
Total in circulation
👤
No guest profiles yet
Guest profiles are auto-created from bookings when you visit this page, or add manually with the button above.
🥉
Bronze
0 – 999 points
5% discount on F&B orders
🥈
Silver
1,000 – 4,999 points
10% off + complimentary early check-in
🥇
Gold
5,000 – 9,999 points
15% off + free room upgrade
💎
Platinum
10,000+ points
20% off + dedicated host + surprises
💡
Points rule: 1 pt per Rs. 100 on room rate · 1 pt per Rs. 200 on F&B · Bonus 50 pts on first visit · Points expire after 24 months of inactivity
⚙️ Guest Preferences Registry
Edit preferences from individual guest profile cards
👤
Guest Profile
⚠️ Possible duplicate:
⚙️ Setup Guide
Complete these 8 steps to fully configure QYRVIA ERP
📊 Progress
0 of 24 tasks complete
🏨 Hotel Profile
🛏️ Room Setup
👤 User Accounts
📦 Inventory
🍽️ Menu
🌐 iCal & OTA
💼 Payroll
📒 Accounting
1
🏨 Hotel Profile
Configure your hotel name, address, contact details, and tax settings. This information appears on all invoices, receipts, and printed documents.
2
🛏️ Room Configuration
Add all rooms with room numbers, types (Standard / Deluxe / Suite / Family), and nightly rates. Rooms are the core of bookings and inventory.
3
👤 User Accounts
Create staff accounts with roles — Admin (full access), Reception (bookings), Kitchen/Store (F&B), Housekeeping (room status only).
4
📦 Inventory Setup
Add all stock items with categories, units, minimum stock quantities (MSQ). Enter opening stock via your first GRN to enable accurate cost tracking.
5
🍽️ Menu & Pricing
Set up your restaurant menu with categories and selling prices. These are used in KOT creation and customer invoicing.
6
🌐 iCal & OTA Channel Manager
Connect Booking.com, Agoda, and Airbnb using iCal sync to prevent double bookings. Re-download and re-upload the .ics file each morning.
7
💼 Payroll & Staff
Add employees with NIC, salary, service charge weight, and weekly off day. The system auto-calculates payroll and SC distribution.
8
📒 Accounting & Chart of Accounts
Review the Chart of Accounts, enter opening cash/bank balances, and run your first PMS Sync to auto-populate journal entries from existing data.
🎉
Setup Complete!
QYRVIA ERP is fully configured. You're ready to manage your hotel operations.
The iCal feed exports all confirmed bookings in standard .ics format (RFC 5545) with VTIMEZONE Asia/Colombo, DTSTAMP, SEQUENCE, UID, and STATUS:CONFIRMED. OTA platforms poll this file to block your availability automatically.
📅 Your iCal Feed URL: /ical/gk-{property-token}.ics — Download & upload to each OTA portal
1
Download the .ics file from Channel Manager
Click Export iCal in the Channel Manager → Push/Pull tab. The file includes VTIMEZONE (Asia/Colombo), DTSTAMP, SEQUENCE headers for full RFC 5545 compliance.
2
🔵 Booking.com — Extranet Import
Login → Extranet → Calendar tab → Import Calendar → Upload the .ics file. Booking.com re-polls every 24 hours. For same-day blocks, also use the manual Stop-Sell button in Extranet.
3
🟠 Agoda — YCS Portal
Login to YCS → Availability → Calendar Sync → Import iCal. Agoda polls every 12–24 hours. Set property to "Manual Availability" mode in YCS settings for best control.
4
🩷 Airbnb — Native iCal
Hosting Calendar → Availability Settings → Sync Calendars → Import Calendar. Airbnb polls every ~1 hour — the fastest of all OTAs. Best for last-minute closures.
5
⚡ Daily Best Practice
Re-download and re-upload the .ics file every morning (takes 2 minutes). Set a phone reminder for 8:00 AM to keep all OTAs in sync with your current bookings.
💡
Pro Tip: For zero double-bookings, enable Stop-Sell in Channel Manager when you're fully booked. This adds a global block event covering all rooms to the iCal feed.
One click pushes flags into AI Command Center → Maintenance Ops
🏷️ Topic Frequency
➕ Log Direct Guest Feedback
📄 Import from CSV File
Upload any CSV with columns: guest_name, rating, text, platform, room, date
Extra columns are ignored. Platform values: google, booking, tripadvisor, manual.
📋 Paste Reviews
Paste one review per line: Rating | Guest Name | Review text | Platform | Room
Example: 5 | John Smith | Great stay! | google | 101
📊 Import History
No imports yet this session.
🔗 Review Link
This link is sent to guests on checkout via WhatsApp. Use your Google Review link, Booking.com, or any review platform URL.
Use {guest} for guest name, {link} for the review URL
📲 Auto WhatsApp on Checkout
When enabled, each checkout opens WhatsApp pre-filled with the review request message. Requires a valid Review URL above.