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:

ParameterTypeRequiredUsage
holiduBookingIdIntegerYesThe booking id on the Holidu system
providerBookingIdStringYesThe corresponding booking id on the partner system.
actionStringYesThe action of the notification. At the moment, only CANCELLATION is supported.
cancellationFeeObjectIf populated, an object which describes the cancellation fee that the customer needs to bear. Only applicable for Holidu Payment booking.
cancellationFee.amountIntegerIf populated, indicates the amount of the cancellation fee.
cancellationFee.currencyStringIf populated, indicates the currency of the cancellation fee.
cancellationReasonStringYesThe reason of the booking being cancelled.
paymentHandlerStringYesWhether 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:

ParameterTypeRequiredUsage
statusIntegerYesThe 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.)