Rex

Create and manage ticketed events at your venue

A ticketed event is just a package that sells admission for a specific date — a New Year's Eve party, a holiday brunch, a trivia night. Instead of taking ongoing bookings, you're selling a set number of spots for one occasion, often at more than one price: a VIP ticket and a General Admission ticket, say.

This guide builds one from scratch. The running example is a New Year's Eve party with 200 spots, sold as two ticket types — General Admission and VIP. By the end you'll have a package guests can buy admission to, and a way to check them in at the door.

Before you start

You need a venue with payments connected, and you'll be working inside a package. If you're new to packages, build one first with Create and configure a package — this guide picks up from there and focuses on the event-specific settings.

Create the event package

1

Add a new package

Open the venue hosting the event, go to its Packages, and add a new package. Give it a clear, guest-facing name like "New Year's Eve Party" — this is what shoppers see on your booking page.

VenuesYour VenuePackages

Create your ticket types (VIP and GA)

Different ticket tiers are built with Age Groups. Despite the name, an age group is really just a named, separately-priced ticket type — so you can use them for General Admission and VIP, for Adult and Child pricing, or any tier you sell.

2

Set the Pricing Method to Age Groups

In Package Settings, set the Pricing Method to "Age Groups (flat rate)". This lets each ticket type carry its own fixed price, which is what you want for admission tickets.

PackagesYour PackagePackage Settings
3

Add a ticket type for each tier

Still in Package Settings, find the Age Groups section and click Add Item once per ticket type. For the New Year's Eve example, add one for General Admission and one for VIP.

Each ticket type has these fields:

FieldDescription
Group NameThe ticket name guests see, e.g. "General Admission" or "VIP".
AbbreviationA short label used in tight spaces, e.g. "GA" or "VIP".
Min QtyThe fewest of this ticket a guest must buy in one order. Set 0 to make a tier optional (e.g. VIP), 1 to require at least one.
Max QtyThe most of this ticket allowed in one order. Leave room for groups, or cap it to limit VIP per buyer.
CountWhether this ticket counts toward the event's total capacity. Leave on so every ticket sold draws down your remaining spots.
ℹ️Note

You set the actual price for each ticket type later, on the event's time slot — the slot's rate opens a small editor with a row per ticket type. That step comes after you add the schedule below.

Decide how to track capacity

Before you add the schedule, decide how Rex should count your 200 spots. There are two ways to do this, and the choice changes how the event behaves in the Host App.

Based on Resource Manager

Each ticket is tied to a resource from your Resource Manager, so every booking shows up as a block on the Host App Calendar — you can see and manage them on the floor.

Example: A 60-seat New Year's dinner where you want to see the room fill up.

Best for: Smaller, seated, or assigned events — as a rule of thumb, under about 100 people — where you want each booking visible on the calendar.

Based on Guest Count

Simplest for big events

Capacity is a single number — a total guest cap. There are no per-seat resources to manage; Rex just stops selling when the cap is reached.

Example: A 200-person New Year's party sold as open admission.

Best for: Large general-admission events where individual seats don't matter and you just need a headcount ceiling.

⚠️Warning

Guest Count bookings do NOT appear on the Host App Calendar — the Calendar only plots bookings that are tied to a resource. They aren't lost, though: every guest-count reservation still shows on the Check In page in the Host App, so your team can find guests, check them in, and manage their bookings right from there (the Reservations page lists them too). If seeing bookings on the calendar grid matters to you, use Based on Resource Manager instead.

Add the event schedule

The schedule is where you set the date, the time, the capacity method you chose above, and the price of each ticket type.

4

Add a schedule for the event date

In the package's Schedules section, click Add Schedule. Name it (e.g. "New Year's Eve") and set both the Start Date and End Date to the day of the event — December 31 — so it only sells for that date.

PackagesYour PackageSchedules
5

Set the Schedule Type to match your capacity choice

Set Schedule Type to "Based on Resource Manager" if you want bookings on the calendar, or "Based on Guest Count" for a simple cap. If you chose Guest Count, set the total cap (200) with the Maximum Guests field in Package Settings.

6

Add the event's time slot

Turn on December 31 and add a single time slot for the event — for example 8:00 PM to 1:00 AM. For a one-night party you only need the one slot.

7

Price each ticket type

Open the slot's Rate. Because you chose an Age Groups pricing method, the rate opens a row per ticket type — enter the price for General Admission and the (higher) price for VIP, and make sure both tiers are switched on for the slot. Save the schedule.

💡Tip

Want VIP to sell out separately from GA, or to stop selling VIP at a lower number? Cap each tier with its Max Qty per order, and use Min Qty to make VIP optional (0) while requiring at least one GA (1).

Check guests in with QR codes

For an event, the fastest way to work the door is to let guests check themselves in by QR code. When this is on, each booking confirmation includes a QR code; your team scans it at the entrance and the guest is checked in.

8

Turn on QR check-in for the package

In the package's Host Settings, turn on "Enable QR Code for Check In" so a QR code is generated for every booking. Turn on "Auto Check In on QR Code Scan" as well if you want a scan to check the guest in instantly, with no extra taps.

PackagesYour PackageHost Settings

Your team scans codes with a USB barcode scanner that's been configured for Rex. That's a one-time setup per computer — see Set up a QR code scanner for check-in for how to do it.

At the door, in the Host App:

FieldDescription
Scan the codeScan a guest's QR code with your venue's scanner. The Host App recognizes the code and pulls up the booking — no need to open a menu first.
Successful scanWith Auto Check In on, the guest is checked in immediately and you'll see a "Checked in" confirmation with their name.
Bad or wrong codeIf the code isn't a valid Rex ticket, you'll see an "Unrecognized QR code" message — ask the guest to pull up their confirmation again.
ℹ️Note

Guests who can't find their QR code can still be checked in by hand. Open the Check In page, find their name in the Upcoming list, and check them in there — this works for both capacity methods, including guest-count events that don't appear on the Calendar.

Troubleshooting

My event bookings aren't showing on the Host App Calendar

Possible causes

  • The schedule uses Based on Guest Count, which isn't tied to a resource.

Fix

This is expected for guest-count events. Find and check in those guests from the Check In or Reservations page instead, or switch the schedule to Based on Resource Manager if you need them on the calendar.

Guests only see one price, not separate VIP and GA tickets

Possible causes

  • The Pricing Method isn't an Age Groups type, or a ticket type is switched off for the slot.

Fix

Set the Pricing Method to Age Groups (flat rate), then open the slot's rate and make sure each ticket type is switched on with a price.

The event keeps selling past its capacity

Possible causes

  • No cap is set, or a ticket type has Count switched off.

Fix

For guest-count events, set Maximum Guests. Make sure every ticket type has Count switched on so each sale draws down the total.

Scanning a QR code does nothing

Possible causes

  • QR check-in isn't enabled on the package, or the booking predates turning it on.

Fix

Turn on Enable QR Code for Check In in the package's Host Settings. Codes are generated for bookings made after it's enabled.

Updated Jun 24, 2026

Was this helpful?