2. Confirm an experience booking

Overview

Confirm the booking after the guest completes payment, using the prebookId and transactionId from the prebook step. If the account has an enabled credit line and the prebook response included CREDIT in paymentTypes, confirm instead with payment.method: CREDIT — no transactionId is required in that case.

When to Use

  • Final booking step - After the guest confirms payment via the Stripe SDK using the prebook's secretKey
  • Credit line booking - When the prebook response included CREDIT in paymentTypes

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.

For credit line accounts, POST the same body with payment.method: CREDIT and no transactionId. The booking is billed to the credit line instead of captured via Stripe; it fails with 402 if it would exceed the account's billing-period or total-risk limit, or 403 if the account has no enabled credit line.

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.

CodeMeaning
73001invalid booking request
73002reservation hold has expired; please create a new prebook
73003a booking already exists for this prebookId
73004payment has not been confirmed yet; complete the Stripe payment before booking
73005booking resource not found
73006experience booking rejected by provider
73007transactionId does not match the prebook payment intent
73008booking provider request failed
73009booking provider request timed out
73010booking request is unauthorized
73011booking request is forbidden
73012booking service is temporarily unavailable
73013booking could not be confirmed in the selected currency
73014booking could not be confirmed because the price changed
73015voucher no longer active
73016voucher outside its validity period
73017voucher changed since prebook
73018voucher usage limit reached
73019voucher budget exhausted
73099failed to create booking

A voucher applied at prebook is checked again before anything is charged or booked: the booking is refused with HTTP 400 (73015–73019), and nothing is charged, when since the prebook the voucher was deactivated or deleted, its validity period no longer includes the booking time, its discount was changed so that it no longer gives the amount applied at prebook (or its minimum spend was raised above the price), its usage limit was reached by other bookings, or its remaining budget no longer covers the amount applied. The amount is never changed at book: prebook again to apply the voucher as it is now.

Credit line bookings can additionally return HTTP 402 (billing-period or total-risk limit exceeded — see CreditLineOverLimit) or HTTP 403 (no enabled credit line on the account, or credit line suspended).

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
string
required

LiteAPI prebook id from POST /experiences/tours/{id}/prebooks.

billing
object
required
traveler
object
required
payment
object
required
customTags
object

Optional bag of up to 5 user-defined key/value labels persisted with the booking. Keys must match ^[A-Z0-9_-]+$; values are strings up to 255 characters.

Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json