Skip to main content

Events

Run ticketed events — release parties, dinners, tastings — end to end. Authoring lives at /admin/events (Events"Manage your event definitions"); day-of check-in lives at /events. Tickets themselves are ordinary products: you sell them on a normal POS check, and Avero issues QR tickets the moment the order is paid.

The Events add-on

Events is an entitlement-gated add-on. Without it, /admin/events shows "Events & ticketing""The Events add-on lets you create ticketed events, sell tickets online and at the point of sale, scan QR check-ins, and run day-of operations. Upgrade to enable it, or talk to our team." See Settings for your subscription.

Who can use it

  • Create and edit eventsevents.definitions.manage; publishing needs events.definitions.publish. Managers (and Admins) hold both.
  • Manage workspace — viewing needs events.management.read (Managers, Concierges, Hosts, Wayfinders, Ambassadors); editing needs events.management.update (Managers and Admins).
  • Day-of check-inevents.checkin is held by every front-of-house role (Manager, Concierge, Wayfinder, Host, Ambassador, Server, WineAssociate). Viewing the /events dashboard and ticket lists needs events.instances.read (Managers and Concierges).
  • Planning sheetevents.planning.read to view (most roles), events.planning.update to edit (Managers and Admins).
  • Refund queueevents.refund.manage (Managers and Admins).

Create an event

On /admin/events you'll find three tabs — Dashboard, All events, and Audit log — plus two header buttons: New Event and Refund Queue (with a red badge counting pending refund tasks).

New Event creates a draft named "Untitled Event" and drops you straight into the Event Creation Wizard at /events/:eventDefinitionId/wizard. Five steps:

The Event Creation Wizard — basics, tickets, sessions, capacity, publish.

The Event Creation Wizard — Basics, Ticket Types, Sessions, Capacity, Review.

  1. BasicsEvent Name (required — "Event name is required"), Description, Visibility (Public / Internal), and the venue: Company Location or Offsite / Partner Venue. Offsite events need Venue Name, street address, city, and state, plus a POS & Reporting Location"Required — this company location is used for POS terminal visibility and compliance reports. The event venue above is shown to guests on the storefront."
  2. Ticket TypesAdd Ticket Type with Name (e.g. General Admission), SKU (auto-suggested from the name), and Price ($). You can't continue empty: "Add at least one ticket type to continue".
  3. SessionsAdd Session with start date/time, optional end, and Capacity (defaults to 100, minimum 1). The wizard detects overlaps: "This session overlaps with an existing session" on the form, and "Sessions have overlapping times. Please fix overlaps to continue." page-wide.
  4. Capacity — optional per-ticket-type limits per session: "This step is optional. You can set per-ticket-type limits for each session, or skip ahead." A blank Max Qty means Unlimited, and "Session capacity (N) is always the hard ceiling." This step also holds the event's reservation-policy override.
  5. Review — summary cards plus a validation checklist ("At least one ticket type", "All ticket types have SKU", "At least one session", "No session overlaps", and more). When everything passes, Publish Event goes live — "Event published — Version 1" — and lands you in the manage workspace. Until then: "Fix the issues above before publishing."

The wizard autosaves as you navigate. Save & Exit returns to the events list, where the draft shows a Resume Setup button. If you edit in two tabs at once, the loser sees "Changes were made in another tab. Refresh to continue."

The manage workspace

Every published (or resumed) event opens in the Event Management Workspace at /admin/events/:id/manage. The header shows the event's badges (Private / Brand type, Public / Internal visibility, draft/published status) and two shortcuts — Planning Sheet and, once sessions exist, Check-in (which opens /events).

The Event Management Workspace — the tab bar and draft banner.

The Event Management Workspace — draft banner on top, then the tab bar.

The tab bar runs: Overview, Sessions, Ticket Types, Capacity, Areas, Communications, Event Line Items, Cost, Tasks, Waitlist, Attendees, Discussions, and Version History. Private events additionally get a Private Finance tab (invoices, payment links — needs events.private_finance.manage), and Attendees only shows with events.instances.read.

Drafts and publishing

Edits to a live event go through a draft snapshot, controlled by the banner at the top:

  • Live, no draft — a Live badge ("Version N — all changes are live.") and an Edit Event button.
  • A saved draft exists — "Unpublished draft changes exist." with View Summary, Discard Draft, and Enter Draft.
  • While editing — "Editing Draft — based on vN" with Exit Draft and Publish Changes.

Publish Changes opens a review — "Review the changes below before publishing them live to this event." — with any blockers under "Cannot publish — fix these errors:". Confirm Publish reports "Published — now Live Version N".

Discarding a draft is permanent

Discard Draft warns: "Are you sure you want to discard this draft? All unpublished changes will be lost."Keep Draft / Confirm Discard. There is no undo.

Sell tickets

Ticket types are ordinary catalog items — there is no separate sale screen. Sell them like anything else: add the event's ticket product to a check at the POS, then settle it with any tender (or sell online via the storefront). Avero issues the QR tickets automatically when the order is paid, and capacity is enforced at that moment — an oversold session fails the issue rather than silently overbooking.

Day-of check-in

/events is the check-in and attendance dashboard: pick a location and you get today's event instances with capacity, Active, and Checked In counts (refreshed every 30 seconds), an Event Insights KPI drawer, and card/table views. Each instance row offers Plan and Manage shortcuts. No location selected? "Select a location to view events"; nothing scheduled? "No events for today".

The POS Events dashboard — today's instances with check-in counts.

