Introduction
When creating a reservation through the Zepl API, you can choose between two booking flows based on your use case: Instant Booking and Pending Confirmation. This determines how the reservation is processed and whether it requires an additional confirmation step.Reservation Types
Instant Booking
INSTANT_BOOKING is the default reservation type. When you create a reservation with this type, it is immediately confirmed — no further action is required.
- The reservation
statusis set toCONFIRMED - The
confirmedAttimestamp is set to the time of creation - Availability is decremented for the booked dates
reservationType field, it defaults to INSTANT_BOOKING.
Pending Confirmation
PENDING_CONFIRMATION creates a reservation that requires an explicit confirmation step before it is finalized. This is useful when you need to review or approve bookings before committing them.
- The reservation
statusis set toPENDING - The
confirmedAtfield isnulluntil confirmed - Availability is still decremented immediately to hold the dates
Even though the reservation is pending, availability is decremented immediately to prevent double bookings for the same dates.
Confirming a Pending Reservation
To confirm a reservation that was created withPENDING_CONFIRMATION, use the confirm endpoint:
- Set the
reservationTypetoCONFIRMED - Set the
statustoCONFIRMED - Set the
confirmedAttimestamp
reservationType of PENDING_CONFIRMATION. Attempting to confirm an INSTANT_BOOKING reservation will return an error.
Cancelling a Reservation
To cancel a reservation, use the cancel endpoint:CONFIRMED status can be cancelled. When a reservation is cancelled:
- The
statusis set toCANCELLED - The
cancelledAttimestamp is set - Availability is restored for the previously booked dates
- For most providers, a cancellation request is sent to the PMS