Cancel a hotel booking
Preview the cancellation penalty, then cancel the booking.
Cancelling is two steps. First display the cancellation to see the penalty. Then cancel. Both take the booking UniqueId.
Preview the cancellation
POST/v2/Hotel/HotelCancelDisplay
Access requires the permission hotel_cancel_display
Read the cancellation terms and any penalty before you commit.
Body parameters
| Name | Type | Required | Description |
|---|---|---|---|
SessionId | string | Yes | Your session id. |
UniqueId | string | Yes | The booking id. |
curl -X POST https://api.hermeseus.com/api/v2/Hotel/HotelCancelDisplay \
-H "Content-Type: application/json" \
-d '{
"SessionId": "8f3c81d2-4a5b-4c6d-9e0f-1a2b3c4d5e6f",
"UniqueId": "HB-2026-004417"
}'const res = await fetch("https://api.hermeseus.com/api/v2/Hotel/HotelCancelDisplay", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
SessionId: "8f3c81d2-4a5b-4c6d-9e0f-1a2b3c4d5e6f",
UniqueId: "HB-2026-004417"
})
});
const data = await res.json();import requests
res = requests.post(
"https://api.hermeseus.com/api/v2/Hotel/HotelCancelDisplay",
json={
"SessionId": "8f3c81d2-4a5b-4c6d-9e0f-1a2b3c4d5e6f",
"UniqueId": "HB-2026-004417",
},
)
data = res.json()Response
{
"Success": true,
"UniqueId": "HB-2026-004417",
"CancellationCharge": 0.00,
"Currency": "USD",
"RefundAmount": 148.00,
"Error": null
}Cancel
POST/v2/Hotel/HotelCancel
Access requires the permission hotel_cancel
Body parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
SessionId | string | Yes | - | Your session id. |
UniqueId | string | Yes | - | The booking id. |
CancelActor | integer | No | 0 | Who initiated the cancellation. |
RefundPaymentMode | integer | No | 0 | How the refund is paid back. |
HasAnyCanceledUser | boolean | No | false | Whether a guest was already cancelled. |
POST /api/v2/Hotel/HotelCancel
{
"SessionId": "8f3c81d2-4a5b-4c6d-9e0f-1a2b3c4d5e6f",
"UniqueId": "HB-2026-004417"
}{
"Success": true,
"UniqueId": "HB-2026-004417",
"Status": 30,
"RefundAmount": 148.00,
"Currency": "USD",
"Error": null
}
Two versions.
The v1 paths
/Hotel/HotelCancelDisplay and /Hotel/HotelCancel are the same operations. New integrations should use the v2 paths above.
Errors
| Code | Meaning | Fix |
|---|---|---|
Err0104002 | Hotel booking not found. | Check the UniqueId. |