The Events dashboard at /events — today's instances with capacity and check-in progress.

Selecting an instance opens its ticket list — search by guest and filter by All / Active / Checked In / Voided / Refunded. Tapping a ticket opens Ticket Detail at /events/tickets/:ticketId.

Ticket Detail — the QR code, status, and the Check In action.

Ticket Detail — the ticket's QR code, status, holder, and order.

Two ways to check a guest in (both need events.checkin):

  • Scan the QR — the global scanner (Start QR Scanner) reads the guest's ticket QR with the device camera and confirms — "Check-in confirmed".
  • Tap Check In on the Ticket Detail page — shown while the ticket is Active. Success toasts "Check-in successful" with the timestamp.

A ticket is one of Active, Checked In, Voided, or Refunded. Check-in is atomic — if two stations race, exactly one wins and the other sees "Ticket has already been checked in". Every scan (good or bad) is logged for the audit trail.

The planning sheet

Plan (from the events list, the manage header, or /events) opens the Planning Sheet at /events/:eventDefinitionId/planning — the operational run-sheet for one date. Move between dates with the arrows or Today; a Save button appears once you've changed something (events.planning.update), and saving reports "Planning sheet saved".

The Planning Sheet — leadership, areas and staffing, and task checklists.

The Planning Sheet — KPI strip, Leadership, Areas & Staffing, and the Pre-Event / Day Of / Post-Event checklists.

  • A KPI strip: Capacity, Sold, Checked In, Not Checked In, Revenue — plus inventory warnings.
  • Leadership — assign staff to Event Lead, Ops Lead, Hospitality Lead, and Logistics Lead.
  • Areas & StaffingAdd Area builds the table: Area Name, Surface, Area Lead, Logistics, Ambassadors, Ticket Types, Notes.
  • Three task checklists — Pre-Event, Day Of, Post-Event — each with Add Task; tap a task's status dot to cycle open → in progress → done → blocked, and assign an owner role and person.
  • Free-text Run of Show and Internal Notes (staff-only).

If someone else saves the same sheet first, you'll get "Edit conflict" — reload and re-apply your changes. A banner also warns when the event has unpublished draft changes: "Unpublished draft changes exist and are not yet live."

Refunds — the reconciliation queue

Ticket refunds start like any other refund (see Payments & refunds). Avero then reconciles the refund against the order's tickets: clear cases are resolved automatically (tickets marked refunded, capacity released), and anything ambiguous lands in Refund Reconciliation at /admin/events/refunds"Review and resolve event ticket refund tasks".

Refund Reconciliation — pending event ticket refund tasks.

Refund Reconciliation — the Pending queue, with a Review action per task.

Three tabs — Pending, Resolved, Dismissed — over a table of Reason, Order, Refund Amount, Created, Status. Reasons you'll see:

Reason labelWhy it queued
Partial Refund — Manual RequiredA partial amount that can't be mapped to whole tickets automatically.
Strict PolicyYour event policy routes every ticket refund through manual review.
Checked-In TicketsSome tickets were already scanned — refunding them needs an explicit OK.
Cannot Auto-CalculateMixed ticket types — Avero can't infer which seats to release.

Review opens the Reconciliation Task dialog: the order's tickets with their statuses, the refund amount, and checkboxes to pick the tickets to release. If any selected ticket was scanned, a warning appears — "One or more selected tickets were already scanned at check-in." — and you must tick Allow refunding checked-in tickets to proceed. Then:

  • Refund Selected (N)"Tickets refunded. Capacity released." Freed seats go back on sale (and the session waitlist is notified).
  • Dismiss"No tickets will be refunded and no capacity will be released. This action cannot be undone.""Task dismissed. No capacity released."

Tasks marked Blocking pause further ticket purchases on that order until resolved. An empty Pending tab is the goal: "All refunds have been automatically resolved."

Reference

ControlWhereWhat it does
New Event/admin/events headerCreates a draft and opens the five-step wizard.
Resume SetupEvent row (unfinished)Re-enters the wizard where you left off.
Plan / ManageEvent rowPlanning Sheet for a date / the manage workspace.
Refund Queue/admin/events headerOpens Refund Reconciliation (badge counts pending tasks).
Edit EventManage banner (live)Starts a draft snapshot of the live event.
Publish ChangesManage banner (draft)Reviews and publishes the draft as a new live version.
Check-inManage headerJumps to the /events day-of dashboard.
Start QR ScannerGlobal scannerCamera scan of a guest's ticket QR, then confirm check-in.
Check InTicket DetailChecks in an Active ticket by hand.
Refund Selected (N)Reconciliation TaskMarks tickets refunded and releases their capacity.

Troubleshooting

  • "Add at least one ticket type to continue" / "Add at least one session to continue" — the wizard gates each step; add the missing item.
  • "Sessions have overlapping times. Please fix overlaps to continue." — adjust the session times; the conflicting row is flagged inline.
  • "Changes were made in another tab. Refresh to continue." — the wizard or workspace was edited elsewhere; reload to pick up the latest draft.
  • "Ticket has already been checked in" — a second scan of a used ticket. The detail page shows "Already checked in at [time]".
  • "Ticket has been voided" — the ticket was voided (e.g. refunded upstream); don't admit.
  • "Ticket belongs to a different venue" — the QR is valid but for another company's event; it will not check in here.
  • "QR code format is not recognized" — not an Avero ticket QR. Look the guest up in the instance's ticket list instead and check in from Ticket Detail.
  • "No events for today" — nothing is scheduled at the selected location for today; check the location picker first.