Skip to main content

Flows

This section covers the step-by-step flows to integrate with Dojo Bookings

info

Where an action is taken on the POS or Dojo Bookings, there is an expected action to update the other system. This API is bidirectional to allow both parties to be in sync in near real time.

The step-by-step guides below change depending on which flow diagram you are looking at. RMS to POS indicates the action was taken on Dojo Bookings platform, whereas POS to RMS indicates the action was taken on the POS.

This flow diagram demonstrates how Dojo Bookings will interact with the POS system for seating guests, when the action of seating them is performed on Dojo Bookings software

Payment Intent Flow

Step 1: Reservation is made ahead of time

POST REST /v1/reservations

REQUEST
RESPONSE
WS CreateReservationV1

A reservation is made ahead of time by a customer using Dojo Bookings platform. This reservation will be sent to the POS on the day the reservation has been made for, containing information such as reservationId, startTime and tableId

Step 2: (Optional) There is an update to the reservation

PUT REST /v1/reservations/{reservationId}

REQUEST
RESPONSE
WS UpdateReservationV1

The customer has the ability to amended their booking, if they update details such as startTime, covers, they have additional guestRequests or a new tableId has been assigned. Dojo bookings will send this to the POS ahead of time ready for the guests to arrive.

Step 3: Reservation is seated using Dojo Bookings, creating a Party

POST REST /v1/parties

REQUEST
RESPONSE
WS CreatePartyV1

Once the guests arrive, the venue hosts seats them at the predefined table. Once seated, Dojo Bookings will generate a dojoPartyId and use the createParty endpoint to update the POS, this request will contain the reservationId so it can be easily be attributed to the correct booking. Dojo provides the dojoPartyId for reference which the POS may use in place of generating a new internal ID, however, as we cannot guarantee uniqueness to the existing set on the POS then this is not recommended.

This step is also applicable if there is a walk in seated, the only difference is the exclusion of the reservationId in this scenario.

Step 4: (Optional) Party is updated using Dojo Bookings

PUT REST /v1/parties/{partyId}

REQUEST
RESPONSE
WS UpdatePartyV1

If an update to the party is made, this allows Dojo to update the POS with additional party information, for example, this could be the party's allergen requirements in the form of guestRequests, a change in booking time, a new expected end-time or a new tableId has been assigned to the party.

Step 5: (Optional) Reservation is cancelled

DELETE REST /v1/reservations/{reservationId}

In the event a guest cancels their reservations, Dojo Bookings will issue a DELETE, to /v1/reservations/{reservationId}. If there is a party already associated, we will also issue a DELETE to /v1/parties/{partyId}