City → Product → Variant → Time Slot → Booking → Ticket
Typical end-user journey
- User selects a city
- Partner fetches all products for that city from their cached catalog data
- User selects a product and variant
- User selects date and time slot
- Partner fetches real-time availability
- Partner reads the pax types for the selected slot from the inventory response, and the user picks how many guests of each type. Pax types are dynamic and can change from slot to slot, so never use a fixed list. See Pax types
- Partner fetches booking input fields for the selected slot
- User enters guest details and initiates payment
- A booking request is created with Headout to confirm availability of the selected slot
- User completes payment
- Booking is confirmed with Headout
- Ticket is generated and delivered. Some bookings have no separate ticket. See Bookings with no tickets
- Booking updates are received via webhooks