E9: Ticket Management & Delivery¶
Overview¶
Bounded Context / Service: Ticket Service, Mobile App
Goal: Generate, deliver, and manage tickets throughout their lifecycle.
Priority: High
Primary User Roles¶
- Fan (ticket holder)
- Admin (for support operations)
Scope¶
In-Scope¶
- Ticket generation with QR code
- Tiered visibility (>4 days, 4d-5h, <5h)
- Anti-screenshot protection (animation, rotating images)
- Digital wallet integration (Apple Wallet, Google Pay)
- Offline mode with cached QR codes
- Transfer options based on permission flag
- Email assignment finality (no change after purchase)
- Away match external PDF ticket handling
- Ticket status transitions (RESERVED, SOLD, USED, CANCELLED, TRANSFERRED)
- Order details view for buyers (summary, payment info, invoice)
- Self-service ticket cancellation with automatic refund
Out-of-Scope¶
- Ticket resale marketplace
- Physical ticket printing for regular sales
Features¶
| ID | Feature | Size | Description |
|---|---|---|---|
| E9-F1 | Ticket Generation with QR Code | S | Create tickets with QR |
| E9-F2 | Tiered Ticket Visibility | S | Time-based visibility rules |
| E9-F3 | Anti-Screenshot Protection | M | Animation and verification images |
| E9-F4 | Digital Wallet Integration | M | Apple Wallet & Google Pay |
| E9-F5 | Ticket Transfer (Self-Service) | M | Transfer for Transfer=YES tickets |
| E9-F6 | Away Match PDF Ticket Handling | M | External PDF ticket distribution |
| E9-F7 | View Order Details | M | Buyer-only order view with invoice |
| E9-F8 | Self-Service Ticket Cancellation | M | Cancel tickets with automatic refund |
Dependencies¶
- QR code generation library
- Apple PassKit API
- Google Passes API
Risks & Open Questions¶
QR Rotation Frequency
How frequently should QR code rotate for anti-screenshot protection?
Offline Cache Duration
How long should QR codes be cached for offline mode?
Related Documentation¶
Last Updated: January 2026