Skip to content

Rooms + events

The room engine and the event engine share one calendar.

A hotel that hosts events has two things that constantly collide: people sleeping upstairs and people partying downstairs. Every other stack keeps them in separate systems and leaves the collision to the front desk. Here it's a query.

Calendar — bookings and events on the same days
House calendar with room bookings and an event highlighted on overlapping dates

Conflict detection

Book a room over an event and you’re told — before you pay.

This is the feature that made us build one platform instead of bolting ticketing onto a PMS. It only works because bookings and events are rows in the same database.

  • Step 4 of the booking wizard checks every published event against the stay dates
  • The guest sees each event with its date and time and must acknowledge it to continue
  • The acknowledgement is stored on the booking, so “nobody told me” has an answer
  • Publish an event later and every confirmed guest staying those dates gets an email about it
  • Hosts see overlaps on the calendar at a glance
Booking wizard — event notice before payment
Booking wizard showing an event-during-stay notice with an acknowledgement checkbox

Gated booking periods

Some weekends need a password.

Festival weekends, buy-outs, member retreats: the dates are on the calendar, the rooms are bookable, and only the people with the code can book them.

  • A booking period can require an access code before a guest can see availability or rates for those dates
  • Codes are stored hashed, attempts are rate-limited by IP and logged
  • Repeated failures flip the period to “requires review” so you know someone is guessing
  • Periods also carry their own nightly rates and minimum stays, and can be linked to an event
Access-code step on a members-only weekend
Booking wizard asking for an access code for a restricted booking period

Rates & rules

Pricing that resolves itself.

Every price on a booking is a snapshot taken at the moment of booking. Change a rate tomorrow and yesterday's guests still owe what they agreed to.

  • Base rates per room, weekly rates, and booking periods that override both for a date range
  • Rate rules for weekend, holiday and seasonal adjustments
  • Minimum stays per period and arrival-day minimums per room
  • Room blocks for maintenance or owner use
  • Cleaning fees, per-night and per-person add-ons, tax profiles with percentage or flat rules
  • Discount codes with usage limits, scoped to rooms, tickets or both
Rate rules & booking periods
Rate rules and booking periods list

The booking flow

Multi-room, multi-guest, one checkout.

The same booking flow serves your website and the embeddable widget. There's one codebase for it, so there's one behaviour.

  • Book several rooms in one order with a shared group reference
  • Private rooms, shared rooms and entire-floor bookings
  • Square or Stripe payment; card data never touches the server
  • Manual bookings from the desk, and a payment link the guest can settle themselves
  • Import your existing bookings and guests from CSV with column mapping and automatic room matching
  • iCal both ways: publish a feed per room and import Airbnb / VRBO / Google Calendar to block dates
Booking wizard — multi-room
Room booking wizard summary with two rooms selected

Guest self-service

Fewer phone calls.

Everything the guest can do themselves is something the front desk doesn't have to.

  • Guests can extend a stay from their account — availability checked, price quoted, balance charged
  • Cancellation requests go to you for approval with the refund computed from your policy
  • Policies with full-refund and partial-refund windows for rooms and, separately, for tickets
  • Pre-arrival, check-in reminder and post-stay emails on the schedule you set
  • Passkey login — Face ID or Touch ID — with no password to reset
Guest account showing a stay with extend and cancel options
Guest account

Operations

Daily ops, planning, and a watchdog.

The watchdog exists because a broken payment form at 2 a.m. costs a weekend of bookings. It runs every hour and tells you the moment completion rates fall off.

  • Daily Operations: today's arrivals, departures, events and lockers on one screen
  • An event-planning calendar for pencilled-in dates with categories and colours, before anything is published
  • Booking-health monitoring watches checkout sessions and emails you when guests are abandoning at the payment step
  • Team members with per-area permissions; owners keep payment settings to themselves
  • Statements, invoices and a tax report; CSV exports of bookings, guests and tickets
Daily operations
Daily operations dashboard

The full list

Event-during-stay warning with stored acknowledgement
Email to in-house guests when an event is published
Overlap highlighting on the calendar
Access-code booking periods (hashed, rate-limited, logged)
Periods linked to events
Base, weekly and period rates; rate rules
Minimum stays and arrival-day minimums
Room blocks
Private, shared and entire-floor rooms
Multi-room bookings
Add-ons: flat, per night, per person, per night per person, inventory
Tax profiles: percentage, flat per night, flat per booking
Discount codes with caps and scope
Square and Stripe, tokenised on the client
Manual bookings and guest payment links
Balance due tracking
CSV booking & guest import
iCal export per room; iCal import to block dates
Extend stay from the guest account
Cancellation requests with policy-based refunds
Separate cancellation policies for rooms and tickets
Pre-arrival, check-in reminder, post-stay emails
Passkey login
Daily operations screen
Event planning calendar
Booking-health alerts
Team permissions
Statements, invoices, tax report, exports
Referral partners with room-revenue commission

See it with your own property.

Tell us about your hotel or venue and we'll walk you through it on a call — or sign up and start exploring. It's free to set up.