Overview
Walk-In
Endpoint:POST /bookings/walk-ins
Creates a booking directly in SEATED status — no availability check required. Use this when a customer arrives without a prior reservation.
ticketExternalId acts as an idempotency key — if your POS sends the same ticket ID twice, Restoo returns the existing Walk-In instead of creating a duplicate.
Pre-existing booking — seating the table
Endpoint:PUT /bookings/{uuid}/status
When a customer with a reservation arrives, seat the table by transitioning the booking to SEATED. Valid source statuses: CONFIRMED, ARRIVED, WAIT_LIST_WALK_IN.
Ticket transfer (optional)
Endpoint:PUT /bookings/{uuid}/tickets/transfer
Use this when a POS ticket was opened on the wrong booking and needs to be moved to the correct one. See the endpoint reference for the source and destination parameter conventions.
This endpoint is rarely needed in a standard flow.
Service progression (optional)
Endpoint:PUT /bookings/{uuid}/status
Track optional service stages before closing the ticket. Both DESSERTS and ACCOUNT_SENT are independent — neither is required, and each can be sent without the other. Financial data is only sent when closing the ticket.
Updating tables or party size mid-service
Use the dedicated update endpoints if the table assignment or party size changes during service:PUT /bookings/{uuid}/tables— reassign tablesPUT /bookings/{uuid}/size— update party size
Close ticket
Endpoint:PUT /bookings/{uuid}/tickets/close
Closes the POS ticket and moves the booking to ATTENDED or ACCOUNT_PAID depending on the integration configuration. See the endpoint reference for the full financial summary structure.