Booking Notification
Overview
During the booking process, we'll send you a BookNotif
request message to share reservation details. You just need to check and let us know the reservation status. After that, Travelgate will handle the response from your system, moving forward with the reservation and updating you on the status.
If you have the booking locator, include it in the BookNotif
response, this way we'll include it in our response.
Keep in mind that if there's an issue with the reservation in your system, we'll consider it as not successful (NOK) and we return an error message.
1. Criteria
BookNotif Request
- MerchantPayment
- VCC Payment
- VCC Payment with URL
{
"bookNotif": {
"settings": {
"Supplier": "PTEST",
"Client": "CTEST"
},
"bookDetails": {
"status": "Confirmed",
"references": [
{
"locator": "CLIENTLOCATOR_1",
"type": "Client"
},
{
"locator": "12646464",
"type": "Internal"
}
],
"holder": {
"name": "TestX",
"surName": "TestX",
"personalTitleType": "MR"
},
"hotel": {
"bookingDate": "2025-01-15T14:10:07.878425Z",
"lastModifyDate": "2025-01-15T14:10:07.878425Z",
"checkIn": "2025-02-10T00:00:00",
"checkOut": "2025-02-12T00:00:00",
"hotelCode": "85203",
"hotelName": "TEST HOTEL NAME",
"context": "TGX_PUSH",
"boardCode": "1",
"occupancies": [
{
"occupancyId": 1,
"paxes": [
{
"name": "TestA",
"surName": "TestA",
"personalTitleType": "MR",
"age": 20,
"type": "Adult"
},
{
"name": "TestB",
"surName": "TestB",
"personalTitleType": "MR",
"age": 20,
"type": "Adult"
}
]
}
],
"rooms": [
{
"occupancyRefId": 1,
"code": "STDGV",
"id": "1|20#20|85203|2025-02-10|2|6436089|6436091|1|11|0",
"type": "58090",
"description": "Standard Garden View",
"roomPrice": {
"price": {
"currency": "EUR",
"binding": false,
"net": 480,
"gross": 480,
"netSpecified": true,
"minimumSellingPrice": 0
},
"priceBreakdown": [
{
"price": {
"currency": "EUR",
"binding": false,
"net": 200,
"gross": 200,
"netSpecified": true,
"minimumSellingPrice": 0
},
"startDate": "2025-02-10",
"endDate": "2025-02-11",
"amountType": "Room"
},
{
"price": {
"currency": "EUR",
"binding": false,
"net": 200,
"gross": 200,
"netSpecified": true,
"minimumSellingPrice": 0
},
"startDate": "2025-02-11",
"endDate": "2025-02-12",
"amountType": "Room"
}
]
},
"units": 5,
"ratePlan": {
"code": "BAR",
"name": "BAR RO",
"type": "Package",
"senior": "NoSeniorRate",
"acceptedPayments": [
{
"type": "MerchantPay"
},
{
"type": "CardBookingPay",
"cardTypes": ["VI", "MC"]
}
],
"additionalDetails": {
"SpecificClients": [
{
"code": "cli",
"description": "cli"
}
]
},
"id": 6436089
},
"remarks": [
{
"text": "Test booking"
}
],
"surcharges": [
{
"chargeType": "Included",
"description": "City",
"price": {
"currency": "EUR",
"binding": true,
"net": 64,
"gross": 64,
"netSpecified": true,
"minimumSellingPrice": 64
},
"code": "0"
},
{
"chargeType": "Included",
"description": "Local",
"price": {
"currency": "EUR",
"binding": true,
"net": 16,
"gross": 16,
"netSpecified": true,
"minimumSellingPrice": 16
},
"code": "1"
},
{
"chargeType": "Excluded",
"description": "Supplement to be paid on spot",
"price": {
"currency": "EUR",
"binding": true,
"net": 8,
"gross": 8,
"netSpecified": true,
"minimumSellingPrice": 8
},
"code": "3"
},
{
"chargeType": "Excluded",
"description": "Resort Fee",
"price": {
"currency": "EUR",
"binding": true,
"net": 30,
"gross": 30,
"netSpecified": true,
"minimumSellingPrice": 30
},
"code": "2"
}
],
"cancelPolicy": {
"refundable": true,
"cancelPenalties": [
{
"hoursBefore": 72,
"penaltyType": "Amount",
"currency": "EUR",
"value": 240,
"deadline": "2025-02-06T10:00:00Z"
},
{
"hoursBefore": 0,
"penaltyType": "Amount",
"currency": "EUR",
"value": 480,
"deadline": "2025-02-09T10:00:00Z"
}
]
}
}
],
"boardName": "All_inclusive"
},
"price": {
"currency": "EUR",
"binding": false,
"net": 480,
"gross": 480,
"netSpecified": true,
"minimumSellingPrice": 0
},
"payment": {
"type": "MerchantPay"
},
"company": {
"email": "hotelpush@xmltravelgate.com",
"phone": "123456789",
"address": {
"addressLine": "Carrer ssss Testing ssss",
"city": "Palma",
"postalCode": "07121",
"country": "Spain"
}
}
}
}
}
{
"bookNotif": {
"settings": {
"Supplier": "PTEST",
"Client": "CTEST"
},
"bookDetails": {
"status": "Confirmed",
"references": [
{
"locator": "CLIENTLOCATOR_1",
"type": "Client"
},
{
"locator": "12646464",
"type": "Internal"
}
],
"holder": {
"name": "TestX",
"surName": "TestX",
"personalTitleType": "MR"
},
"hotel": {
"bookingDate": "2025-01-15T14:10:07.878425Z",
"lastModifyDate": "2025-01-15T14:10:07.878425Z",
"checkIn": "2025-02-10T00:00:00",
"checkOut": "2025-02-12T00:00:00",
"hotelCode": "85203",
"hotelName": "TEST HOTEL NAME",
"context": "TGX_PUSH",
"boardCode": "1",
"occupancies": [
{
"occupancyId": 1,
"paxes": [
{
"name": "TestA",
"surName": "TestA",
"personalTitleType": "MR",
"age": 20,
"type": "Adult"
},
{
"name": "TestB",
"surName": "TestB",
"personalTitleType": "MR",
"age": 20,
"type": "Adult"
}
]
}
],
"rooms": [
{
"occupancyRefId": 1,
"code": "STDGV",
"id": "1|20#20|85203|2025-02-10|2|6436089|6436091|1|11|0",
"type": "58090",
"description": "Standard Garden View",
"roomPrice": {
"price": {
"currency": "EUR",
"binding": false,
"net": 480,
"gross": 480,
"netSpecified": true,
"minimumSellingPrice": 0
},
"priceBreakdown": [
{
"price": {
"currency": "EUR",
"binding": false,
"net": 200,
"gross": 200,
"netSpecified": true,
"minimumSellingPrice": 0
},
"startDate": "2025-02-10",
"endDate": "2025-02-11",
"amountType": "Room"
},
{
"price": {
"currency": "EUR",
"binding": false,
"net": 200,
"gross": 200,
"netSpecified": true,
"minimumSellingPrice": 0
},
"startDate": "2025-02-11",
"endDate": "2025-02-12",
"amountType": "Room"
}
]
},
"units": 5,
"ratePlan": {
"code": "BAR",
"name": "BAR RO",
"type": "Package",
"senior": "NoSeniorRate",
"acceptedPayments": [
{
"type": "MerchantPay"
},
{
"type": "CardBookingPay",
"cardTypes": ["VI", "MC"]
}
],
"additionalDetails": {
"SpecificClients": [
{
"code": "cli",
"description": "cli"
}
]
},
"id": 6436089
},
"remarks": [
{
"text": "Test booking"
}
],
"surcharges": [
{
"chargeType": "Included",
"description": "City",
"price": {
"currency": "EUR",
"binding": true,
"net": 64,
"gross": 64,
"netSpecified": true,
"minimumSellingPrice": 64
},
"code": "0"
},
{
"chargeType": "Included",
"description": "Local",
"price": {
"currency": "EUR",
"binding": true,
"net": 16,
"gross": 16,
"netSpecified": true,
"minimumSellingPrice": 16
},
"code": "1"
},
{
"chargeType": "Excluded",
"description": "Supplement to be paid on spot",
"price": {
"currency": "EUR",
"binding": true,
"net": 8,
"gross": 8,
"netSpecified": true,
"minimumSellingPrice": 8
},
"code": "3"
},
{
"chargeType": "Excluded",
"description": "Resort Fee",
"price": {
"currency": "EUR",
"binding": true,
"net": 30,
"gross": 30,
"netSpecified": true,
"minimumSellingPrice": 30
},
"code": "2"
}
],
"cancelPolicy": {
"refundable": true,
"cancelPenalties": [
{
"hoursBefore": 72,
"penaltyType": "Amount",
"currency": "EUR",
"value": 240,
"deadline": "2025-02-06T10:00:00Z"
},
{
"hoursBefore": 0,
"penaltyType": "Amount",
"currency": "EUR",
"value": 480,
"deadline": "2025-02-09T10:00:00Z"
}
]
}
}
],
"boardName": "All_inclusive"
},
"price": {
"currency": "EUR",
"binding": false,
"net": 480,
"gross": 480,
"netSpecified": true,
"minimumSellingPrice": 0
},
"payment": {
"type": "CardBookingPay",
"card": {
"type": "VI",
"cardNumber": "4111111111111111",
"holder": "John Doe",
"expireDate": "12/26",
"cvv": "123"
}
},
"company": {
"email": "hotelpush@xmltravelgate.com",
"phone": "123456789",
"address": {
"addressLine": "Carrer ssss Testing ssss",
"city": "Palma",
"postalCode": "07121",
"country": "Spain"
}
}
}
}
}
{
"bookNotif": {
"settings": {
"Supplier": "PTEST",
"Client": "CTEST"
},
"bookDetails": {
"status": "Confirmed",
"references": [
{
"locator": "CLIENTLOCATOR_1",
"type": "Client"
},
{
"locator": "12646464",
"type": "Internal"
}
],
"holder": {
"name": "TestX",
"surName": "TestX",
"personalTitleType": "MR"
},
"hotel": {
"bookingDate": "2025-01-15T14:10:07.878425Z",
"lastModifyDate": "2025-01-15T14:10:07.878425Z",
"checkIn": "2025-02-10T00:00:00",
"checkOut": "2025-02-12T00:00:00",
"hotelCode": "85203",
"hotelName": "TEST HOTEL NAME",
"context": "TGX_PUSH",
"boardCode": "1",
"occupancies": [
{
"occupancyId": 1,
"paxes": [
{
"name": "TestA",
"surName": "TestA",
"personalTitleType": "MR",
"age": 20,
"type": "Adult"
},
{
"name": "TestB",
"surName": "TestB",
"personalTitleType": "MR",
"age": 20,
"type": "Adult"
}
]
}
],
"rooms": [
{
"occupancyRefId": 1,
"code": "STDGV",
"id": "1|20#20|85203|2025-02-10|2|6436089|6436091|1|11|0",
"type": "58090",
"description": "Standard Garden View",
"roomPrice": {
"price": {
"currency": "EUR",
"binding": false,
"net": 480,
"gross": 480,
"netSpecified": true,
"minimumSellingPrice": 0
},
"priceBreakdown": [
{
"price": {
"currency": "EUR",
"binding": false,
"net": 200,
"gross": 200,
"netSpecified": true,
"minimumSellingPrice": 0
},
"startDate": "2025-02-10",
"endDate": "2025-02-11",
"amountType": "Room"
},
{
"price": {
"currency": "EUR",
"binding": false,
"net": 200,
"gross": 200,
"netSpecified": true,
"minimumSellingPrice": 0
},
"startDate": "2025-02-11",
"endDate": "2025-02-12",
"amountType": "Room"
}
]
},
"units": 5,
"ratePlan": {
"code": "BAR",
"name": "BAR RO",
"type": "Package",
"senior": "NoSeniorRate",
"acceptedPayments": [
{
"type": "MerchantPay"
},
{
"type": "CardBookingPay",
"cardTypes": ["VI", "MC"]
}
],
"additionalDetails": {
"SpecificClients": [
{
"code": "cli",
"description": "cli"
}
]
},
"id": 6436089
},
"remarks": [
{
"text": "Test booking"
}
],
"surcharges": [
{
"chargeType": "Included",
"description": "City",
"price": {
"currency": "EUR",
"binding": true,
"net": 64,
"gross": 64,
"netSpecified": true,
"minimumSellingPrice": 64
},
"code": "0"
},
{
"chargeType": "Included",
"description": "Local",
"price": {
"currency": "EUR",
"binding": true,
"net": 16,
"gross": 16,
"netSpecified": true,
"minimumSellingPrice": 16
},
"code": "1"
},
{
"chargeType": "Excluded",
"description": "Supplement to be paid on spot",
"price": {
"currency": "EUR",
"binding": true,
"net": 8,
"gross": 8,
"netSpecified": true,
"minimumSellingPrice": 8
},
"code": "3"
},
{
"chargeType": "Excluded",
"description": "Resort Fee",
"price": {
"currency": "EUR",
"binding": true,
"net": 30,
"gross": 30,
"netSpecified": true,
"minimumSellingPrice": 30
},
"code": "2"
}
],
"cancelPolicy": {
"refundable": true,
"cancelPenalties": [
{
"hoursBefore": 72,
"penaltyType": "Amount",
"currency": "EUR",
"value": 240,
"deadline": "2025-02-06T10:00:00Z"
},
{
"hoursBefore": 0,
"penaltyType": "Amount",
"currency": "EUR",
"value": 480,
"deadline": "2025-02-09T10:00:00Z"
}
]
}
}
],
"boardName": "All_inclusive"
},
"price": {
"currency": "EUR",
"binding": false,
"net": 480,
"gross": 480,
"netSpecified": true,
"minimumSellingPrice": 0
},
"payment": {
"type": "CardBookingPay",
"card": {
"urlPayment": {
"url": "https://payment.example.com/authorize"
}
}
},
"company": {
"email": "hotelpush@xmltravelgate.com",
"phone": "123456789",
"address": {
"addressLine": "Carrer ssss Testing ssss",
"city": "Palma",
"postalCode": "07121",
"country": "Spain"
}
}
}
}
}
2. Settings
Request Headers
Our system sends BookNotif
messages as POST request with the following headers.
Content Type: Content-Type header provides information about the actual content type of the returned content. In this case, the header is set to:
Content-Type: application/json;charset=UTF-8
Authentication:
Authorization: Basic xxxxxxxxxxxxxxxxx
You need to provide an endpoint to which we will send the bookNotif
and a username and password.
Response Considerations
BookNotif Response
After each request, a response should be provided from yours side. If a bookNotif
request is received, a corresponding bookNotifRs
response should be sent. There are two response options, success or error.
- Success
- Error
{
"bookNotifRs": {
"dateTime": "2025-01-15T14:10:07.878425Z",
"status": "Confirmed",
"references": [
{
"locator": "your_locator",
"type": "Provider"
}
]
}
}
{
"bookNotifRs": {
"dateTime": "2025-01-15T14:10:07.878425Z",
"adviseMessages": [
{
"code": "10",
"description": "HotelCode not found"
}
]
}
}
Inputs
bookNotif * (Object)
Contains the details of the booking notification.
Contains the details of the booking notification.
settings * (Object)
Configuration values related to the supplier ("Supplier") and the client ("Client").
Configuration values related to the supplier ("Supplier") and the client ("Client").
supplier * (String)
Your inventory supplier identifier.
Your inventory supplier identifier.
client * (String)
The inventory client identifier.
The inventory client identifier.
bookDetails * (Object)
Main details of the booking.
Main details of the booking.
status * (Enum of String)
Status of the booking. Possible values:
Confirmed
Cancelled
Status of the booking. Possible values:
Confirmed
Cancelled
nationality (String)
Nationality of the guest (use ISO3166_1_alfa_2).
Nationality of the guest (use ISO3166_1_alfa_2).
market (String)
Market of the guest (use ISO3166_1_alfa_2).
Market of the guest (use ISO3166_1_alfa_2).
references * (Array of Object)
List of references related to the booking.
List of references related to the booking.
locator * (String)
Unique identifier for the reference.
Unique identifier for the reference.
type * (Enum of String)
Type of reference. Possible values:
Client
Internal
Type of reference. Possible values:
Client
Internal
holder * (Object)
Details of the booking holder.
Details of the booking holder.
name * (String)
First name of the holder.
First name of the holder.
surname * (String)
Last name of the holder.
Last name of the holder.
personalTitleType * (Enum of String)
Title of the holder. Possible values:
MR
MRS
MISS
MS
Title of the holder. Possible values:
MR
MRS
MISS
MS
age (Integer)
Age of the holder.
Age of the holder.
contactInfo (Object)
Contact information of the holder.
Contact information of the holder.
email (String)
Email address of the holder.
Email address of the holder.
phone (String)
Phone number of the holder
Phone number of the holder
hotel * (Object)
Hotel details for the booking.
Hotel details for the booking.
bookingDate * (DateTime)
Date when the booking was created.
Date when the booking was created.
lastModifyDate (DateTime)
Date when the booking was last modified.
Date when the booking was last modified.
checkIn * (DateTime)
Check-in date.
Check-in date.
checkOut * (DateTime)
Check-out date.
Check-out date.
hotelCode * (String)
Unique identifier for the hotel.
Unique identifier for the hotel.
context * (String)
Context for the hotel, usually TGX_PUSH
. If you need to use your own hotel codes, please contact with us and we create your own context code.
Context for the hotel, usually
TGX_PUSH
. If you need to use your own hotel codes, please contact with us and we create your own context code.hotelName * (String)
Name of the hotel.
Name of the hotel.
boardCode * (string)
Code of the board.
Code of the board.
boardName * (String)
Name of the board.
Name of the board.
List of possible board names with their corresponding codes:
- 1: All_inclusive
- 2: American
- 3: Bed_And_breakfast
- 4: Buffet_And_breakfast
- 5: Caribbean_breakfast
- 6: Continental_breakfast
- 7: English_breakfast
- 8: European_plan
- 9: Family_plan
- 10: Full_board
- 11: Full_breakfast
- 12: Half_board
- 13: As_brochured
- 14: Room_only
- 15: Self_catering
- 16: Bermuda
- 17: Dinner_And_breakfast
- 18: Family_American
- 19: Breakfast
- 20: Modified
- 255: Full_board_And_drink
- 256: Half_board_And_drink
- 257: All_Inclusive_Premium
- 258: Gala_Dinner
- 259: All_Inclusive_Light
- 260: Bed_And_breakfast_And_Half_board
- 261: All_Inclusive_Limited
- 262: Bed_and_Brunch
- 263: Full_board_wine_and_water
- 264: Half_board_wine_and_water
- 265: All_Inclusive_Plus
- 266: Half_board_Plus
- 267: Full_board_Plus
occupancies * (Array of Object)
List of occupancy information for the booking.
List of occupancy information for the booking.
occupancyId * (Integer)
Identifier for the occupancy.
Identifier for the occupancy.
paxes * (Array of Object)
List of passengers in the occupancy.
List of passengers in the occupancy.
name * (String)
First name of the passenger.
First name of the passenger.
surname * (String)
Last name of the passenger.
Last name of the passenger.
personalTitleType * (Enum of String)
Title of the passenger. Possible values:
MR
MRS
MISS
MS
Title of the passenger. Possible values:
MR
MRS
MISS
MS
age * (Integer)
Age of the passenger.
Age of the passenger.
type * (Enum of String)
Passenger type. Possible values:
Adult
Child
Infant
Passenger type. Possible values:
Adult
Child
Infant
rooms * (Array of Object)
List of room details in the hotel.
List of room details in the hotel.
occupancyRefId * (Integer)
Reference to the occupancy associated with the room.
Reference to the occupancy associated with the room.
code * (String)
Code of the room.
Code of the room.
id * (String)
Booking token.
Booking token.
type * (String)
Internal id type of the room.
Internal id type of the room.
description (String)
Description of the room.
Description of the room.
roomPrice * (Object)
Price details for the room.
Price details for the room.
price * (Object)
Total price for the room.
Total price for the room.
currency * (String)
The currency in which the price is expressed, using the ISO 4217 standard (e.g., "USD" for US dollars, "EUR" for euros).
The currency in which the price is expressed, using the ISO 4217 standard (e.g., "USD" for US dollars, "EUR" for euros).
binding * (Boolean)
Indicates whether the price is binding (true) or not (false). A binding price means that the buyer must sell the product at least at the minimumSellingPrice or the gross price, depending on what the seller requires. If binding is false, the buyer has more flexibility to set the selling price.
Indicates whether the price is binding (true) or not (false). A binding price means that the buyer must sell the product at least at the minimumSellingPrice or the gross price, depending on what the seller requires. If binding is false, the buyer has more flexibility to set the selling price.
net * (Number)
Represents the net amount of the price before adding any commission, taxes, or other charges. It is the base cost of the product that the buyer pays to the seller.
Represents the net amount of the price before adding any commission, taxes, or other charges. It is the base cost of the product that the buyer pays to the seller.
gross * (Number)
The gross amount of the price, including commissions, taxes, or other applicable fees. This represents the total cost of the product without discounts.
The gross amount of the price, including commissions, taxes, or other applicable fees. This represents the total cost of the product without discounts.
minimumSellingPrice * (Number)
Defines the minimum allowable selling price for the product. It serves as a restriction to ensure the buyer does not sell the product below this amount. This field is particularly useful for protecting the sellers's pricing policies and ensuring consistent pricing across sellers.
Defines the minimum allowable selling price for the product. It serves as a restriction to ensure the buyer does not sell the product below this amount. This field is particularly useful for protecting the sellers's pricing policies and ensuring consistent pricing across sellers.
priceBreakdown * (Array of Object)
The PriceBreakdown object provides detailed pricing information for a specific period within a booking. It is used to divide the total price into smaller, date-specific segments.
The PriceBreakdown object provides detailed pricing information for a specific period within a booking. It is used to divide the total price into smaller, date-specific segments.
price * (Object)
Total price for the room.
Total price for the room.
currency * (String)
The currency in which the price is expressed, using the ISO 4217 standard (e.g., "USD" for US dollars, "EUR" for euros).
The currency in which the price is expressed, using the ISO 4217 standard (e.g., "USD" for US dollars, "EUR" for euros).
binding * (Boolean)
Indicates whether the price is binding (true) or not (false). A binding price means that the buyer must sell the product at least at the minimumSellingPrice or the gross price, depending on what the seller requires. If binding is false, the buyer has more flexibility to set the selling price.
Indicates whether the price is binding (true) or not (false). A binding price means that the buyer must sell the product at least at the minimumSellingPrice or the gross price, depending on what the seller requires. If binding is false, the buyer has more flexibility to set the selling price.
net * (Number)
Represents the net amount of the price before adding any commission, taxes, or other charges. It is the base cost of the product that the buyer pays to the seller.
Represents the net amount of the price before adding any commission, taxes, or other charges. It is the base cost of the product that the buyer pays to the seller.
gross * (Number)
The gross amount of the price, including commissions, taxes, or other applicable fees. This represents the total cost of the product without discounts.
The gross amount of the price, including commissions, taxes, or other applicable fees. This represents the total cost of the product without discounts.
minimumSellingPrice * (Number)
Defines the minimum allowable selling price for the product. It serves as a restriction to ensure the buyer does not sell the product below this amount. This field is particularly useful for protecting the sellers's pricing policies and ensuring consistent pricing across sellers.
Defines the minimum allowable selling price for the product. It serves as a restriction to ensure the buyer does not sell the product below this amount. This field is particularly useful for protecting the sellers's pricing policies and ensuring consistent pricing across sellers.
startDate * (String)
The start date for this price breakdown period in ISO 8601 format (e.g., "2025-02-10").
The start date for this price breakdown period in ISO 8601 format (e.g., "2025-02-10").
endDate * (String)
The end date for this price breakdown period in ISO 8601 format (e.g., "2025-02-11").
The end date for this price breakdown period in ISO 8601 format (e.g., "2025-02-11").
amountType * (Enum of String)
Describes the type of amount the price represents. Possible values include:
Standard
Room
Occupancy
AgeRange
AgeRangeOccupancy
Describes the type of amount the price represents. Possible values include:
Standard
Room
Occupancy
AgeRange
AgeRangeOccupancy
promotion (Object)
The Promotion object provides information about any discounts or special offers applied to the price breakdown.
The Promotion object provides information about any discounts or special offers applied to the price breakdown.
discount * (Number)
The discounted amount for the promotion.
The discounted amount for the promotion.
code * (String)
A unique identifier for the promotion or discount.
A unique identifier for the promotion or discount.
name * (String)
A descriptive name for the promotion.
A descriptive name for the promotion.
additionalPaxes (Object)
The AdditionalPaxes object represents the additional guest price supplements. It provides detailed breakdowns for extra adults, children, and infants.
The AdditionalPaxes object represents the additional guest price supplements. It provides detailed breakdowns for extra adults, children, and infants.
extraAdults * (Array of Object)
A list of daily price supplements for additional adults in the booking. Each entry corresponds to one adult.
A list of daily price supplements for additional adults in the booking. Each entry corresponds to one adult.
position * (Integer)
The position of the pax in the booking.
The position of the pax in the booking.
amount * (Number)
Price of the supplement for this passenger. This value is expressed in the currency defined in the parent PriceBreakdown.
Price of the supplement for this passenger. This value is expressed in the currency defined in the parent PriceBreakdown.
extraChildren * (Array of Object)
A list of daily price supplements for additional children in the booking. Each entry corresponds to one child.
A list of daily price supplements for additional children in the booking. Each entry corresponds to one child.
position * (Integer)
The position of the pax in the booking.
The position of the pax in the booking.
amount * (Number)
Price of the supplement for this passenger. This value is expressed in the currency defined in the parent PriceBreakdown.
Price of the supplement for this passenger. This value is expressed in the currency defined in the parent PriceBreakdown.
extraInfants * (Array of Object)
A list of daily price supplements for additional infants in the booking. Each entry corresponds to one infant.
A list of daily price supplements for additional infants in the booking. Each entry corresponds to one infant.
position * (Integer)
The position of the pax in the booking.
The position of the pax in the booking.
amount * (Number)
Price of the supplement for this passenger. This value is expressed in the currency defined in the parent PriceBreakdown.
Price of the supplement for this passenger. This value is expressed in the currency defined in the parent PriceBreakdown.
units * (Integer)
Number of rooms left in our system.
Number of rooms left in our system.
ratePlan * (Object)
The RatePlan object provides detailed information about the pricing plan associated with a room or booking. This includes specific rules, payment options, and additional details about the plan.
The RatePlan object provides detailed information about the pricing plan associated with a room or booking. This includes specific rules, payment options, and additional details about the plan.
code * (String)
A unique identifier for the rate plan (e.g., "BAR" for Best Available Rate).
A unique identifier for the rate plan (e.g., "BAR" for Best Available Rate).
name (String)
A descriptive name for the rate plan (e.g., "Standard Rate" or "Non-Refundable").
A descriptive name for the rate plan (e.g., "Standard Rate" or "Non-Refundable").
type (Enum of String)
Specifies the type of the rate plan or rate rule. Possible values include:
NoRatePlanType
LargeFamily
PublicServant
Negotiated
Package
CanaryResident
BalearicResident
HoneyMoon
Specifies the type of the rate plan or rate rule. Possible values include:
NoRatePlanType
LargeFamily
PublicServant
Negotiated
Package
CanaryResident
BalearicResident
HoneyMoon
senior (Enum of String)
Indicates whether the rate plan is tailored for senior customers. Possible values include:
NoSeniorRate
SeniorRate_55
SeniorRate_60
SeniorRate_65
Indicates whether the rate plan is tailored for senior customers. Possible values include:
NoSeniorRate
SeniorRate_55
SeniorRate_60
SeniorRate_65
acceptedPayments (Array of Object)
A list of accepted payment methods for this rate plan.
A list of accepted payment methods for this rate plan.
type * (Enum of String)
Type of payment method (e.g., MerchantPay, CardBookingPay). The possible values:
LaterPay
: Payment is made at a later stage, such as during check-in or check-out.
MerchantPay
: Payment is processed by the merchant at the time of booking.
CardBookingPay
: Payment is made using a credit card at the time of booking.
CardCheckInPay
: Payment is made using a credit card at the time of check-in.
Type of payment method (e.g., MerchantPay, CardBookingPay). The possible values:
LaterPay
: Payment is made at a later stage, such as during check-in or check-out.MerchantPay
: Payment is processed by the merchant at the time of booking.CardBookingPay
: Payment is made using a credit card at the time of booking.CardCheckInPay
: Payment is made using a credit card at the time of check-in.cardTypes (Array Enum of String)
Specifies the types of credit cards accepted (e.g., VI for Visa, CA for Mastercard). The possible values:
VI
: Visa.
AX
: American Express.
BC
: BC Card.
CA
: MasterCard.
CB
: Carte Blanche.
CU
: China Union Pay.
DS
: Discover Card.
DC
: Diners Club.
T
: Carta Si.
R
: Carte Bleue.
N
: Dankort.
L
: Delta.
E
: Electron.
JC
: Japan Credit Bureau.
TO
: Maestro.
S
: Switch.
EC
: Electronic Cash.
EU
: EuroCard.
TP
: Universal Air Travel Card.
OP
: Optima.
ER
: AirCanadaRnRoute.
XS
: Access.
O
: Others.
Specifies the types of credit cards accepted (e.g., VI for Visa, CA for Mastercard). The possible values:
VI
: Visa.AX
: American Express.BC
: BC Card.CA
: MasterCard.CB
: Carte Blanche.CU
: China Union Pay.DS
: Discover Card.DC
: Diners Club.T
: Carta Si.R
: Carte Bleue.N
: Dankort.L
: Delta.E
: Electron.JC
: Japan Credit Bureau.TO
: Maestro.S
: Switch.EC
: Electronic Cash.EU
: EuroCard.TP
: Universal Air Travel Card.OP
: Optima.ER
: AirCanadaRnRoute.XS
: Access.O
: Others.additionalDetails (Object)
A dictionary of additional details related to the rate plan. Each key is an AdditionalDetailType, and the value is a list of AdditionalDetail objects.
A dictionary of additional details related to the rate plan. Each key is an AdditionalDetailType, and the value is a list of AdditionalDetail objects.
SpecificClients (Array of Object)
Specific clients for the rate plan.
Specific clients for the rate plan.
code * (String)
Code for the specific client.
Code for the specific client.
description * (String)
Description for the specific client.
Example:
...
"additionalDetails": {
"SpecificClients": [
{
"code": "CORP",
"description": "Corporate clients only"
}
]
}
...
Description for the specific client.
Example:
...
"additionalDetails": {
"SpecificClients": [
{
"code": "CORP",
"description": "Corporate clients only"
}
]
}
...
id (Integer)
An internal numerical identifier for the rate plan.
An internal numerical identifier for the rate plan.
surcharges (Array of Object)
Additional fees applied to the room.
Additional fees applied to the room.
chargeType * (Enum of String)
Specifies if the surcharge is Included or Excluded in the final price.
Included
Excluded
Specifies if the surcharge is Included or Excluded in the final price.
Included
Excluded
description * (String)
A textual description of the surcharge.
A textual description of the surcharge.
price * (Object)
Total price for the room.
Total price for the room.
currency * (String)
The currency in which the price is expressed, using the ISO 4217 standard (e.g., "USD" for US dollars, "EUR" for euros).
The currency in which the price is expressed, using the ISO 4217 standard (e.g., "USD" for US dollars, "EUR" for euros).
binding * (Boolean)
Indicates whether the price is binding (true) or not (false). A binding price means that the buyer must sell the product at least at the minimumSellingPrice or the gross price, depending on what the seller requires. If binding is false, the buyer has more flexibility to set the selling price.
Indicates whether the price is binding (true) or not (false). A binding price means that the buyer must sell the product at least at the minimumSellingPrice or the gross price, depending on what the seller requires. If binding is false, the buyer has more flexibility to set the selling price.
net * (Number)
Represents the net amount of the price before adding any commission, taxes, or other charges. It is the base cost of the product that the buyer pays to the seller.
Represents the net amount of the price before adding any commission, taxes, or other charges. It is the base cost of the product that the buyer pays to the seller.
gross * (Number)
The gross amount of the price, including commissions, taxes, or other applicable fees. This represents the total cost of the product without discounts.
The gross amount of the price, including commissions, taxes, or other applicable fees. This represents the total cost of the product without discounts.
minimumSellingPrice * (Number)
Defines the minimum allowable selling price for the product. It serves as a restriction to ensure the buyer does not sell the product below this amount. This field is particularly useful for protecting the sellers's pricing policies and ensuring consistent pricing across sellers.
Defines the minimum allowable selling price for the product. It serves as a restriction to ensure the buyer does not sell the product below this amount. This field is particularly useful for protecting the sellers's pricing policies and ensuring consistent pricing across sellers.
code * (Enum of String)
Code identifying the surcharge. Possible values:
0
: City tax.
1
: Loca tax.
2
: Resort Fee.
3
: Supplement to be paid on spot.
Code identifying the surcharge. Possible values:
0
: City tax.1
: Loca tax.2
: Resort Fee.3
: Supplement to be paid on spot.cancelPolicy (Object)
The cancellation policy for the room.
The cancellation policy for the room.
refundable * (Boolean)
Indicates if the room is refundable or not.
Indicates if the room is refundable or not.
cancelPenalties * (Array of Object)
List of penalties that apply when the booking is canceled.
List of penalties that apply when the booking is canceled.
hoursBefore * (Integer)
The number of hours before the booking's check-in date when this penalty applies. For example, a penalty with hoursBefore: 72 applies if the booking is canceled less than 72 hours before check-in.
The number of hours before the booking's check-in date when this penalty applies. For example, a penalty with hoursBefore: 72 applies if the booking is canceled less than 72 hours before check-in.
penaltyType * (Enum of String)
The type of penalty applied. Possible values include:
Amount
: A fixed monetary penalty.
Nights
: A penalty based on the price of one or more nights.
Percentage
: A percentage of the total booking price.
The type of penalty applied. Possible values include:
Amount
: A fixed monetary penalty.Nights
: A penalty based on the price of one or more nights.Percentage
: A percentage of the total booking price.currency * (String)
The currency in which the penalty is calculated, specified in ISO 4217 format (e.g., "USD", "EUR"). Required if penaltyType is Amount.
The currency in which the penalty is calculated, specified in ISO 4217 format (e.g., "USD", "EUR"). Required if penaltyType is Amount.
value * (Number)
The value of the penalty. Its meaning depends on the penaltyType:
If value is Amount
: this is the fixed monetary value (e.g., 100.0).
If value is Nights
: this represents the number of nights charged as a penalty.
If value is Percentage
: this is the percentage of the total booking price (e.g., 25.0 for 25%).
The value of the penalty. Its meaning depends on the penaltyType:
If value is
Amount
: this is the fixed monetary value (e.g., 100.0).If value is
Nights
: this represents the number of nights charged as a penalty.If value is
Percentage
: this is the percentage of the total booking price (e.g., 25.0 for 25%).deadline (String)
A specific date and time (in ISO 8601 format) when this penalty takes effect. This is often used in addition to hoursBefore for clarity.
A specific date and time (in ISO 8601 format) when this penalty takes effect. This is often used in addition to hoursBefore for clarity.
remarks (Array of Object)
List of remarks or special instructions for the room.
List of remarks or special instructions for the room.
text * (String)
The remark or note related to the room.
The remark or note related to the room.
price * (Object)
Total price for the room.
Total price for the room.
currency * (String)
The currency in which the price is expressed, using the ISO 4217 standard (e.g., "USD" for US dollars, "EUR" for euros).
The currency in which the price is expressed, using the ISO 4217 standard (e.g., "USD" for US dollars, "EUR" for euros).
binding * (Boolean)
Indicates whether the price is binding (true) or not (false). A binding price means that the buyer must sell the product at least at the minimumSellingPrice or the gross price, depending on what the seller requires. If binding is false, the buyer has more flexibility to set the selling price.
Indicates whether the price is binding (true) or not (false). A binding price means that the buyer must sell the product at least at the minimumSellingPrice or the gross price, depending on what the seller requires. If binding is false, the buyer has more flexibility to set the selling price.
net * (Number)
Represents the net amount of the price before adding any commission, taxes, or other charges. It is the base cost of the product that the buyer pays to the seller.
Represents the net amount of the price before adding any commission, taxes, or other charges. It is the base cost of the product that the buyer pays to the seller.
gross * (Number)
The gross amount of the price, including commissions, taxes, or other applicable fees. This represents the total cost of the product without discounts.
The gross amount of the price, including commissions, taxes, or other applicable fees. This represents the total cost of the product without discounts.
minimumSellingPrice * (Number)
Defines the minimum allowable selling price for the product. It serves as a restriction to ensure the buyer does not sell the product below this amount. This field is particularly useful for protecting the sellers's pricing policies and ensuring consistent pricing across sellers.
Defines the minimum allowable selling price for the product. It serves as a restriction to ensure the buyer does not sell the product below this amount. This field is particularly useful for protecting the sellers's pricing policies and ensuring consistent pricing across sellers.
payment * (Object)
Payment method used.
Payment method used.
type * (Enum of String)
Type of payment method (e.g., MerchantPay, CardBookingPay). The possible values:
LaterPay
: Payment is made at a later stage, such as during check-in or check-out.
MerchantPay
: Payment is processed by the merchant at the time of booking.
CardBookingPay
: Payment is made using a credit card at the time of booking.
CardCheckInPay
: Payment is made using a credit card at the time of check-in.
Type of payment method (e.g., MerchantPay, CardBookingPay). The possible values:
LaterPay
: Payment is made at a later stage, such as during check-in or check-out.MerchantPay
: Payment is processed by the merchant at the time of booking.CardBookingPay
: Payment is made using a credit card at the time of booking.CardCheckInPay
: Payment is made using a credit card at the time of check-in.card (Object)
Payment method used.
Payment method used.
type * (Array Enum of String)
Specifies the types of credit cards accepted (e.g., VI for Visa, CA for Mastercard). The possible values:
VI
: Visa.
AX
: American Express.
BC
: BC Card.
CA
: MasterCard.
CB
: Carte Blanche.
CU
: China Union Pay.
DS
: Discover Card.
DC
: Diners Club.
T
: Carta Si.
R
: Carte Bleue.
N
: Dankort.
L
: Delta.
E
: Electron.
JC
: Japan Credit Bureau.
TO
: Maestro.
S
: Switch.
EC
: Electronic Cash.
EU
: EuroCard.
TP
: Universal Air Travel Card.
OP
: Optima.
ER
: AirCanadaRnRoute.
XS
: Access.
O
: Others.
Specifies the types of credit cards accepted (e.g., VI for Visa, CA for Mastercard). The possible values:
VI
: Visa.AX
: American Express.BC
: BC Card.CA
: MasterCard.CB
: Carte Blanche.CU
: China Union Pay.DS
: Discover Card.DC
: Diners Club.T
: Carta Si.R
: Carte Bleue.N
: Dankort.L
: Delta.E
: Electron.JC
: Japan Credit Bureau.TO
: Maestro.S
: Switch.EC
: Electronic Cash.EU
: EuroCard.TP
: Universal Air Travel Card.OP
: Optima.ER
: AirCanadaRnRoute.XS
: Access.O
: Others.cardNumber * (String)
Credit card number.
Credit card number.
holder * (String)
Name of the cardholder.
Name of the cardholder.
expireDate * (String)
Expiry date of the card. Format: MMYY.
Expiry date of the card. Format: MMYY.
cvv * (String)
CVV code of the card.
CVV code of the card.
parameters (Object)
Additional parameters related to the credit card, such as authorization tokens or custom attributes.
Additional parameters related to the credit card, such as authorization tokens or custom attributes.
parameter * (Array of Object)
A list of key-value pairs for additional credit card-related data.
A list of key-value pairs for additional credit card-related data.
key * (String)
The parameter name.
The parameter name.
value * (String)
The parameter value.
The parameter value.
urlPayment (Object)
A URL for secure payment.
A URL for secure payment.
url * (String)
A URL for secure payment processing.
A URL for secure payment processing.
company * (Object)
Information about the company that sends the booking.
Information about the company that sends the booking.
email * (String)
Email address of the company.
Email address of the company.
phone * (String)
Phone number of the company.
Phone number of the company.
bookingCreator (String)
Final Buyers code.
Final Buyers code.
address (Object)
Company address details.
Company address details.
addressLine * (String)
Address line.
Address line.
city * (String)
City name.
City name.
postalCode * (String)
Postal code.
Postal code.
country * (String)
Country name.
Country name.
Returned Fields
bookNotifRs * (Object)
Root object containing the response information.
Root object containing the response information.
dateTime * (DateTime)
Date and time when the booking notification was received.
Date and time when the booking notification was received.
status * (Enum of String)
Status of the booking. Mandatory if the response is successful. Possible values:
Confirmed
: when bookNotif has bookDetails with status Confirmed.
Cancelled
: when bookNotif has bookDetails with status Cancelled.
Status of the booking. Mandatory if the response is successful. Possible values:
Confirmed
: when bookNotif has bookDetails with status Confirmed.Cancelled
: when bookNotif has bookDetails with status Cancelled.references (array of Reference)
locator * (String)
Unique identifier for the reference.
Unique identifier for the reference.
type * (Enum of String)
Type of reference. Possible values:
Provider
Type of reference. Possible values:
Provider
adviseMessages (array of AdviseMessage)
List of advisory messages. Mandatory if the response contains an error.
List of advisory messages. Mandatory if the response contains an error.
code * (Integer)
Error code indicating the issue. Possible values:
-1
Unexpected error
1
Validation error
10
HotelCode not found
11
Invalid dates
14
Invalid derived rate
22
Rooms not found
23
Rates not found
30
Occupancy error
31
RatePlan rate error
38
Credentials not found
50
Confirmation error
60
Cancellation error
Error code indicating the issue. Possible values:
-1
Unexpected error1
Validation error10
HotelCode not found11
Invalid dates14
Invalid derived rate22
Rooms not found23
Rates not found30
Occupancy error31
RatePlan rate error38
Credentials not found50
Confirmation error60
Cancellation errordescription * (String)
Description of the error.
Description of the error.