This flow picks up where the Availability Flow ends — once Get Booking Availability has confirmed the slot is available and returned the applicable booking conditions.
Booking conditions
The Get Booking Availability response returns the applicable conditions for the booking. You must present them to the customer and obtain their explicit acceptance before submitting the booking.
- Duration or end-time notice — The reservation has a defined end time, set in the Time Slot. This may vary by work day, shift, or number of guests.
- Cancellation policy terms — The customer must accept the cancellation policy terms and provide a credit card to confirm the reservation.
Overview
Step 1 — Create the booking
Endpoint: POST /bookings
Carry forward the values collected during the availability flow and include the customer data. See the endpoint reference for the full list of fields.
Customer consent
The customer object carries two separate consents, and only one of them is
optional for the customer.
hasGdprConsent — consent to process their personal data so the venue can
manage the booking. false is not accepted and fails with
CUSTOMER_GDPR_CONSENT_REQUIRED: without it there is no customer, and so no
booking. Send true only for a customer who has actually given it.
acceptsMarketing — consent to receive marketing communications. Entirely
the customer’s choice, and false is a normal value.
Notice periods
Restoo allows venues to configure a minimum and maximum advance notice before a Shift or Time Slot. Submitting a booking outside these windows may result in the request being rejected or in the booking requiring manual confirmation by the venue.
Group reservations
When the number of guests exceeds a threshold configured per Work Day and/or Shift, the booking is treated as a group reservation. Group reservations are always created with REQUESTED status and must be manually confirmed by venue staff.
Step 2 — Handle the response
The response includes the full booking object and a redirectUrl.
Redirect the customer
Every create booking response includes a redirectUrl with the page to present to the customer after the booking is created.
- If the booking has a cancellation policy requiring signature: redirecting to
redirectUrl is mandatory. The customer must complete the signature on Restoo’s hosted page before the booking is fully active.
- Otherwise: redirecting to
redirectUrl is recommended. If you choose not to, inform the customer of the booking outcome based on status and any applicable booking conditions — such as a maximum duration or end time.
If the customer does not complete the signature within the allowed timeframe,
the booking is automatically cancelled. Make sure the customer completes
the signature before it expires.
Booking confirmed
The response status is CONFIRMED: the booking is accepted and confirmed by the venue.
Pending venue confirmation
The response status is REQUESTED: the venue does not auto-confirm bookings. Show the customer a “pending confirmation” state — the booking is awaiting manual review by venue staff.
Added to the wait list
The response status is PENDING_WAIT_LIST_BOOKING: the requested shift has no available slots. Show the customer a “you’re on the wait list” state — the booking is not yet confirmed.