Multi-Booking Cart
Sell more than one booking together in a cart
To use this capability add octo/cart
to your Octo-Capabilities
header.
This capability gives you the ability to book multiple bookings from the same supplier together in a single "cart". In Ventrata we call a "cart" an "order", and that's what it will be referred to in the rest of this document.
Booking Reservation
POST
https://api.ventrata.com/octo/bookings
The first step of the booking process
Request Body
Name | Type | Description |
---|---|---|
orderId | string | The Order ID to add this booking to |
This capability adds the following fields to the booking response:
When using this capability if you omit the orderId
from the original request Ventrata will create a new order (cart) for you behind the scenes and return the orderId
in the response. You can then re-use this orderId
in any future booking requests and the bookings will all get added to the same order.
Create Order
POST
https://api.ventrata.com/octo/orders
Using this endpoint is optional if you prefer to create the order first before creating your first booking.
Request Body
Name | Type | Description |
---|---|---|
currency | string | The currency you want to use. If you're also using the pricing capability. |
expirationMinutes | integer | The expiration time in minutes. |
The Order object has the following fields:
Field | Description |
| The order ID. Use this for future booking reservation requests. |
| The status of the order. Possible values are:
|
| The ISO8601 in UTC when the order will expire. |
| The ISO8601 in UTC when the order was confirmed. |
| An array of booking objects within this order |
| This is the guest contact information, previously this was on the booking |
Retrieve Order
GET
https://api.ventrata.com/octo/orders/:id
A convenient method to retrieve an existing order
Path Parameters
Name | Type | Description |
---|---|---|
:id | string | The order ID |
The meaning of each field is described above.
Extend Order
POST
https://api.ventrata.com/octo/orders/:id/extend
If the order has a status of ON_HOLD and you need more time before confirming the order.
Path Parameters
Name | Type | Description |
---|---|---|
expirationMinutes | integer | How many minutes from now to extend the hold until |
Order Confirmation
POST
https://api.ventrata.com/octo/orders/:id/confirm
Confirm the order and all the bookings it contains.
Request Body
Name | Type | Description |
---|---|---|
contact.fullname | string | The guest's full name |
contact.emailAddress | string | The guest's email address |
contact.phoneNumber | string | The guest's phone number |
contact.locales | string | A list of locales for the guest |
contact.country | string | The country of the guest |
A typical request body would be:
If you're using the cart capability and want to set a resellerReference
you should do so as a booking update as there are no reseller references on the order level.
Once you call this method, each of the bookings contained within the order will be confirmed too.
Order Cancellation
DELETE
https://api.ventrata.com/octo/orders/:id
This cancels the order and any bookings inside it.
Path Parameters
Name | Type | Description |
---|---|---|
:id | string | The order ID |
Request Body
Name | Type | Description |
---|---|---|
reason | string | A text description reason for cancelling |
This endpoint is the same as cancelling the booking except it's on the order level.
Last updated