Admin Dashboard Specification
Status: Canonical
Last Updated: 2026-05-11
Source: apps/frontend/app/[locale]/dashboard/
Doc Status: Excellent | ✓ All 6 checks passed
Overview
The admin dashboard provides full system access for admins to manage reservations, events, experiences, inquiries, and POS challenges. Route structure includes dashboard home, reservations, events, experiences, inquiries, check-in, event-payments, and POS challenges.Related specs
- Tech Stack — Staff auth and role-based access
- Data Model — References all tables
- Booking Flow — Admin can view reservations
- Staff POS — POS views within admin
- Payments — View payment status per event
- Notifications — Notification center in dashboard
- User Stories — US-A01 through US-A08 cover admin
Route Structure
| Route | Page |
|---|---|
/dashboard | Dashboard home with overview/analytics |
/dashboard/admin | Admin home |
/dashboard/admin/pos/challenges | Challenge management |
/dashboard/events | Experience events list |
/dashboard/experiences | Experience templates |
/dashboard/reservations | All reservations |
/dashboard/inquiries | Inquiry management (kanban) |
/dashboard/checkin | QR scanner |
/dashboard/event-payments | Payment tracking |
Dashboard Home (/dashboard)
Shows:
- Today’s events overview
- Recent reservations
- Quick actions
- Notification bell
Reservations (/dashboard/reservations)
List View
- Paginated table
- Filters: show, date, payment status, ticket type
- Search by name/email
Reservation Detail
- Customer info
- Tickets (type, quantity)
- Add-ons
- Total paid
- Payment status
- QR code
- Actions: cancel, resend confirmation email
Status Badges
| Status | Badge | Meaning |
|---|---|---|
| PENDING | Yellow | Awaiting payment |
| PAID_CONFIRMED | Green | Confirmed |
| CHECKED_IN | Blue | Guest arrived |
| CANCELLED | Red strikethrough | Cancelled |
| REFUNDED | Grey | Refund completed |
Events (/dashboard/events)
List View
- All experienceEvents
- Filter by experience, date range
- Show: date, time, show name, capacity, booked, status
Event Detail
- Edit capacity
- Toggle Show Only tickets
- Override prices
- Cancel event (with customer notification)
Experiences (/dashboard/experiences)
List View
- All experience templates
- Status filter (active, draft, archived)
Experience Editor
- Title, tagline, description
- Embedded video URL
- Photo gallery (multi-upload)
- Ticket type configuration
- Default prices
- Default capacity
- Slug (URL identifier)
Batch Create Events
- Select days of week
- Select time
- Date range (start/end)
- Capacity (inherited or override)
- Generate all occurrences in one click
Inquiries (/dashboard/inquiries)
Kanban Board View
Columns: NEW | READ | REPLIED | ARCHIVEDCard Display
- Form type icon
- Submitter name/email
- Submission date
- Preview of message
Card Actions
- Click — see full details
- Drag to change status
- Add follow-up notes
- Reply button (future: email integration)
Check-In (/dashboard/checkin)
QR Scanner
- Camera-based scanner
- Scan reservation QR code
- Shows guest details
- Mark as checked in
Manual Lookup
- Enter reservation code
- View details
- Manual check-in button
Event Payments (/dashboard/event-payments)
Per-Event Payment Summary
- Event details
- Total revenue
- Payment breakdown by type
- Pending payments
- Failed payments
POS Challenges (/dashboard/admin/pos/challenges)
Challenge Configuration
- Photo Wall: enable/disable, max submissions
- Lucky Spin: enable/disable, prize configuration
- Google Review: enable/disable, reward item
Per-Challenge Stats
- Participation rate
- Submission count
- Winner selection