Booking Cancellation Notification
Stay up-to-date on your bookings
There can be many reasons why a booking might be cancelled. From a change in travel plans to unexpected events, booking cancellations were a part of the journey. At Holidu, it is our responsibility to make sure that our partners are informed of the cancellation of booking made in the Holidu platform in a timely manner. Therefore, we would like to introduce you to our brand-new booking cancellation notification.
By the end of this document, you will have a clear understanding on what you need to know in order to enable the booking cancellation notification.
Before you start
The cancellation notification is not enabled by default, and it is because as a Holidu API partner, you will need to implement a certain degree of logic on your system in order to consume the event successfully.
The requirements of implementing the cancellation notification are the following:
- Have a dedicated endpoint in order to accept the booking cancellation event, and in the future, booking modification event as well.
- Important: Ensure that the endpoint is idempotent. By having an idempotent endpoint, we can ensure that all the cancellation notification request we submitted is processed consistently, as well as simplifying the entire error handling mechanism.
Implementing booking cancellation notification
In the following table, you can find the structure of the cancellation notification request:
{
"holiduBookingId": 3536882,
"providerBookingId": "test_bk-6148266",
"action": "CANCELLATION",
"cancellationFee": {
"amount": 50,
"currency": "EUR"
},
"cancellationReason": "CUSTOMER_UNKNOWN_REASON",
"paymentHandler": "HOLIDU"
}
Where:
Parameter | Type | Required | Usage |
---|---|---|---|
holiduBookingId | Integer | Yes | The booking id on the Holidu system |
providerBookingId | String | Yes | The corresponding booking id on the partner system. |
action | String | Yes | The action of the notification. At the moment, only CANCELLATION is supported. |
cancellationFee | Object | If populated, an object which describes the cancellation fee that the customer needs to bear. Only applicable for Holidu Payment booking. | |
cancellationFee.amount | Integer | If populated, indicates the amount of the cancellation fee. | |
cancellationFee.currency | String | If populated, indicates the currency of the cancellation fee. | |
cancellationReason | String | Yes | The reason of the booking being cancelled. |
paymentHandler | String | Yes | Whether partner or Holidu handles the payment. Possible values are: PARTNER , HOLIDU . |
In return, we expect partner to response to the call with the following JSON structure:
{
"status": "ACKNOWLEDGED"
}
Where:
Parameter | Type | Required | Usage |
---|---|---|---|
status | Integer | Yes | The confirmation that partner ACKNOWLEDGED the request and will perform the needed operation on the partner system side. |
Important
For Holidu Payment bookings, the notification will be initiated only after we have cancelled the booking on Holidu successfully. Therefore, it is important that as soon as partner receives the notification, the corresponding booking is also marked as cancelled on the partner system.
For non Holidu Payment bookings, there is no cancellation notification event triggered at the moment.
In the future it could be possible that an event initiated by a customer request for booking cancellation is pushed. (When partners would acknowledge the request, we would then expect partners to process the cancellation on the timely manner on own systems, as the booking would not be automatically cancelled in Holidu system yet.)
Updated 6 months ago