Skip to main content

One Step Book

The One Step Book operation requests a booking confirmation for the specified option criteria. Our system will internally perform the search and quote steps. Confirmation will only be applied if the price of the option is the same or lower than the one specified in the input request.

It provides a concise summary of the option, along with the reservation status. Please note that the returned information may vary depending on the Seller. The returned fields include:

  • holder
  • hotel
  • price
  • cancelPolicy
  • bookingID
  • status (Make sure you add this field to your query in order to receive the reservation status in the one step book response.)
  • clientReference (The booking locator in your system - alphanumerical value.)
  • supplierReference (Make sure you add this field to your query in order to receive the supplier locator in the one step book response.)

Mutation Overview

This mutation offers versatility in book options, with certain fields marked as mandatory (clientReference, holder etc.) and others as optional (language, deltaPrice, paymentCard etc.).

When creating your book mutation, you have three different inputs to fill based on your specific needs:

  1. Input
  2. Settings
  3. Filter
mutation {
hotelX {
book
input: {}
settings: {}
filter: {}
}
}
Remember
It's important to note that even if certain fields in the "criteria" or "settings" inputs are labeled as optional, we still need to use some value internally. This value will either come from your query/mutation request or your default settings. You have the ability to manage your default API settings by visiting the API Settings section on our website.

1. Input

To specify your one step book input you need to use the input HotelOneStepBookInput in your mutation variables. Make sure the values sent in the OneStepBook input match exactly the information received in the offer option you are trying to confirm. This includes fields such as rateRulesExtended, binding, and others.

Important

Any mismatch between the data sent in this request and the details provided by Channel-X (e.g., promotion codes, rate types, refundability, etc.) may result in errors or unsuccessful bookings.

{
"input": {
"clientReference": "test_0123456789",
"language": "es",
"market": "ES",
"nationality": "ES",
"checkIn": "2024-10-28",
"checkOut": "2024-10-29",
"hotel": "1",
"board": "1",
"price": {
"currency": "EUR",
"binding": false,
"net": 146,
"gross": 146
},
"ratePlan": "BAR",
"rateRulesExtended": [
{
"type": "PACKAGE"
},
{
"type": "NON_REFUNDABLE"
}
],
"payment": {
"type": "MERCHANT"
},
"holder": {
"title": "MISS",
"name": "Jane",
"surname": "Doe"
},
"rooms": {
"occupancyRefId": 1,
"code": "2269",
"paxes": [
{
"title": "MISS",
"name": "Jane",
"surname": "Doe",
"age": 30
},
{
"title": "MISS",
"name": "Jane",
"surname": "Doe",
"age": 30
}
]
},
"cancelPolicy": {
"refundable": false
}
}
}

