Bookings
2. Confirm an experience booking
Overview
Confirm the booking after the guest completes payment, using the prebookId and transactionId from the prebook step.
When to Use
- Final booking step - After the guest confirms payment via the Stripe SDK using the prebook's secretKey
What You Get
- status - PENDING_CONFIRMATION right away; final CONFIRMED status arrives via webhook
- price / commission / clientCommission - Your price and earnings for this booking
Quick Start
POST with prebookId, billing, traveler, and payment.method: TRANSACTION_ID. An ERROR status on the underlying cart returns HTTP 502.
Error codes
Product-operation codes are listed below. Shared authentication/access/rate-limit middleware can return common codes such as 401, 40301 or 4290. HTTP status and error code are separate; do not parse message text.
| Code | Meaning |
|---|---|
| 73001 | invalid booking request |
| 73002 | reservation hold has expired; please create a new prebook |
| 73003 | a booking already exists for this prebookId |
| 73004 | payment has not been confirmed yet; complete the Stripe payment before booking |
| 73005 | booking resource not found |
| 73006 | experience booking rejected by provider |
| 73007 | transactionId does not match the prebook payment intent |
| 73008 | booking provider request failed |
| 73009 | booking provider request timed out |
| 73010 | booking request is unauthorized |
| 73011 | booking request is forbidden |
| 73012 | booking service is temporarily unavailable |
| 73013 | booking could not be confirmed in the selected currency |
| 73014 | booking could not be confirmed because the price changed |
| 73099 | failed to create booking |
post/experiences/bookings
Request
- Base URLhttps://api.liteapi.travel/v3.0
- URLhttps://api.liteapi.travel/v3.0/experiences/bookings
- AuthAPI key in header X-API-Key
Request body
Example request
{
"prebookId": "tJHcT_KHA",
"billing": {
"firstName": "Jane",
"lastName": "Doe",
"email": "jane.doe@example.com",
"phoneNumber": "+33123456789",
"countryCode": "FR"
},
"traveler": {
"firstName": "Jane",
"lastName": "Doe",
"email": "jane.doe@example.com",
"phoneNumber": "+33123456789"
},
"payment": {
"transactionId": "tr_cts_test"
},
"customTags": {
"WHITELABEL_DOMAIN": "partner.example"
}
}Response
Booking accepted (PENDING_CONFIRMATION) or idempotent return
Example response
{
"data": {
"bookingId": "ueTM5wXBX",
"prebookId": "tJHcT_KHA",
"status": "PENDING_CONFIRMATION",
"providerStatus": "completed",
"tourId": 903304,
"optionId": 1416025,
"dateTime": "2026-07-18T07:00:00Z",
"price": 101.25,
"commission": 7.5,
"clientCommission": 7.5,
"currency": "EUR",
"voucherCode": "SUMMER25",
"voucherTotalAmount": 10,
"paymentStatus": "succeeded",
"paymentTransactionId": "tr_cts_test",
"refund": {
"refundAmount": 45.5,
"refundType": "full",
"estimateConfidence": "high",
"currency": "EUR",
"sellingPrice": 45.5
},
"customTags": {
"WHITELABEL_DOMAIN": "partner.example"
},
"experienceSnapshot": {
"version": 2
}
}
}Changes
No recorded changes to this operation across all 1 revision of this API.