# Booking and confirmation This operation covers the initial hotel booking flow, from when the traveler selects a hotel to when the supplier confirms the reservation. **Webhook used:** [PNR_V3](/openapi/webhookeventapi/webhooks/paths/pnr_v3/post) | Operation | Event trigger | Context | | --- | --- | --- | | `BOOKING_CREATED` | When the hotel confirms the reservation. | The hotel has accepted the reservation and created a booking for the traveler. The `BOOKING_CREATED` event payload will contain the PNR (i.e., the vendor confirmation number) created for this booking. There is no ticketing step for hotel booking. For a pre-paid booking, the payment method is charged immediately when the booking is created. For pay-at-hotel bookings, the traveler still needs to provide a payment method during checkout. When the booking is created, the service fee is charged to the card. For the hotel booking they can pay online later or pay at the hotel at the time of check-in. **Example:** A traveler books a 3-night stay at the Hilton Midtown NYC, from March 15 to March 18, at $250/night prepaid. The hotel confirms the reservation with a confirmation number. The `BOOKING_CREATED` event is sent, and the $750 total + service fee is charged to the payment method. | **Notes:** - The [SERVICE_CHARGE](/openapi/webhookeventapi/webhooks/paths/service_charge/post) event and the `INVOICE_GENERATED` event will be generated after the `BOOKING_CREATED` step for both pre-paid and pay-at-hotel bookings. - For pay-at-hotel bookings, an invoice will be generated for the TMC service fee. ## Hotel booking flow diagram ```mermaid flowchart LR subgraph booking["Booking phase"] A["Traveler searches
for hotels"] --> B["Traveler selects
hotel and room"] B --> C{"Hotel confirms
reservation?"} C -->|Yes| D["BOOKING_CREATED
―――――――――――
Hotel confirms the booking.
Confirmation number assigned.
Prepaid: card is charged.
Pay-at-hotel: no charge yet."] C -->|"No (rare)"| E["No webhook
(booking remains pending)"] end style A fill:#f0f0f0,stroke:#999 style B fill:#f0f0f0,stroke:#999 style D fill:#4CAF50,color:#fff style E fill:#9E9E9E,color:#fff ```