Mandatory input:

  • clientReference (Booking ID in client's system.)
  • holder
  • rooms
  • checkIn
  • checkOut
  • hotel
  • board
  • cancelPolicy
  • payment (If the payment is done by credit card, it's mandatory to specify the payment type and the credit card information.)
  • price: Note that there is a difference on the use of the binding field (inside price node) in the request.
    • In OneStepQuote:
      The binding field is a boolean indicating whether the product must be sold at the specified price or above.

    • In Channel-X:
      The equivalent field is YieldableIndicator, which has an opposite logic:

      • YieldableIndicator = true (or not present): the product can be sold below the price.
      • YieldableIndicator = false: the product cannot be sold below the price (binding = true).

Optional input:

  • language
  • deltaPrice (Indicates price variation permitted by the Buyer.)
  • remarks (Any customer comments for the supplier to consider.)
  • nationality
  • market
  • ratePlan
  • surcharges
  • supplements
  • rateRulesExtended: Make sure to correctly translate the Channel-X values before sending them in the RateRulesExtended input to avoid errors or mismatches.
Channel-X/CodeChannel-X/PromotionCodeChannel-X/RatePlanTypeChannel-X/NonRefundableOneStepQuote/RateRulesType
0No promotion
25Senior 55OLDER55
26Senior 60OLDER60
27Senior 65OLDER65
0No selected
7Large FamilyLARGE_FAMILY
8Public ServantPUBLIC_SERVANT
10NegotiatedNEGOTIATED
11PackagePACKAGE
34Canary ResidentCANARY_RESIDENT
35Balearic ResidentBALEARIC_RESIDENT
36HoneymoonHONEYMOON
TRUENON_REFUNDABLE
Key Recommendations
  • Customize the timeout according to your needs, taking into consideration the maximum values in Book is 180,000ms.

  • Consider that the deltaPrice sets the price tolerance between Quote and Book. For instance, if the Quote stage displays a price of 100€ and the deltaPrice is 5, a change up to 105€ will still secure a confirmed booking.

note

If the option or rate you want to book has a payment type such as DIRECT, CARD_BOOKING, or CARD_CHECK_IN, it is mandatory to provide payment card information when making the booking. This should be done using the PaymentCardInput in the book mutation.

2. Settings

Settings are the common configurations used to construct requests to the supplier/s. By default, we apply the same configuration to all Hotel-X clients.

To specify your quote settings you need to use the input HotelSettingsInput in your query variables:

{
"settings": {
"client": "client_demo",
"context": "HOTELTEST",
"testMode": true,
"timeout": 180000
}
}

Mandatory Settings:

  • client
  • context (You have the flexibility to choose between using the supplier's context or your own, depending on which codes you want to see in the response. If you prefer to receive responses with your custom codes, please ensure that your context code is linked to the mapping files that you've previously uploaded to your FTP account.)
  • timeout (Timeout in milliseconds for supplier connections. Applied to all suppliers; won't close client connection if exceeded.)
Key Recommendations
  • Customize the timeout according to your needs, taking into consideration the maximum values in Book is 180,000ms.

  • Set the auditTransaction to "true" in Book when investigating errors.

3. Filter

Filter allow you to precisely tailor the response according to your preferences.

To specify your filters you need to use the input HotelFilterInput in your query variables. The available filters inside this input are:

  • access (mandatory): Specify the supplier access you want to use to book the option.
  • excludeComparisonFields (optional): If there are specific rate characteristics you prefer not to use internally for finding the option, indicate them here. For example, you may not want us to specifically check for a non-refundable option. You may want us to quote an option with the same other characteristics (hotel, rate, board), and whether the option is refundable or not doesn't matter to you.
{
"filter" : {
"access" : "2",
"excludeComparisonFields" : [
"CANCEL_POLICY"
]
}
}

Response Considerations

Book Status

Once a Book (Reservation) method is run, our API response will provide its book status. This status represents the current status of the reservation and can be categorized into four possible values:

StatusDescription
OKThe reservation was successfully completed without any issues.
ON_REQUESTPlease note that a Book status may change over time: you may receive an ON_REQUEST status in Book response, and after running a Booking Query some seconds later the status may have already changed to OK.
UNKNOWNDuring the reservation process, an issue led to an unknown reservation status. The Buyer is responsible for verifying with the Seller that the booking has been confirmed.

Frequently Asked Questions

What should I do if I receive both an OK status and an error in the same Book response?
If you receive an error and a booking status OK in the Book response, the reservation status prevails over the error. Although you may also run a Booking Query in order to check the status of a reservation, please note that you should always contact the Seller in order to check the actual status of a booking in those cases you receive a booking status different than OK or no response at all.
What is the DeltaPrice? Why should I use it?
The Delta Price indicates the price variation permitted by the Buyer (amount or percentage), so that an error will be returned if the new price does not abide to DeltaPrice. If DeltaPrice is not sent and the integration implements it, we assume that the price range is 0 and the process will continue (price is lower or equal to the price returned in Quote). This field is implemented if it’s native to the Seller or if another Search/Quote request needs to be done in Book. Please note DeltaPrice should be implemented by a Seller in order to be available to a Buyer.

What does DeltaPrice "applyBoth" mean?

  • If the value is 'false' it indicates that one of the conditions (amount or percentage) has to meet the DeltaPrice criteria before reservation.
  • If the value is 'true' it indicates that the new price cannot exceed the amount and percentage indicated by the Buyer.
Why do I receive a status "ON_REQUEST" and a holder name "test" in my reservations the test environment?
In the test environment, it is common for some Sellers to consistently return an ON_REQUEST status. Furthermore, as a standard practice in the test environment, we automatically replace the holder and passenger names with "test".
Will the currency in Book be the same as the currency in Quote?
The currency used for the transaction will remain the same throughout the entire Booking Flow, including cancellation policies.
Do I have to provide real names and ages for all the passengers?
No, you are not required to provide real ages and names for all passengers. You can use default values for each age group and name. The only information that should be real is the holder's information.
How do I define the total number of rooms in my Book request?

To define the number of rooms in your reservation, you need to utilize the occupancyRefId previously returned i n Search response.For instance, for a room of two adults:

"rooms": [
{
"occupancyRefId": 1,
"paxes": [
{
"name": "TestName",
"surname": "Surname",
"age": 30
},
{
"name": "TestName",
"surname": "Surname",
"age": 30
}
]
}
]
What payment details should I add to my Book request?
The payment type and details to be added in your Book request depend on the payment type returned for the option to be booked, note that payment types depend on the commercial agreement established by a Buyer with their Sellers.
Where can I get the Hotel Confirmation Number (HCN)?

Once a booking has been successfully confirmed in Travelgate you may retrieve 2 different locators from its logs:


  • The Buyer's locator (client reference).
  • The Seller's locator (provider reference).

The Seller may also provide a third type of locator, issued by the hotel when it confirms the booking. This is known as the Hotel Confirmation Number (HCN) or Hotel Reference Booking (HRB). Please note we are only able to provide this code if the Seller returns it in their response.

Query Inputs

HotelSettingsInput (INPUT_OBJECT)
Settings are the common configurations used to construct requests to the supplier/s. By default, we apply the same configuration to all Hotel-X clients in our back system.

context(String)

Indicates the context of the I/O codes (hotel, board, room and rates)

client(ID)

Client name set in TGX, present only if the authorization header is of the JWT type. It is used to modify the user initially set in the preload.

timeout(Int)

Specifies the time limit, in milliseconds, for connecting with suppliers. If multiple suppliers are involved, this timeout applies to all of them. If a supplier exceeds this time limit, the connection to that supplier will be cut. However, Travelgate will keep the connection with the client even if this timeout is exceeded. If not set, the value saved in your Hotel-X API default settings will be used.

operationTimeout(Int)

Defines the maximum time, in milliseconds, before an operation is cancelled by our system. Once this time is reached, the operation will be aborted and an error will be returned. This timeout is for the Hotel-X layer and should be set to a higher value than the timeout for suppliers. For example, you could specify timeout as 20000ms and operationTimeout as 22000ms. This means that we will send a timeout of 20000ms to the suppliers and will close the connection at 22000ms if the operationTimeout is exceeded. Optional. @deprecated(reason: "deprecated from 2024-11-11.")

auditTransactions(Boolean)

Returns all the transactions exchanged with the supplier.

businessRules(BusinessRulesInput)

Business rules

optionsQuota(Int)

The maximum number of options returned per board in the search query. If not set, the value saved in your Hotel-X API default settings will be used.

businessRulesType(BusinessRulesType)

Different business rules to filter the returned options. Possible values:

  • CHEAPER_AMOUNT: The cheapest options is returned without exceeding the optionsQuota limit.
  • ROOM_TYPE: Groups the option by room type without exceeding the optionsQuota limit.
suppliers(HotelXSupplierInput)

Array of suppliers. Each one contains its own code, settings and accesses.

settings(SettingsBaseInput)

You can configure an special settings for any supplier. This level overwrites the avail settings level but not the access settings level.

timeout(Int)

Milliseconds before the connection is closed.

auditTransactions(Boolean)

Specifies if the exachanged transactions with the supplier have to be logged or not.

businessRules(BusinessRulesInput)

Business rules

optionsQuota(Int)

The maximum number of options returned per board in the search query. If not set, the value saved in your Hotel-X API default settings will be used.

businessRulesType(BusinessRulesType)

Different business rules to filter the returned options. Possible values:

  • CHEAPER_AMOUNT: The cheapest options is returned without exceeding the optionsQuota limit.
  • ROOM_TYPE: Groups the option by room type without exceeding the optionsQuota limit.
currency(Currency)

Currency in ISO 4217 standard

commitRequired(Boolean)

Indicates if the book will be confirmed in 1 or 2 steps

code  *  (String)

Code that represents a supplier in our system. This information is mandatory.

accesses(HotelXAccessInput)

Array of accesses that can overwrite an existing access information or include a new access for this avail.

accessId  *  (ID)

The accessID used to identify the existing access in our Back Office in order to overwrite it. Acts as an identifier in this search. It can either exist or not.

configuration(ConfigurationInput)

Information required to access the supplier s system.

username(String)

User name for the connection.

password(String)

Password for the connection

urls  *  (UrlsInput)

URL or endpoint for the connection.

search(URI)

Specific URL for Availability method.

quote(URI)

Specific URL for Reservation method.

book(URI)

Specific URL for Valuation method.

generic(URI)

Supplier URL used for multiple methods.

parameters(ParameterInput)

List of parameters with additional required information.

key  *  (String)

Contains the keyword/Id to identify a parameter. This information is mandatory.

value  *  (String)

Contains the parameter values. This information is mandatory.

markets(String)

Source Markets allowed for the Access (use ISO3166_1_alfa_2).

rateRules(RateRulesType)

RateRules allowed for the access. Possible values:

  • NORMAL: NORMAL Used in the RateRulesFilterInput input for the search query to filter and retrieve only options without rate rules.
  • PACKAGE: The product can't be sold separately from another product attached to it, such as a flight.
  • OLDER55: OLDER55 can only be sold to people who are 55 and older.
  • OLDER60: OLDER60 can only be sold to people who are 60 and older.
  • OLDER65: OLDER65 can only be sold to people who are 65 and older.
  • CANARY_RESIDENT: CANARY_RESIDENT is applicable to Canary Islands residents only.
  • BALEARIC_RESIDENT: BALEARIC_RESIDENT is applicable to Balearic Islands residents only.
  • LARGE_FAMILY: LARGE_FAMILY is applicable to large families and is determined by each supplier.
  • HONEYMOON: HONEYMOON is applicable to those who just got married and is determined by each supplier.
  • PUBLIC_SERVANT: PUBLIC_SERVANT is applicable to public servants only.
  • UNEMPLOYED: UNEMPLOYED applies to individuals who are without work.
  • NON_REFUNDABLE: NON_REFUNDABLE is applicable to non refundable options.
  • MOBILE: MOBILE are special rates confirmed by mobile phone.
  • WARRANTY: WARRANTY is applicable to options with cancellation warranty.
  • ESSENTIAL_WORKER: ESSENTIAL_WORKER are special hotel rates for essential workers.
  • NEGOTIATED: NEGOTIATED are special rates offered only to specific buyers.
  • CUSTOM: CUSTOM defines other rates.
settings(SettingsBaseInput)

You can configure an special settings for any access. This level overwrites the search and supplier settings levels.

timeout(Int)

Milliseconds before the connection is closed.

auditTransactions(Boolean)

Specifies if the exachanged transactions with the supplier have to be logged or not.

businessRules(BusinessRulesInput)

Business rules

optionsQuota(Int)

The maximum number of options returned per board in the search query. If not set, the value saved in your Hotel-X API default settings will be used.

businessRulesType(BusinessRulesType)

Different business rules to filter the returned options. Possible values:

  • CHEAPER_AMOUNT: The cheapest options is returned without exceeding the optionsQuota limit.
  • ROOM_TYPE: Groups the option by room type without exceeding the optionsQuota limit.
currency(Currency)

Currency in ISO 4217 standard

commitRequired(Boolean)

Indicates if the book will be confirmed in 1 or 2 steps

plugins(PluginStepInput)

Array of plugins to execute.

step(PluginStepType)

Indicates where the plugin will be executed. @deprecated(reason: "deprecated from 2025-08-25. This property is no longer recommended for use.") Possible values:

  • REQUEST: Plugins executed after the Buyer requests a message to Hotel-X
  • REQUEST_ACCESS: Plugins executed before sending a request to the supplier using access, and after the Accesses have been calculated
  • RESPONSE_OPTION: Plugins executed after the supplier responds a message, applied to every option they return
  • RESPONSE_ACCESS: Plugins executed after all access options have been responded to
  • RESPONSE: Plugins executed before Hotel-X responds the message to the Buyer
pluginsType(PluginsInput)

Indicates the plugin that will be executed.

type(PluginType)

Type of the plugin to execute. @deprecated(reason: "deprecated from 2025-08-25. This property is no longer recommended for use.") Possible values:

  • PRE_STEP: PRE_STEP is the first plugin that will be executed, allowing a full range of operations: splitting arrays, joining arrays, modifying object values, and adding or removing object instances
  • HOTEL_MAP: HOTEL_MAP allows to match Seller and Buyer hotel codes based on contexts
  • BOARD_MAP: BOARD_MAP allows to match Seller and Buyer board codes based on contexts
  • ROOM_MAP: ROOM_MAP allows to match Seller and Buyer room codes based on contexts
  • CURRENCY_CONVERSION: CURRENCY_CONVERSION allows to apply currency conversion over all the prices in one Option
  • MARKUP: MARKUP allows the application of markup over the price
  • AGGREGATION: AGGREGATION allows aggregating multiple supplier options.
  • POST_STEP: POST_STEP is the last plugin that will be executed, allowing a full range of operations: split arrays, join arrays, modify object values, add or remove object instances
  • COMMISSION: COMMISSION plugin allows the user to calculate the commission
  • MARKETS_GROUP: MARKETS_GROUP plugin allows the user to group search result by markets (SO3166_1_alfa_2) with shared options
  • AMENITY_MAP: AMENITY_MAP allows to match Seller and Buyer amenities codes based on contexts
  • PROMOTION_MAP: PROMOTION_MAP allows to match Seller and Buyer promotion codes based on contexts

name  *  (String)

Name of the plugin to execute

enable(Boolean)

Activates or deactivates the plugin behaviour

parameters(ParameterInput)

Parameters of the plugin

key  *  (String)

Contains the keyword/Id to identify a parameter. This information is mandatory.

value  *  (String)

Contains the parameter values. This information is mandatory.

testMode(Boolean)

This flag is only allowed to be used for the access checked as 'TEST.' By default, it is set to 'LIVE.'

clientTokens(String)

Used to identify the origin of the request. This is solely used in plugins.

commitRequired(Boolean)

Indicates if the book will be confirmed in 1 or 2 steps. It only should be used in Book.

HotelFilterInput (INPUT_OBJECT)

access  *  (ID)

excludeComparisonFields(ComparisonField)

Input type to specify fields that must be excluded in order to find the option. If the list is empty, all input fields will be used to find the option with same conditions. Possible values:

  • BOARD
  • CANCEL_POLICY
  • RATE_PLAN
  • RATE_RULES_EXTENDED
  • SURCHARGES
  • SUPPLEMENTS

HotelOneStepBookInput (INPUT_OBJECT)
Input that contains all the required information for booking the option in one step.

checkIn  *  (Date)

Check-in date. Format: YYYY-MM-DD

checkOut  *  (Date)

Check-out date. Format: YYYY-MM-DD

hotel  *  (String)

Hotel code.

rooms  *  (OneStepBookRoomInput)

Rooms within this option.

occupancyRefId(Int)

code  *  (String)

promotions(PromotionInput)

code  *  (String)

name(String)
supplierCode(String)
start(String)
end(String)

paxes  *  (BookPaxInput)

name  *  (String)

Passenger first name

surname  *  (String)

Passenger last name

age  *  (Int)

Passenger age on the day of the check-in

title(PersonalTitleType)

Passenger title. Possible values:

  • MR: To refer to a man. Is not possible know if it is married or single.
  • MRS: To refer to a married woman
  • MISS: To refer to a single woman
  • MS: To refer to a woman. Is not possible know if it is married or single.
  • NOT_SPECIFIED: Deprecated 2025-08-08. PersonalTitleType is optional in inputs and outputs.
birthDate(Date)

Passenger birth date.

idDocuments(IDDocumentInput)

Passenger ID documents.

type  *  (DocumentType)

Document type. Possible values:

  • DNI
  • NIE
  • PASSPORT
  • DRIVER_LICENSE
  • CPF
  • PAN
  • SSN
  • OTHER
number(String)

Document number.

issuer(String)

Document issuer.

issueDate(Date)

Document issue date.

expiryDate(Date)

Document expiry date.

nationality(String)

Document nationality.

otherTypeDescription(String)

Document type other description.

board(String)

Supplier's board code.

language(String)

Language to be used in request.

ratePlan(String)

Option's rate plan code.

rateRulesExtended(HotelOptionRateRuleInput)

RateRules contains all the rules that the option booked must have.

type  *  (RateRulesType)

Rate rule type Possible values:

  • NORMAL: NORMAL Used in the RateRulesFilterInput input for the search query to filter and retrieve only options without rate rules.
  • PACKAGE: The product can't be sold separately from another product attached to it, such as a flight.
  • OLDER55: OLDER55 can only be sold to people who are 55 and older.
  • OLDER60: OLDER60 can only be sold to people who are 60 and older.
  • OLDER65: OLDER65 can only be sold to people who are 65 and older.
  • CANARY_RESIDENT: CANARY_RESIDENT is applicable to Canary Islands residents only.
  • BALEARIC_RESIDENT: BALEARIC_RESIDENT is applicable to Balearic Islands residents only.
  • LARGE_FAMILY: LARGE_FAMILY is applicable to large families and is determined by each supplier.
  • HONEYMOON: HONEYMOON is applicable to those who just got married and is determined by each supplier.
  • PUBLIC_SERVANT: PUBLIC_SERVANT is applicable to public servants only.
  • UNEMPLOYED: UNEMPLOYED applies to individuals who are without work.
  • NON_REFUNDABLE: NON_REFUNDABLE is applicable to non refundable options.
  • MOBILE: MOBILE are special rates confirmed by mobile phone.
  • WARRANTY: WARRANTY is applicable to options with cancellation warranty.
  • ESSENTIAL_WORKER: ESSENTIAL_WORKER are special hotel rates for essential workers.
  • NEGOTIATED: NEGOTIATED are special rates offered only to specific buyers.
  • CUSTOM: CUSTOM defines other rates.
rates(HotelOptionRateInput)

Rates applied to the option

code(String)
supplierCode(String)
description(String)
restrictions(HotelOptionRateRestrictionInput)

type  *  (HotelOptionRateRestrictionType)

Possible values:
  • COMPANY
  • MARKET
  • OTHERS

code  *  (String)

description(String)

price  *  (PriceInput)

Specifies the prices (Gross and Net) that the option booked must have.

currency  *  (Currency)

Currency code indicating which currency should be paid. This information is mandatory.

binding  *  (Boolean)

It indicates if the price indicated in the gross must be respected. That is, the customer can not sell the room / option at a price lower than that established by the supplier. This information is mandatory.

net  *  (Float)

Indicates the net price that the customer must pay to the supplier. This information is mandatory.

gross  *  (Float)

Indicates the retail price that the supplier sells to the customer.

minimumSellingPrice(Float)

Indicates the minimum selling price it can be sold (determined by the seller).

surcharges(SurchargeInput)

List of surcharges that the option booked must have.

code  *  (String)

Indicates the surcharge code.

chargeType  *  (ChargeType)

Indicates the charge types. We need to know whether the supplements have to be paid when the consumer gets to the hotel or beforehand. Possible charge types: Include or Exclude. When include: this surcharge is mandatory and included in the option's price. When exclude: this surcharge is not included in the option's price. Possible values:

  • INCLUDE: The charge is included.
  • EXCLUDE: The charge is excluded.

mandatory  *  (Boolean)

Indicates if the surcharge is mandatory or not. If mandatory, this surcharge will be applied to this option. If the chargeType is excluded the customer will have to pay it directly at the hotel

price  *  (PriceInput)

Indicates the surcharge price.

currency  *  (Currency)

Currency code indicating which currency should be paid. This information is mandatory.

binding  *  (Boolean)

It indicates if the price indicated in the gross must be respected. That is, the customer can not sell the room / option at a price lower than that established by the supplier. This information is mandatory.

net  *  (Float)

Indicates the net price that the customer must pay to the supplier. This information is mandatory.

gross  *  (Float)

Indicates the retail price that the supplier sells to the customer.

minimumSellingPrice(Float)

Indicates the minimum selling price it can be sold (determined by the seller).

description(String)

Specifies the surcharge description.

supplements(SupplementInput)

List of supplements that the option booked must have.

code  *  (String)

Specifies the supplement code.

name(String)

Specifies the supplement name.

description(String)

Specifies the supplement description.

supplementType  *  (SupplementType)

Indicates the supplement type. Possible types: Fee, Ski_pass, Lessons, Meals, Equipment, Ticket, Transfers, Gla, Activity or Null. Possible values:

  • SKI_PASS: A ticket or pass authorizing the holder to ski in a certain place or resort.
  • LESSONS: Lessons of any type that the costumer can take.
  • MEALS: Supplement of a determined meal plan.
  • EQUIPMENT: Extra equipment for a specific purpose.
  • TICKET: Admission to some service.
  • TRANSFERS: Transfers used by the costumer.
  • GALA: Gala: A festive occasion, celebration or special entertainment.
  • ACTIVITY: Activities that the costumer can do.
  • OTHER: Other type of supplement.

chargeType  *  (ChargeType)

Indicates the charge types. We need to know whether the supplements have to be paid when the consumer gets to the hotel or beforehand. Possible charge types: Include or Exclude. When include: this supplement is mandatory and included in the option's price. When exclude: this supplement is not included in the option's price. Possible values:

  • INCLUDE: The charge is included.
  • EXCLUDE: The charge is excluded.

mandatory  *  (Boolean)

Indicates if the supplement is mandatory or not. If mandatory, this supplement will be applied to this option. If the chargeType is excluded the customer will have to pay it directly at the hotel.

durationType(DurationType)

Specifies the duration type. Possible duration types: Range (specified dates) or Open. This field is mandatory for PDI. Possible values:

  • RANGE: Date range is set.
  • OPEN: Not restricted by date.
quantity(Int)

Indicates the quantity of field in the element "unit".

unit(UnitTimeType)

Indicates the unit type. Possible unit types: Day or Hour. Possible values:

  • DAY: Day
  • HOUR: Hour
start(String)

Indicates the effective date of the supplement. Format: YYYY-MM-DD

end(String)

Indicates the expire date of the supplement. Format: YYYY-MM-DD

resort(ResortInput)

Contains information about the resort

code(String)
name(String)
description(String)
price(PriceInput)

Indicates the supplement price.

currency  *  (Currency)

Currency code indicating which currency should be paid. This information is mandatory.

binding  *  (Boolean)

It indicates if the price indicated in the gross must be respected. That is, the customer can not sell the room / option at a price lower than that established by the supplier. This information is mandatory.

net  *  (Float)

Indicates the net price that the customer must pay to the supplier. This information is mandatory.

gross  *  (Float)

Indicates the retail price that the supplier sells to the customer.

minimumSellingPrice(Float)

Indicates the minimum selling price it can be sold (determined by the seller).

nationality(String)

Nationality of the guest (use ISO3166_1_alfa_2) #TODO needed?

cancelPolicy(CancelPolicyInput)

Specifies the cancel policies that the option booked must have.

refundable  *  (Boolean)

cancelPenalties(CancelPenaltyInput)
deadline(String)

penaltyType  *  (CancelPenaltyType)

Possible values:
  • NIGHTS: Indicates the number of nights to be penalized.
  • PERCENT: Indicates the percentage to pay based on the option price.
  • IMPORT: Indicates the exact amount payable.

currency  *  (Currency)

value  *  (Float)

clientReference  *  (String)

Client reference/locator.

market(String)

Targeted zone, country or point-of-sale to be used in request.

payment  *  (PaymentInput)

Information about the option payment. If the payment type is DIRECT, CARD_BOOKING or CARD_CHECK_IN, then is mandatory to specify the payment card information.

type  *  (PaymentType)

Possible values:
  • MERCHANT: Payment is managed by the supplier.
  • DIRECT: Payment is made directly to the actual payee (e.g., the hotel), without involving an intermediary or third party. The payment will be completed at check-in.
  • CARD_BOOKING: Payment is managed by the supplier. The payment is effectuated at the time of booking.
  • CARD_CHECK_IN: Payment is managed by the supplier and is made at the hotel during check-in.
paymentCard(PaymentCardInput)
type(PaymentCardType)

Indicates the supported card type, the supported card for this option is shown in Quote step. Possible values:

  • VI: Visa
  • AX: American Express
  • BC: BC Card
  • CA: MasterCard
  • CB: Carte Blanche
  • CU: China Union Pay
  • DS: Discover
  • 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: Air Canada/RnRoute
  • XS: access
  • O: others

holder  *  (HolderInput)

Contains owner's name.

name  *  (String)

The card holder's name.

surname  *  (String)

The card holder's surname.

title(PersonalTitleType)

Holder’s title. Possible values:

  • MR: To refer to a man. Is not possible know if it is married or single.
  • MRS: To refer to a married woman
  • MISS: To refer to a single woman
  • MS: To refer to a woman. Is not possible know if it is married or single.
  • NOT_SPECIFIED: Deprecated 2025-08-08. PersonalTitleType is optional in inputs and outputs.
contactInfo(ContactInfoInput)

Holder's contact info.

email(Email)

Email contact

phone(PhoneInput)

Phone contact

countryCode  *  (DialingCountryCode)

The combination of one, two or three digits identifying a specific country, countries in an integrated numbering plan, or a specific geographic area (1 to 3 digits)

number  *  (PhoneSubscriberNumber)

Identifies a subscriber for a particular global service

birthDate(Date)

Passenger birth date.

idDocuments(IDDocumentInput)

Passenger ID documents.

type  *  (DocumentType)

Document type. Possible values:

  • DNI
  • NIE
  • PASSPORT
  • DRIVER_LICENSE
  • CPF
  • PAN
  • SSN
  • OTHER
number(String)

Document number.

issuer(String)

Document issuer.

issueDate(Date)

Document issue date.

expiryDate(Date)

Document expiry date.

nationality(String)

Document nationality.

otherTypeDescription(String)

Document type other description.

number  *  (String)

Contains credit card number.

CVC  *  (String)

Contains credit card CVC.

expire  *  (ExpireDateInput)

Contains credit card expiration date.

month  *  (Int)

Month MM

year  *  (Int)

Year yy

isVCC(Boolean)

Indicates if it is a virtual card

virtualCreditCard(VirtualCreditCardInput)

Virtual Credit Card data

activationDate(Date)

The Date from when the card can be charged

deactivationDate(Date)

The date from when the card will no longer be chargeable.

currentBalance(Float)

The amount which can be charged to the card.

currencyCode(Currency)

The ISO currency code of the CurrentBalance.

threeDomainSecurity(ThreeDomainSecurityInput)

Three Domain Security data

version(String)

Three Domain Security Version

DSTransactionID(String)

Universally unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction.

XID(String)

Transaction identifier resulting from authentication processing. Uniquely identifies a 3D Secure check request.

ECI(String)

Electronic Commerce Indicator

CAVV(String)

Cardholder Authentication Verification Value

payerResponse(String)

Payer Authentication Response. It is the response to the Payer Authentication Request. The Payer Authentication Response has an XML structure with the information from the response of the authentication, and it contains a digital certificate as a sign of authenticity.

payerResponseStatus(PayerResponseStatusType)

Payer Authentication Response status Possible values:

  • AUTHENTICATION_SUCCESS: Successful Authentication
  • AUTHENTICATION_FAILED: Failed Authentication
  • AUTHENTICATION_INCOMPLETE: Unable to Complete Authentication
  • TRANSACTION_ATTEMPT_SUCCESS_A: Successful Attempts Transaction
  • TRANSACTION_ATTEMPT_SUCCESS_B: Successful Attempts Transaction
  • AUTHENTICATION_REJECTED: Authentication Rejected (Merchant must not submit for authorisation)
cardEnrolledStatus(ThreeDSCardEnrolledStatusType)

Result of enrollment status of the service request Possible values:

  • CARD_ENROLLED: Card enrolled
  • CARD_NOT_ENROLLED: Card not enrolled
  • CANT_AUTHENTICATE: Can not authenticate
merchantName(String)

Merchant Name

signatureStatus(ThreeDSSignatureStatusType)

Signature value Possible values:

  • SIGNATURE_VALIDATED: Signature of the payer response has been validated successfully
  • SIGNATURE_NOT_VALIDATED: Signature of the payer response could not be validated

holder  *  (HolderInput)

Information of the passenger that holds the booking (has to be complementary to the first passenger)

name  *  (String)

The card holder's name.

surname  *  (String)

The card holder's surname.

title(PersonalTitleType)

Holder’s title. Possible values:

  • MR: To refer to a man. Is not possible know if it is married or single.
  • MRS: To refer to a married woman
  • MISS: To refer to a single woman
  • MS: To refer to a woman. Is not possible know if it is married or single.
  • NOT_SPECIFIED: Deprecated 2025-08-08. PersonalTitleType is optional in inputs and outputs.
contactInfo(ContactInfoInput)

Holder's contact info.

email(Email)

Email contact

phone(PhoneInput)

Phone contact

countryCode  *  (DialingCountryCode)

The combination of one, two or three digits identifying a specific country, countries in an integrated numbering plan, or a specific geographic area (1 to 3 digits)

number  *  (PhoneSubscriberNumber)

Identifies a subscriber for a particular global service

birthDate(Date)

Passenger birth date.

idDocuments(IDDocumentInput)

Passenger ID documents.

type  *  (DocumentType)

Document type. Possible values:

  • DNI
  • NIE
  • PASSPORT
  • DRIVER_LICENSE
  • CPF
  • PAN
  • SSN
  • OTHER
number(String)

Document number.

issuer(String)

Document issuer.

issueDate(Date)

Document issue date.

expiryDate(Date)

Document expiry date.

nationality(String)

Document nationality.

otherTypeDescription(String)

Document type other description.

deltaPrice(DeltaPriceInput)

DeltaPrice represents the allowable price variation between the quote and book methods set by the client. If the new price exceeds this limit, an error will be returned. If DeltaPrice is not provided a default value of 0 is assumed. This means the process will continue if the new price is lower or equal to the price shown in the valuation.

amount(Float)

The amount that will be accepted by the client to be higher than the Quote price. It is returned in the currency of the option.

percent(Float)

The percentage accepted by the client to be higher than the Quote price.

applyBoth  *  (Boolean)

If applyBoth = false: Indicates that one of the conditions (amount or percentage) has to meet the criteria before reservation. If applyBoth = true: Indicates that the new price cannot exceed the amount or percentage indicated by the client.

Returned Fields

HotelOneStepBook (OBJECT)

booking(HotelBookingDetail)
supplierCode(String)

Supplier code of the booking

accessCode(String)

Access code of the booking

reference  *  (Reference)

Booking ID references codes.

client(String)

Client reference booking.

supplier(String)

Supplier reference booking.

hotel(String)

Hotel reference booking

hotelConfirmationNumberStatus(String)

Process Status in order to obtain the hotel confirmation number. If this field is null or empty that means that the status is UNKNOWN. Possible values: "P" => (pending): The booking hasn't been assinged to any operator yet, or it has but the operator did not make the call yet. "R" => (retrying): The operator tried to call the hotel but, for some reason, the call couldn't be completed because of external factors. This means the operator will try to call again later. "NA" => (no answer): The operator tried to call the hotel several times but the hotel did not answer. "C" => (cancelled): The operator has been informed by the hotel that the reservation has been cancelled. "DNE" => (does not exist): The operator has been informed by the hotel that the reservation does not exist. "F" => (fetched): The operator called the hotel and they got the hotel confirmation number (a truly succesful call) "I" => (issued): The operator called the hotel but there were issues. Maybe the hotel is closed, maybe natural disaster situations are alerted for the check-in date, etc.

bookingID(String)

HotelX's booking reference. The BookingID is a unique identifier for each reservation that can be used to perform Booking queries and Cancel mutations in the system. It is not recommended to modify or use this value externally, although it may be useful for identifying and managing reservations within the system. It is important to note that the BookingID value should not be interpreted in any other way beyond its use within the system.

amendmentID(String)

HotelX's amend booking reference

holder(Holder)

Holder's name and surname

name  *  (String)

Holder's name.

surname  *  (String)

Holder's surname.

title(PersonalTitleType)

Holder's title, if return. Possible values:

  • MR: To refer to a man. Is not possible know if it is married or single.
  • MRS: To refer to a married woman
  • MISS: To refer to a single woman
  • MS: To refer to a woman. Is not possible know if it is married or single.
  • NOT_SPECIFIED: Deprecated 2025-08-08. PersonalTitleType is optional in inputs and outputs.
contactInfo(ContactInfo)

Holder's contact information.

email(String)

Email contact

phone(String)

Phone contact

hotel(BookingHotel)

Information about the hotel.

bookingDate(Date)

Creation date of the booking. Format: YYYY-MM-DD

start(Date)

Check-in date for booking Format: YYYY-MM-DD

end(Date)

Check-out date for the booking. Format: YYYY-MM-DD

hotelCode(String)

Code of the hotel in the context selected.

hotelName(String)

Name of the hotel.

boardCode(String)

Code of the board in the context selected.

occupancies(Occupancy)

List of occupancies for the request

id  *  (Int)

Unique ID room in this option.

paxes  *  (Pax)

List of pax of this occupancy.

age  *  (Int)

Passenger age on the day of check-in, which can vary for adults, infants, or babies depending on each supplier's particular age range.

name(String)

Specifies the pax name.

surname(String)

Specifies the pax surname.

title(PersonalTitleType)

Specifies the pax title. Possible values:

  • MR: To refer to a man. Is not possible know if it is married or single.
  • MRS: To refer to a married woman
  • MISS: To refer to a single woman
  • MS: To refer to a woman. Is not possible know if it is married or single.
  • NOT_SPECIFIED: Deprecated 2025-08-08. PersonalTitleType is optional in inputs and outputs.
rooms(BookingRoom)

List of rooms.

occupancyRefId(Int)

ID reference to the occupancy

code(String)

Indicates the room code

description(String)

Description about the room

price(Price)

Total price for all days.

currency  *  (Currency)

Currency code indicating which currency should be paid.

binding  *  (Boolean)

It indicates whether the gross price must be honored, meaning the customer cannot sell the room/option at a price lower than the supplier's established rate.

net  *  (Float)

It indicates the net price that the customer must pay to the supplier. The net price is calculated by substrating the included surcharges from the gross price. (For calculation purposes only)

gross  *  (Float)

Indicates the retail price that the supplier sells to the customer.

exchange  *  (Exchange)

Provides currency information and the applicable rate for the results returned by the Supplier

currency  *  (Currency)

Provide information about the currency of origin

rate  *  (Float)

Provides information about the rate applied over results

markups(Markup)

Informs markup applied over supplier price.

channel(String)

channel of markup application.

currency  *  (Currency)

Currency code indicating which currency should be paid. This information is mandatory.

binding  *  (Boolean)

It indicates if the price indicated in the gross must be respected. In case minimumSellingPrice is not empty, the binding indicates instead that the minimumSellingPrice must be respected. That is, the customer can not sell the room / option at a price lower than that established by the supplier. This information is mandatory.

net  *  (Float)

Indicates the net price that the customer must pay to the supplier plus the markup. This information is mandatory.

gross(Float)

Indicates the retail price that the supplier sells to the customer plus the markup.

exchange  *  (Exchange)

Informs about the currency of origin, and the rate applied over result. This information is mandatory.

currency  *  (Currency)

Provide information about the currency of origin

rate  *  (Float)

Provides information about the rate applied over results

rules  *  (Rule)

Breakdown of the applied rules for a markup

id  *  (String)

rule identifier

name(String)

rule name

type  *  (MarkupRuleType)

type of the value Possible values:

  • PERCENT: Indicates the percentage applied by a rule.
  • IMPORT: Indicates the exact amount applied by a rule.

value  *  (Float)

value applied by this rule

minimumSellingPrice(Float)

Indicates the minimum selling price it can be sold (determined by the Seller). Is is specified (not null), that field takes preference to Gross and Binding.

price(Price)

Indicates the current price (Gross and Net) of the booked option. In the 'book' mutation, it shows the reservation price. In the 'booking' query (booking read), it reflects the current price; for example, it could be 0 if the reservation is cancelled and fully refundable, or the cancellation fee if there is any cost. If the provider is unable to return the current price in the query, the price returned by the provider will be used.

currency  *  (Currency)

Currency code indicating which currency should be paid.

binding  *  (Boolean)

It indicates whether the gross price must be honored, meaning the customer cannot sell the room/option at a price lower than the supplier's established rate.

net  *  (Float)

It indicates the net price that the customer must pay to the supplier. The net price is calculated by substrating the included surcharges from the gross price. (For calculation purposes only)

gross  *  (Float)

Indicates the retail price that the supplier sells to the customer.

exchange  *  (Exchange)

Provides currency information and the applicable rate for the results returned by the Supplier

currency  *  (Currency)

Provide information about the currency of origin

rate  *  (Float)

Provides information about the rate applied over results

markups(Markup)

Informs markup applied over supplier price.

channel(String)

channel of markup application.

currency  *  (Currency)

Currency code indicating which currency should be paid. This information is mandatory.

binding  *  (Boolean)

It indicates if the price indicated in the gross must be respected. In case minimumSellingPrice is not empty, the binding indicates instead that the minimumSellingPrice must be respected. That is, the customer can not sell the room / option at a price lower than that established by the supplier. This information is mandatory.

net  *  (Float)

Indicates the net price that the customer must pay to the supplier plus the markup. This information is mandatory.

gross(Float)

Indicates the retail price that the supplier sells to the customer plus the markup.

exchange  *  (Exchange)

Informs about the currency of origin, and the rate applied over result. This information is mandatory.

currency  *  (Currency)

Provide information about the currency of origin

rate  *  (Float)

Provides information about the rate applied over results

rules  *  (Rule)

Breakdown of the applied rules for a markup

id  *  (String)

rule identifier

name(String)

rule name

type  *  (MarkupRuleType)

type of the value Possible values:

  • PERCENT: Indicates the percentage applied by a rule.
  • IMPORT: Indicates the exact amount applied by a rule.

value  *  (Float)

value applied by this rule

minimumSellingPrice(Float)

Indicates the minimum selling price it can be sold (determined by the Seller). Is is specified (not null), that field takes preference to Gross and Binding.

quotePrice(PriceChange)

Specifies the price of the previous OptionQuote, returned only if it differs from the price shown at the Quote Option. If the price remains unchanged, this field will be returned as Null.

currency  *  (String)

The currency of previous option.

net  *  (Float)

The net value of previous option.

gross  *  (Float)

The gross value of previous option.

binding  *  (Boolean)

Indicates if previous option price was binding or not

cancelPolicy(CancelPolicy)

Specifies cancel policies of the returned option .

refundable  *  (Boolean)

Indicates if the option is refundable or non-refundable

cancelPenalties(CancelPenalty)

List of cancellation penalties

deadline(DateTime)

Cancellation fees will be applicable between this date and check-in date

isCalculatedDeadline  *  (Boolean)

Specifies if the deadline has been taken from the seller’s response (false) or has been calculated by Travelgate (true)

penaltyType  *  (CancelPenaltyType)

Type of penalty; this can be Nights, Percent or Import Possible values:

  • NIGHTS: Indicates the number of nights to be penalized.
  • PERCENT: Indicates the percentage to pay based on the option price.
  • IMPORT: Indicates the exact amount payable.

currency  *  (Currency)

Currency used in the cancellation policy

value  *  (Float)

Value of the cancellation policy

description(String)

Extra details and information about supplier's cancel policies to give a further insight. This information is not supported for all the suppliers.

remarks(String)

Additional information about the book.

status  *  (BookStatusType)

Booking Status. The possible values for this field are specified in our documentation. Possible values for book mutation and booking query: https://docs.travelgate.com/docs/apis/for-buyers/hotel-x-pull-buyers-api/booking-flow/book#book-status Possible values for cancel mutation: https://docs.travelgate.com/docs/apis/for-buyers/hotel-x-pull-buyers-api/booking-management/cancel#cancel-status Possible values:

  • OK: The reservation was completed sucessfully.
  • ON_REQUEST: The reservation was successfully completed; however, the product is currently unavailable, placing the reservation on a waiting list. It is the client's responsibility to confirm the status of the booking.
  • CANCELLED: The status of the booking is cancelled.
  • UNKNOWN: The reservation process itself may encounter problems, leading to an unknown reservation status. It is the client's responsibility to verify the booking's status.
billingSupplierCode(String)

Supplier’s billing code. It will be returned if the supplier has different billing accounts and this is informed in the reservation.

payable(String)

Payable.

addOns(AddOns)

Additional details provided by the different layers involved in the transaction.

distribution(AddOn)

Extra information from the Distribution layer.

key  *  (String)

Contains keyword/ID to identify the AddOn.

value  *  (JSON)

Contains AddOn values.

supplier(AddOn)

Extra information from the Supplier layer.

key  *  (String)

Contains keyword/ID to identify the AddOn.

value  *  (JSON)

Contains AddOn values.

paymentInfo(GeneratedPaymentInfo)

Specifies the information about the payment generated at Book step.

generatedCard(PaymentCardData)

Specifies the information of the payment card, and the source of it, that has been generated at Book step

active  *  (Date)

Contains the Payment Card activation date.

CVC  *  (CVC)

Contains Payment Card security code (CVC).

expire  *  (Date)

Contains the Payment Card expiration date.

holder  *  (Holder)

Contains owner's name.

name  *  (String)

Holder's name.

surname  *  (String)

Holder's surname.

title(PersonalTitleType)

Holder's title, if return. Possible values:

  • MR: To refer to a man. Is not possible know if it is married or single.
  • MRS: To refer to a married woman
  • MISS: To refer to a single woman
  • MS: To refer to a woman. Is not possible know if it is married or single.
  • NOT_SPECIFIED: Deprecated 2025-08-08. PersonalTitleType is optional in inputs and outputs.
contactInfo(ContactInfo)

Holder's contact information.

email(String)

Email contact

phone(String)

Phone contact

id  *  (ID)

Contains the generated card ID. It is provided by a third party supplier.

number  *  (CardNumber)

Contains credit card number.

type  *  (PaymentCardType)

Indicates the supported card type. Possible values:

  • VI: Visa
  • AX: American Express
  • BC: BC Card
  • CA: MasterCard
  • CB: Carte Blanche
  • CU: China Union Pay
  • DS: Discover
  • 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: Air Canada/RnRoute
  • XS: access
  • O: others
status(PaymentCardStatus)

Indicates the credit card status. Possible values:

  • CREATED: Payment card created correctly.
  • CANCELED: Payment card canceled correctly.
  • EXPIRED: Payment card expired.
  • ACTIVE: Payment card is active.
  • UNKNOWN: When Payment card is UNKNOWN, the buyer needs to check with the VCC provider to ensure if some payment has been made.

id  *  (String)

Payment identification generated by the payment supplier. This field is only returned in Book step, when the card is generated.

method(GeneratedPaymentMethodType)

Indicates the payment method used, which depends on the configured payment supplier. Possible values:

  • VIRTUAL_CARD: The payment method is a generation of a virtual credit card to send to the supplier.

supplier  *  (SupplierData)

Indicates the supplier information responsible of the payment card's creation

id  *  (ID)

Supplier unique ID. Format: integer.

code  *  (ID)

Supplier unique code

name  *  (String)

Supplier name

isActive  *  (Boolean)

Indicates whether a Supplier is active. This is a calculated field, a specific supplier can be activated or deactivated, but if its provider is deactivated, the value will be = false

provider  *  (ProviderData)

Instance to which this supllier is connected

id  *  (ID)

Provider unique ID. Format: integer.

code  *  (ID)

Provider unique code

name  *  (String)

Provider name

isActive  *  (Boolean)

Indicates whether a Provider is active. If the Provider is deactivated, all its Suppliers will be deactivated

audits  *  (EntityAuditConnection)

Audits it shows the provider's change history

edges(EntityAuditEdge)
node(EntityAudit)

code  *  (ID)

entityAuditData(EntityAuditData)

id  *  (ID)

code  *  (ID)

entityType  *  (EntityType)

Possible values:
  • ACCESS
  • SUPPLIER
  • CLIENT
  • PROVIDER
  • MEMBER
  • ORGANIZATION
  • API_KEY

actionType  *  (ActionType)

Possible values:
  • UPDATE
  • DELETE
  • CREATE
  • ARCHIVE
  • UNARCHIVE
  • ACTIVATE
  • DEACTIVATE
  • GRANT_TO_GROUPS
  • REVOKE_FROM_FROUPS
  • APPEND_PARAMETERS
  • DELETE_PARAMETERS
  • SET_FIELD
  • REMOVE_FIELD
  • ACTIVATE_SPEED
  • DEACTIVATE_SPEED
  • SET_IS_PUBLIC
  • UPDATE_MEMBER_IN_ORGANIZATION
  • REMOVE_MEMBER_SERVICE_ROLE
  • UPDATE_MEMBER_SERVICE_ROLE
  • REFRESH_TOKEN
auditDetails(AuditDetails)

field  *  (String)

current  *  (String)

previous  *  (String)

modifiedBy  *  (String)

correlationID(String)
adviseMessage(AdviseMessage)

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

createdAt  *  (Time)

updatedAt  *  (Time)

deletedAt(Time)

cursor  *  (String)

pageInfo  *  (PageInfo)

hasNextPage  *  (Boolean)

hasPreviousPage  *  (Boolean)

startCursor(String)
endCursor(String)
adviseMessage(AdviseMessage)

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

totalCount  *  (Int)

connectionType  *  (ProviderConnectionType)

Indicates connection type of Supplier Possible values:

  • PULL
  • PUSH
  • HYBRID

serviceApi  *  (ID)

ServiceAPI indicates the type of the connection

  1. hotel
  2. transportation
  3. car
  4. transfers
  5. activities
  6. virtualaccount
  7. payment
  8. package

api  *  (APIName)

API name for service API Possible values:

  • HOTEL
  • TRANSPORTATION
  • CAR
  • TRANSFERS
  • ACTIVITIES
  • VIRTUALACCOUNT
  • PAYMENT
  • PACKAGE
owner(EntityOwnerData)

Organization that owns the Supplier

code  *  (ID)

Organization unique code

label  *  (String)

groupContent(GroupContent)

Grouping of static content related to this Supplier.

code  *  (ID)

GroupContent unique code

groupContentData(GroupContentData)

Extended GroupContent information

id  *  (ID)

GroupContent unique ID. Format: integer.

code  *  (ID)

GroupContent unique code

context  *  (Context)

GroupContent related Context

code  *  (ID)

Context unique code

contextData(ContextData)

Extended Context information

id  *  (ID)

Context unique ID. Format: integer.

code  *  (ID)

Context unique code

adviseMessage(AdviseMessage)

List of advise messages.

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

createdAt  *  (DateTime)

Context creation date

updatedAt  *  (DateTime)

Context last update date

adviseMessage(AdviseMessage)

List of advise messages.

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

createdAt  *  (DateTime)

GroupContent creation date

updatedAt  *  (DateTime)

GroupContent last update date

supplierGroup(ID)

This is a calculated field that responds to groupContent > code

context(String)

This is a calculated field that responds to groupContent > groupContentData > context > code

sharedDefault(Access)

Indicates if this supplier normally have a shared default access, means that the content is managed in one only site and this is because improve de efficiency

code  *  (ID)

accessData(AccessData)

id  *  (ID)

Unique ID identifier

code  *  (ID)

Unique AccessConfiguration identifier

name  *  (String)

Access descriptive name

isActive  *  (Boolean)

Indicates if Access is active

isTest  *  (Boolean)

Indicates if Access can be used for testing or not

isShared  *  (Boolean)

Indicates if Access is Shared

isOpenAccess  *  (Boolean)

Indicates if Access is open to all partners.

supplier  *  (Supplier)

Supplier for this Access

code  *  (ID)

Supplier unique code

supplierData(SupplierData)

Extended Supplier information

adviseMessage(AdviseMessage)

List of advise messages.

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

createdAt  *  (DateTime)

Supplier creation date

updatedAt  *  (DateTime)

Supplier last update date

deletedAt(DateTime)

Supplier deleted date

user(String)

User code to connect to supplier

password(String)

Password for this Access. To retrieve this field, ADMIN permissions are required. Otherwise, the value will be null.

urls(Urls)

Specific URLs

search(URI)

Specific URL for Availability method.

quote(URI)

Specific URL for Quote method.

book(URI)

Specific URL for Book method.

generic(URI)

Supplier URL used for multiple methods.

parameters(Parameter)

List of parameters for additional information

key  *  (ID)

Contains the keyword/Id to identify a parameter. This information is mandatory.

value  *  (String)

Contains the parameter values. This information is mandatory.

shared(Access)

Parent Access if Shared Access

owner(EntityOwnerData)

Access owner

code  *  (ID)

Organization unique code

label  *  (String)

updateDescriptiveInfo  *  (Int)

Refresh time to update Despriptive Info

descriptiveInfoLimit  *  (Int)

Limit on DescriptiveInfo; 0 denotates no limit

isSchedulerActive(Boolean)

True if scheduler is active

updateList  *  (Int)

Refresh time to update other batch lists

updateDateRange  *  (String)

Range on update date

master(Access)

Parent Master Access. null=>masterAccess, notNull=>slaveAccess

groups(GroupConnection)

Groups where access belongs

edges(GroupEdge)
node(Group)

code  *  (ID)

groupData(GroupData)

id  *  (ID)

code  *  (ID)

label(String)
folder(String)

type  *  (GroupType)

Possible values:
  • ROOT
  • ORG
  • GROUP
  • TEAM
  • FOLDER
  • PRODUCT
  • RESOURCE
  • SPECIFIC_RESOURCE
info(String)

isPublic  *  (Boolean)

parent(Group)
children(GroupConnection)

Only responses children.(non-hierarchically)

descendents(GroupConnection)

Response all descendents groups nodes in this group (nom-hierarchically)

parents(GroupConnection)

Response all parents groups nodes for this group (nom-hierarchically)

owner(Member)

code  *  (ID)

memberData(MemberData)
adviseMessage(AdviseMessage)

List of advise messages.

createdAt  *  (DateTime)

Date created

updatedAt  *  (DateTime)

Date updated

deletedAt  *  (DateTime)

Date deleted. This value is used to include archived members.

isEditable  *  (Boolean)

productId(Int)
resourceId(Int)
siblings(GroupConnection)

Sibilings of the group

members(MemberConnection)

Only responses members in this group

edges(MemberEdge)

pageInfo  *  (PageInfo)

adviseMessage(AdviseMessage)

List of advise messages.

totalCount  *  (Int)

Identifies the total count of items in the connection.

apis(APIConnection)

APIs assigned to this group. Products have APIs.

edges(APIEdge)

pageInfo  *  (PageInfo)

managedGroups(ManagedGroupConnection)

Responses all managed groups by this group.

edges(ManagedGroupEdge)

pageInfo  *  (PageInfo)

allMembers(MemberConnection)

Response all members in this group s childrens (hierarchically),

edges(MemberEdge)

pageInfo  *  (PageInfo)

adviseMessage(AdviseMessage)

List of advise messages.

totalCount  *  (Int)

Identifies the total count of items in the connection.

accesses(AccessConnection)

Access resources in a group

edges(AccessEdge)

pageInfo  *  (PageInfo)

adviseMessage(AdviseMessage)

List of advise messages.

totalCount  *  (Int)

Identifies the total count of items in the connection.

suppliers(SupplierConnection)

Supplier resources in a group

edges(SupplierEdge)

Supplier edges of Supplier connection

pageInfo  *  (PageInfo)

Page info of the connection

adviseMessage(AdviseMessage)

List of advise messages.

totalCount  *  (Int)

Identifies the total count of items in the connection.

clients(ClientConnection)

Clients resources in a group

edges(ClientEdge)

Client edges of client connection

pageInfo  *  (PageInfo)

Page info of the connection

adviseMessage(AdviseMessage)

List of advise messages.

totalCount  *  (Int)

Identifies the total count of items in the connection.

roles(RoleConnection)

You can grant roles to members, which define the roles catalog for a group.

edges(RoleEdge)

pageInfo  *  (PageInfo)

isBuyer  *  (Boolean)

isSeller  *  (Boolean)

deleted_at(DateTime)
adviseMessage(AdviseMessage)

List of advise messages.

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

createdAt  *  (DateTime)

Date created

updatedAt  *  (DateTime)

Date updated

cursor  *  (String)

pageInfo  *  (PageInfo)

hasNextPage  *  (Boolean)

hasPreviousPage  *  (Boolean)

startCursor(String)
endCursor(String)
adviseMessage(AdviseMessage)

List of advise messages.

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

totalCount  *  (Int)

Identifies the total count of items in the connection.

audits  *  (EntityAuditConnection)

Audits it shows the accesses change history

edges(EntityAuditEdge)
node(EntityAudit)

code  *  (ID)

entityAuditData(EntityAuditData)

id  *  (ID)

code  *  (ID)

entityType  *  (EntityType)

Possible values:
  • ACCESS
  • SUPPLIER
  • CLIENT
  • PROVIDER
  • MEMBER
  • ORGANIZATION
  • API_KEY

actionType  *  (ActionType)

Possible values:
  • UPDATE
  • DELETE
  • CREATE
  • ARCHIVE
  • UNARCHIVE
  • ACTIVATE
  • DEACTIVATE
  • GRANT_TO_GROUPS
  • REVOKE_FROM_FROUPS
  • APPEND_PARAMETERS
  • DELETE_PARAMETERS
  • SET_FIELD
  • REMOVE_FIELD
  • ACTIVATE_SPEED
  • DEACTIVATE_SPEED
  • SET_IS_PUBLIC
  • UPDATE_MEMBER_IN_ORGANIZATION
  • REMOVE_MEMBER_SERVICE_ROLE
  • UPDATE_MEMBER_SERVICE_ROLE
  • REFRESH_TOKEN
auditDetails(AuditDetails)

field  *  (String)

current  *  (String)

previous  *  (String)

modifiedBy  *  (String)

correlationID(String)
adviseMessage(AdviseMessage)

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

createdAt  *  (Time)

updatedAt  *  (Time)

deletedAt(Time)

cursor  *  (String)

pageInfo  *  (PageInfo)

hasNextPage  *  (Boolean)

hasPreviousPage  *  (Boolean)

startCursor(String)
endCursor(String)
adviseMessage(AdviseMessage)

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

totalCount  *  (Int)

adviseMessage(AdviseMessage)

List of advise messages.

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

createdAt  *  (DateTime)

Date created

updatedAt  *  (DateTime)

Date updated

deletedAt(DateTime)

Access deleted date

accesses(AccessConnection)

Accesses of this Supplier

edges(AccessEdge)
node(Access)

code  *  (ID)

accessData(AccessData)

id  *  (ID)

Unique ID identifier

code  *  (ID)

Unique AccessConfiguration identifier

name  *  (String)

Access descriptive name

isActive  *  (Boolean)

Indicates if Access is active

isTest  *  (Boolean)

Indicates if Access can be used for testing or not

isShared  *  (Boolean)

Indicates if Access is Shared

isOpenAccess  *  (Boolean)

Indicates if Access is open to all partners.

supplier  *  (Supplier)

Supplier for this Access

code  *  (ID)

Supplier unique code

supplierData(SupplierData)

Extended Supplier information

adviseMessage(AdviseMessage)

List of advise messages.

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

createdAt  *  (DateTime)

Supplier creation date

updatedAt  *  (DateTime)

Supplier last update date

deletedAt(DateTime)

Supplier deleted date

user(String)

User code to connect to supplier

password(String)

Password for this Access. To retrieve this field, ADMIN permissions are required. Otherwise, the value will be null.

urls(Urls)

Specific URLs

search(URI)

Specific URL for Availability method.

quote(URI)

Specific URL for Quote method.

book(URI)

Specific URL for Book method.

generic(URI)

Supplier URL used for multiple methods.

parameters(Parameter)

List of parameters for additional information

key  *  (ID)

Contains the keyword/Id to identify a parameter. This information is mandatory.

value  *  (String)

Contains the parameter values. This information is mandatory.

shared(Access)

Parent Access if Shared Access

owner(EntityOwnerData)

Access owner

code  *  (ID)

Organization unique code

label  *  (String)

updateDescriptiveInfo  *  (Int)

Refresh time to update Despriptive Info

descriptiveInfoLimit  *  (Int)

Limit on DescriptiveInfo; 0 denotates no limit

isSchedulerActive(Boolean)

True if scheduler is active

updateList  *  (Int)

Refresh time to update other batch lists

updateDateRange  *  (String)

Range on update date

master(Access)

Parent Master Access. null=>masterAccess, notNull=>slaveAccess

groups(GroupConnection)

Groups where access belongs

edges(GroupEdge)
node(Group)

code  *  (ID)

groupData(GroupData)
adviseMessage(AdviseMessage)

List of advise messages.

createdAt  *  (DateTime)

Date created

updatedAt  *  (DateTime)

Date updated

cursor  *  (String)

pageInfo  *  (PageInfo)

hasNextPage  *  (Boolean)

hasPreviousPage  *  (Boolean)

startCursor(String)
endCursor(String)
adviseMessage(AdviseMessage)

List of advise messages.

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

totalCount  *  (Int)

Identifies the total count of items in the connection.

audits  *  (EntityAuditConnection)

Audits it shows the accesses change history

edges(EntityAuditEdge)
node(EntityAudit)

code  *  (ID)

entityAuditData(EntityAuditData)
adviseMessage(AdviseMessage)

createdAt  *  (Time)

updatedAt  *  (Time)

deletedAt(Time)

cursor  *  (String)

pageInfo  *  (PageInfo)

hasNextPage  *  (Boolean)

hasPreviousPage  *  (Boolean)

startCursor(String)
endCursor(String)
adviseMessage(AdviseMessage)

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

totalCount  *  (Int)

adviseMessage(AdviseMessage)

List of advise messages.

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

createdAt  *  (DateTime)

Date created

updatedAt  *  (DateTime)

Date updated

deletedAt(DateTime)

Access deleted date

cursor  *  (String)

pageInfo  *  (PageInfo)

hasNextPage  *  (Boolean)

hasPreviousPage  *  (Boolean)

startCursor(String)
endCursor(String)
adviseMessage(AdviseMessage)

List of advise messages.

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

totalCount  *  (Int)

Identifies the total count of items in the connection.

audits  *  (EntityAuditConnection)

Audits it shows the supplier's change history

edges(EntityAuditEdge)
node(EntityAudit)

code  *  (ID)

entityAuditData(EntityAuditData)

id  *  (ID)

code  *  (ID)

entityType  *  (EntityType)

Possible values:
  • ACCESS
  • SUPPLIER
  • CLIENT
  • PROVIDER
  • MEMBER
  • ORGANIZATION
  • API_KEY

actionType  *  (ActionType)

Possible values:
  • UPDATE
  • DELETE
  • CREATE
  • ARCHIVE
  • UNARCHIVE
  • ACTIVATE
  • DEACTIVATE
  • GRANT_TO_GROUPS
  • REVOKE_FROM_FROUPS
  • APPEND_PARAMETERS
  • DELETE_PARAMETERS
  • SET_FIELD
  • REMOVE_FIELD
  • ACTIVATE_SPEED
  • DEACTIVATE_SPEED
  • SET_IS_PUBLIC
  • UPDATE_MEMBER_IN_ORGANIZATION
  • REMOVE_MEMBER_SERVICE_ROLE
  • UPDATE_MEMBER_SERVICE_ROLE
  • REFRESH_TOKEN
auditDetails(AuditDetails)

field  *  (String)

current  *  (String)

previous  *  (String)

modifiedBy  *  (String)

correlationID(String)
adviseMessage(AdviseMessage)

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

createdAt  *  (Time)

updatedAt  *  (Time)

deletedAt(Time)

cursor  *  (String)

pageInfo  *  (PageInfo)

hasNextPage  *  (Boolean)

hasPreviousPage  *  (Boolean)

startCursor(String)
endCursor(String)
adviseMessage(AdviseMessage)

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

totalCount  *  (Int)

serviceIntegrationData(ServiceIntegrationData)

Service Integration Data

type(ServiceIntegrationType)
Possible values:
  • SITH
  • WORKER
  • CONNECTORS
optionsQuota(Int)

isPublic  *  (Boolean)

giata(GiataSupplierConfiguration)
giataType(String)
giataCode(String)

vccAccess  *  (String)

Indicates the vcc access code used to generate the payment card

surcharges(Surcharge)

List of surcharges of the option returned.

code(String)

Indicates the surcharge code

chargeType  *  (ChargeType)

Indicates the charge type. We need to know whether the supplements have to be paid when the consumer gets to the hotel or beforehand. Possible charge types: INCLUDE or EXCLUDE. when INCLUDE : this surcharge is mandatory and included in the option s price when EXCLUDE : this surcharge is not included in the option s price Possible values:

  • INCLUDE: The charge is included.
  • EXCLUDE: The charge is excluded.

mandatory  *  (Boolean)

Indicates if the surcharge is mandatory or not. If mandatory, this surcharge will be applied to this option. If the chargeType is EXCLUDE the customer will have to pay it directly at the hotel.

price  *  (Price)

Indicates the surcharge price.

currency  *  (Currency)

Currency code indicating which currency should be paid.

binding  *  (Boolean)

It indicates whether the gross price must be honored, meaning the customer cannot sell the room/option at a price lower than the supplier's established rate.

net  *  (Float)

It indicates the net price that the customer must pay to the supplier. The net price is calculated by substrating the included surcharges from the gross price. (For calculation purposes only)

gross  *  (Float)

Indicates the retail price that the supplier sells to the customer.

exchange  *  (Exchange)

Provides currency information and the applicable rate for the results returned by the Supplier

currency  *  (Currency)

Provide information about the currency of origin

rate  *  (Float)

Provides information about the rate applied over results

markups(Markup)

Informs markup applied over supplier price.

channel(String)

channel of markup application.

currency  *  (Currency)

Currency code indicating which currency should be paid. This information is mandatory.

binding  *  (Boolean)

It indicates if the price indicated in the gross must be respected. In case minimumSellingPrice is not empty, the binding indicates instead that the minimumSellingPrice must be respected. That is, the customer can not sell the room / option at a price lower than that established by the supplier. This information is mandatory.

net  *  (Float)

Indicates the net price that the customer must pay to the supplier plus the markup. This information is mandatory.

gross(Float)

Indicates the retail price that the supplier sells to the customer plus the markup.

exchange  *  (Exchange)

Informs about the currency of origin, and the rate applied over result. This information is mandatory.

currency  *  (Currency)

Provide information about the currency of origin

rate  *  (Float)

Provides information about the rate applied over results

rules  *  (Rule)

Breakdown of the applied rules for a markup

id  *  (String)

rule identifier

name(String)

rule name

type  *  (MarkupRuleType)

type of the value Possible values:

  • PERCENT: Indicates the percentage applied by a rule.
  • IMPORT: Indicates the exact amount applied by a rule.

value  *  (Float)

value applied by this rule

minimumSellingPrice(Float)

Indicates the minimum selling price it can be sold (determined by the Seller). Is is specified (not null), that field takes preference to Gross and Binding.

description(String)

Specifies the surcharge description.

supplements(Supplement)

List of supplements of the option returned.

code  *  (String)

Specifies the supplement code.

name(String)

Specifies the supplement name.

description(String)

Specifies the supplement description.

supplementType(SupplementType)

Indicates the supplement type. Possible types: Fee, Ski_pass, Lessons, Meals, Equipment, Ticket, Transfers, Gla, Activity or Other. Possible values:

  • SKI_PASS: A ticket or pass authorizing the holder to ski in a certain place or resort.
  • LESSONS: Lessons of any type that the costumer can take.
  • MEALS: Supplement of a determined meal plan.
  • EQUIPMENT: Extra equipment for a specific purpose.
  • TICKET: Admission to some service.
  • TRANSFERS: Transfers used by the costumer.
  • GALA: Gala: A festive occasion, celebration or special entertainment.
  • ACTIVITY: Activities that the costumer can do.
  • OTHER: Other type of supplement.

chargeType  *  (ChargeType)

Indicates the charge types. We need to know whether the supplements have to be paid when the consumer gets to the hotel or beforehand. Possible charge types: INCLUDE or EXCLUDE. when INCLUDE : this supplement is mandatory and included in the option s price when EXCLUDE : this supplement is not included in the option s price Possible values:

  • INCLUDE: The charge is included.
  • EXCLUDE: The charge is excluded.

mandatory  *  (Boolean)

Indicates if the supplement is mandatory or not. If mandatory, this supplement will be applied to this option. If the chargeType is EXCLUDE the customer will have to pay it directly at the hotel

durationType(DurationType)

Specifies the duration type. Possible duration types: Range (specified dates) or Open. This field is mandatory for PDI. Possible values:

  • RANGE: Date range is set.
  • OPEN: Not restricted by date.
quantity(Int)

Indicates the quantity of field in the element "unit".

unit(UnitTimeType)

Indicates the unit type. Possible unit types: Day or Hour. Possible values:

  • DAY: Day
  • HOUR: Hour
start(Date)

Indicates the effective date of the supplement. Format: YYYY-MM-DD

end(Date)

Indicates the expire date of the supplement. Format: YYYY-MM-DD

resort(Resort)

Contains information about the resort

code  *  (String)

Specifies the resort code.

name(String)

Specifies the resort name.

description(String)

Specifies the resort description.

price(Price)

Indicates the supplement price.

currency  *  (Currency)

Currency code indicating which currency should be paid.

binding  *  (Boolean)

It indicates whether the gross price must be honored, meaning the customer cannot sell the room/option at a price lower than the supplier's established rate.

net  *  (Float)

It indicates the net price that the customer must pay to the supplier. The net price is calculated by substrating the included surcharges from the gross price. (For calculation purposes only)

gross  *  (Float)

Indicates the retail price that the supplier sells to the customer.

exchange  *  (Exchange)

Provides currency information and the applicable rate for the results returned by the Supplier

currency  *  (Currency)

Provide information about the currency of origin

rate  *  (Float)

Provides information about the rate applied over results

markups(Markup)

Informs markup applied over supplier price.

channel(String)

channel of markup application.

currency  *  (Currency)

Currency code indicating which currency should be paid. This information is mandatory.

binding  *  (Boolean)

It indicates if the price indicated in the gross must be respected. In case minimumSellingPrice is not empty, the binding indicates instead that the minimumSellingPrice must be respected. That is, the customer can not sell the room / option at a price lower than that established by the supplier. This information is mandatory.

net  *  (Float)

Indicates the net price that the customer must pay to the supplier plus the markup. This information is mandatory.

gross(Float)

Indicates the retail price that the supplier sells to the customer plus the markup.

exchange  *  (Exchange)

Informs about the currency of origin, and the rate applied over result. This information is mandatory.

currency  *  (Currency)

Provide information about the currency of origin

rate  *  (Float)

Provides information about the rate applied over results

rules  *  (Rule)

Breakdown of the applied rules for a markup

id  *  (String)

rule identifier

name(String)

rule name

type  *  (MarkupRuleType)

type of the value Possible values:

  • PERCENT: Indicates the percentage applied by a rule.
  • IMPORT: Indicates the exact amount applied by a rule.

value  *  (Float)

value applied by this rule

minimumSellingPrice(Float)

Indicates the minimum selling price it can be sold (determined by the Seller). Is is specified (not null), that field takes preference to Gross and Binding.

adviseMessage(AdviseMessage)

code  *  (ID)

AM code: The following codes can be returned:

description  *  (String)

Error description

level  *  (AdviseMessageLevel)

Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO. Possible values:

  • WARN: Warning message.
  • ERROR: Error message.
  • INFO: Info message.
external(ExternalMessage)

Specify the external message.

code(String)

External code.

message  *  (String)

External message.

correlationID  *  (ID)

Identifier to investigate the cause of the error.

Examples

Book option without checking the surcharges