Event Payments
Doc Status: Excellent | ✓ Clear summary | ✓ Easy to read | ✓ Matches code | ✓ Good structure | ✓ Professional look | ✓ Visual components
Why This Matters
The Event Payments page gives admins a comprehensive financial view of each event. It shows all payments collected for a specific show occurrence, broken down by payment method (VISA, MASTER, JCB, etc.), with status details. This helps track revenue, identify failed payments, and reconcile the day’s earnings.Staff Journey
Three-Panel Layout
The page uses a three-panel design:- Left Panel (Event Selector): Choose which event to view payments for
- Middle Panel (Payment List): See all payments for the selected event
- Right Panel (Payment Detail): View detailed information about a specific payment
Selecting an Event
Viewing Payment List
The middle panel shows all payments for the selected event:- Each row shows: Guest name, amount, payment method, status
- Payment statuses:
- Success: Payment completed
- Pending: Awaiting confirmation
- Failed: Payment attempt failed
Viewing Payment Details
Click on any payment to see full details in the right panel:- Guest Information: Name, email
- Event Details: Show, date, time
- Order Summary: Tickets, add-ons, totals
- Payment Details:
- Payment method (VISA, MASTER, JCB, VA_VNPAY, etc.)
- Transaction ID
- Amount paid
- Payment status
- Timestamp
Per-Event Financial Summary
When an event is selected, the top of the middle panel shows:- Total revenue
- Ticket breakdown (Dinner vs Show-only counts)
- Count of paid, pending, refunded, and failed payments
- The summary displays ticket type breakdown (Dinner/Show-only) rather than payment method breakdown
- Payment method breakdown would require additional aggregation in the backend query
- The
failedCountfield was added togetEventStatsto track failed payments
Key Concepts
- Payment Method: How the guest paid (credit card types, bank transfer, etc.)
- Transaction ID: Unique identifier from the payment processor
- Payment Status: Current state of the payment (Success, Pending, Failed)
- Event Selector: Left panel for choosing which event to view
Technical Details
Components
Components
| Component | File | Purpose |
|---|---|---|
EventSelector | components/admin/event-payments/event-selector.tsx | Left panel event list |
PaymentList | components/admin/event-payments/payment-list.tsx | Middle panel payment list |
PaymentDetail | components/admin/event-payments/payment-detail.tsx | Right panel payment details |
EventPaymentsProvider | contexts/event-payments-context.tsx | State management for panel selection |
EventPaymentSummary | components/admin/event-payments/event-payment-summary.tsx | Financial summary with revenue and status counts |
Convex API
Convex API
| Query/Mutation | Purpose |
|---|---|
events.listForDashboard | Fetch all events for selector |
reservations.getEventStats | Fetch aggregated stats for selected event |
reservations.getPaidReservationsByEvent | Fetch paid reservations for event |
reservations.getById | Fetch single reservation details |
See Also
Admin Dashboard
Dashboard overview and navigation
Reservations
Viewing and managing reservations
Payments
Payment integration details
Kitchen Display
Kitchen station order display
Reception View
Table overview for reception staff