Juniper Booking Engine XML Extranet WebService

www.ejuniper.com Juniper España Innovating Travel Technology Juniper Booking Engine XML Extranet WebService XML Extranet WebServices Interface January 22th , 2019

Juniper Booking Engine www.ejuniper.com 2 WebService Specification Table of Contents 1. Foreword 3 About the Juniper Data Management Service 3 Additional information and support 3 About Juniper 3 Getting Started 4 2. Hotel Extranet API Definition 5 Generic Types 5 2.1.1. Attribute/Node formats 5 Generic request format 5 Hotel Extranet Transactions 6 2.3.1. ExtranetHotelList 6 2.3.2. ExtranetHotelRates 10 2.3.3.

ExtranetHotelRatesUpdate 27 2.3.4. ExtranetReadBooking 44 3. Certification process 55 ExtranetHotelRatesUpdate 55 ExtranetReadBooking 56 4. FAQ 57 5. Appendix I – Exceptions 58

Juniper Booking Engine www.ejuniper.com 3 WebService Specification 1. Foreword About the Juniper Data Management Service The Juniper Data Management Service was designed to help and facilitate the integration of third parties with the Juniper Intranet Booking Engine. The following guide is designed to provide a greater understanding of the Juniper DM Service and assist in development of web service solutions based on the BookingEngine Intranet. Webservices are used in order to automate the administrative tasks normally developed by humans. This has the following positive impacts: ◼ Elimination of workflow.

Elimination of human errors. On the other hand we encounter the following negative impacts: ◼ Elimination of human assessment In addition, XML, which is used to communicate between systems, is only a formatted text format to pass information, but it does not automatically resolve any problems if errors occur. This guide assumes the following: ◼ Familiarity with XML schemas and specifications Through the utilization of the Juniper Webservices, clients (i.e. web applications, handheld devices, etc.) can connect directly with the reservation system.

Additional information and support Many sources of information, including online documentation, training and support services, exist to increase your knowledge and understanding of the Juniper Service: ◼ The World Wide Web Consortium (W3C) site. W3C is an international consortium where Member organisations, a full-time staff, and the public, work together to develop Web standards. ◼ Our Support staf will be always at your service to answer to your questions, at xml@ejuniper.com About Juniper We are a Team of professionals, experts in Internet Technology and in the Travel Industry, with Offices in Spain and the USA, offering a permanent quality and service commitment to all our clients, taking care of your needs in an environment which is in permanent change and evolution.

We are leaders in providing solutions for Travel Companies established in North America, South America and in Europe, allowing us to investigate and develop new solutions in the most innovative markets and offer them to our clients globally, providing Travel Companies with exactly what their markets need and remain innovative in their own Industry. Our solutions are extremely easy to use and have been designed to be very intuitive, where we provide our clients with tools that give them complete freedom of action over the different Internet Sales Distribution Channels they might have, as well as over their own Website, thus Juniper giving them the opportunity to take a more proactive approach toward all the different Sales opportunities available in Internet.

We offer Travel Companies all of the online tools, from dynamic information relating to each Product’s Sales

Juniper Booking Engine www.ejuniper.com 4 WebService Specification and the Management of all the Bookings, up to the Management of all the Content displayed on their Web as well as providing them with the possibility of designing their own Marketing Campaigns aimed at their customers and their repeat business. Travel companies have the opportunity to offer their own Inventory as well as complementary Inventory from external Suppliers, through completely transparent connections to their own Data Bases. In this way, they will be able to offer their clients a variety of services and dynamic packaging that was, until now, simply impossible to manage from one single Website.

We can connect our clients to external Suppliers, Host to Host, offering a great variety of vacation products, like Accommodation from NT Incoming, Hotelbeds/Bedsonline, Tourico Holidays, Gullivers Travel, Mark Travel, AlliedTPro, Transhotel, ATI, JonView, Packages from Wholesalers like Soltour or Marsol, Flights through the GDS of Galileo, or Rent a Car services, from Hotelbeds, Gullivers, etc, and many other touristic products.

Getting Started The first step is to contact with the Juniper supplier to which you wish to connect, in order to supply them with the following information: ◼ Company name and primary technical contact (name, title, phone and email) ◼ Services that you wish to have access to And consequently reach an agreement in regards of the connection. Once an agreement has been reached in this regard, the next step is to supply us (Juniper) with the following information: ◼ IP address from where you will be accessing So that we may configure you a set of test credentials for your development of the integration Additionally, keep in mind that you will be able to find this WebService under the HotelExtranetTransactions binding from the following endpoint: https://ClientURL/WebServiceJPDM/DataManagement.asmx (replacing “ClientURL” with the environment that you’re connecting to) For example, as for the test environment: https://juniper-uat.bookingengine.es/WebServiceJPDM/DataManagement.asmx Also note that you will be able to find its WSDL under: https://juniper-uat.bookingengine.es/WebServiceJPDM/DataManagement.asmx?WSD L Last of all, please note that, when using this WebService, it will be mandatory for your XML requests to allow for compressed responses.

Please refer to the FAQ section for more information in this regard.

Juniper Booking Engine www.ejuniper.com 5 WebService Specification 2. Hotel Extranet API Definition Generic Types To continue we will indicate the most common types that are found in this document. 2.1.1. Attribute/Node formats Format description used in this document Format Type Short Description [Text] String Any characted or number (NVarchar) n[0..9] Integer 1...N recurrences of number. i.e.: 1, 60, 41050... n[0..9],2[0..9] Double Number with decimals separated by coma. Integer part: 1...N recurrences of number. Decimal part: 2 recurrences of number. i.e.: 1,00; 100,02; 300,99, ... true / false Boolean Boolean value.

yyyy-MM-ddThh:mm:ss DateTime Specifies date and time hh:mm:ss DateTime Specifies time yyyy-MM-dd Date Specifies date PnYnMnDTnHnMnS String Specifies duration Generic request format All of this WebService transactions share the following format, where XXXXXXX is the name of the transaction (i.e. HotelList making “ExtranetHotelList” and “HotelListRQ”) ---- Message ---- Node / Attribute (@) Opt Type Description

Juniper Booking Engine www.ejuniper.com 6 WebService Specification @Version N String Depends on the webservice. @Language N String Default language on the response. All the error message will be sent on English. Login N @Email N String Login provided by Juniper or the supplier. @Password N String Password provided by Juniper or the supplier. Hotel Extranet Transactions 2.3.1. ExtranetHotelList This petition allows you to get all the hotels and contracts related to your account. Request Node / Attribute (@) Opt Type Description Hotels N - List of hotels.

Hotel N - Hotel @Code Y Integer Hotel code.

Name Y String Hotel name. You can search a part of a name. Contracts Y - List of contracts to filter inside of a hotel. Contract Y - Contract. @Code N Integer Contract code. Zones N - List of zones to filter the hotels. Zone N - Zone @Code N Integer Zone code. Categories N - List of categories to filter the hotels. Category N - Category @Code N Integer Category code.

Juniper Booking Engine www.ejuniper.com 7 WebService Specification Suppliers N - List of suppliers to filter the hotels. Supplier N - Supplier @Code N Integer Supplier code. Response TEST CM Mallorca Mallorca - Balearic Islands - Spain 1 1/2 Estrella Proveedor Dimámico Gran via asima 07004 2.66 39.60 CM Test 2016 2019-10-05 Triple per Adult Triple per Room

Juniper Booking Engine www.ejuniper.com 8 WebService Specification Bed&Breakfast Room Only Node / Attribute (@) Opt Type Description Hotels N - List of hotels. Hotel N - Hotel @Code N Integer Hotel code @JPCode Y String Juniper unique hotel code Name N String Hotel name.

Zone N - Hotel zone. @Code N - Zone code. Name N - Zone name. CompleteName N - Zone complete name. Category N - Hotel category. @Code N - Category code. Name N - Category name. Provider N - Hotel provider. @Code N - Provider code. Name N - Provider name. AddressInformation N - Hotel address information. Address N String Address.

PostalCode N String Postal code. Latitude Y Double Latitude of the hotel position. Longitude Y Double Longitude of the hotel position. Contracts Y - List of contracts to obtain. Contract Y - Contract. @Code N Integer Contract code.

Juniper Booking Engine www.ejuniper.com 9 WebService Specification @Active N Boolean If contract is available to book. @ExternalCode Y String External code. @Currency N String Currency code. @RecommendedPrices N Boolean Allow recommendes prices. @DirectPayment N Boolean Is direct payment. @ModificationsAllowed N Boolean Indicates if the contract may be modified.

If false, it will mean that this is a read only contract purely meant for booking retrieval mapping purposes (meaning that you should not map que same with the intent of reading or updating its rates).

Name N String Contract name. AllowModificationsTo N Date Maximum date in which modificatiosn are allowed. Season N - Contract season, dates of the contract. @From N Date From. @To N Date To. ChildrenAges N - Children age range for this contract. @FirstRangeFrom N Integer Starting this age, paxes are considered as children. @FirstRangeTo N Integer Maximun age for the first range. @SecondRangeTo Y Integer Maximun age for the second range. RoomTypes N - Room types of the contract. RoomType N - Room type. @Code N Integer Room-type code. @AdditionalFrom Y Integer Starting this adult, adults will be rated as additionals.

PriceByRoom N Boolean Rooms can either be rated "by passenger" or "by room" (in the later case, allowing a price for the whole room) @MaxPaxes Y Integer Maximum number of passangers (Adults, children and babies) allowed in this room @ExternalCode Y String External romm code Name N String Room-type name. Occupancies N - Possible passangers allowed. Occupancy N - Possible passangers. @MinAdults N Integer Minimum of adults. @MaxAdults N Integer Maximum of adults. @MinChildren N Integer Minimum of children. @MaxChildren N Integer Maximum of children. BoardTypes N - Board types of the contract.

Juniper Booking Engine www.ejuniper.com 10 WebService Specification BoardType N - Board type.

Code N Integer Board-type code. Name N String Board-type name. 2.3.2. ExtranetHotelRates This petition allows you to get the rates and allotment of a specific contract. Request Node / Attribute (@) Opt Type Description Hotels N - List of hotels to obtain. Hotel N - Hotel @Code N Integer Hotel code. Contracts N - List of contracts to obtain. Contract Y - Contract. @Code N Integer Contract code. Date N - Date period to obtain @From N Date Start date. @To N Date End date. Elements Y - Indicate the elements that will be present on the response. @Rates Y Boolean Rates. Default: True @Allotments Y Boolean Allotments.

Default: True

Juniper Booking Engine www.ejuniper.com 11 WebService Specification @StopSales Y Boolean Stop sales. Default: True @Releases Y Boolean Releases. Default: True @Restrictions Y Boolean Restrictions. Default: True @Supplements Y Boolean Supplements. Default: True @Offers Y Boolean Offers. Default: True @AdditionalInfo Y Boolean AdditionalInfo. Deafult true Response

Juniper Booking Engine www.ejuniper.com 12 WebService Specification

Juniper Booking Engine www.ejuniper.com 13 WebService Specification Suplemento básico Basic supplement

Juniper Booking Engine www.ejuniper.com 14 WebService Specification Estancia corta Short stay Descuento Discount Early booking Early booking

Juniper Booking Engine www.ejuniper.com 15 WebService Specification Noches gratis Nights free Cambio de régimen Board upgrade Niños gratis Free child Piscina cerrada por reformas Pool closed due to renovations

Juniper Booking Engine www.ejuniper.com 16 WebService Specification Node / Attribute (@) Opt Type Description Hotels N - List of hotels. Hotel N - Hotel. @Code N Integer Contract code.

Contracts N - List of contracts. Contract N - Contract. @Code N Integer Contract code. @Currency N String Price currency on this contract. Rates Y - List of rates. Rate Y - Rate. Detailed below. Allotments Y - List of allotments. Allotment Y - Allotment. Detailed below. StopSales Y - List of stop sales. StopSale Y - Stopsale. Detailed below. Releases Y - List of releases. Release Y - Release. Detailed below. Restrictions Y - List of restrictions. Restriction Y - Restriction. Detailed below. Supplements Y - List of supplements. Supplement Y - Supplement. Detailed below. Offers Y - List of offers.

Offer Y - Offer. Detailed below. AdditionalInfo Y - List of dditional info. SpecialNotes Y - SpecialNotes. Detailed below. Rate It refers to the contract rates. Node / Attribute (@) Opt Type Description @Type N String Indicates the rate type. Possible values:
  • Fixed: Additional and children prices will be indicated on AdultAdditionals, ChildrenA and ChildrenB nodes on Price node.
  • Percentage: Additional prices will be calculated
Juniper Booking Engine www.ejuniper.com 17 WebService Specification using the Discounts node information. Dates N - List of dates to apply the prices. Date N - Date range. @From N Date Date where the rate will starts @To N Date Date where the rate will ends Prices N - List of prices. Price N - Price element. @RoomTypeCode N Integer Indicates the room type of the price. @BoardCode N Integer Indicates the board type of the price. @Type N String Indicates the price type. Possible values:
  • Cost
  • Recommended Room Y - Price for the room. Only available on the room with price by room.

Amount N Double Daily price for each room. Adult Y - Price per adult. @Amount N Double Daily price for each adult. AdultAdditionals Y - Price for additional adults. Only available on the Fixed rates. AdultAdditional N - Daily price for each additional adult. There can be up to two nodes. @Amount N Double Daily price for each additional adult. @Order N Integer Indicate if is the first additional (1) or second (and nexts) (2). ChildrenA Y - Price for range A children. Only available on the Fixed rates. ChildA N - Daily price for each child. There can be up to two nodes. @Amount N Double Daily price for each A child.

Order N Integer Indicate if is the first child (1) or second (and nexts) (2). ChildrenB Y - Price for range B children. Only available on the Fixed rates. ChildB N - Daily price for each child. There can be up to two nodes. @Amount N Double Daily price for each B child. @Order N Integer Indicate if is the first child (1) or second (and nexts) (2). Discounts Y - Discounts for the additional passagers, respect the adult price. Only available on the Percentage rates.

Juniper Booking Engine www.ejuniper.com 18 WebService Specification AdultAdditionals Y - Discount for additional adults.

AdultAdditional N - Discount for additional adult. There can be up to two nodes. @Discount N Double Discount respect the adult price. @Order N Integer Indicate if is the first additional (1) or second (and nexts) (2). ChildrenA Y - Discount for range A children. ChildA N - Discount for range A child. There can be up to two nodes. @Discount N Double Discount respect the adult price. @Order N Integer Indicate if is the first child (1) or second (and nexts) (2). ChildrenB Y - Discount for range B children.

ChildB N - Discount for range B child. There can be up to two nodes. @Discount N Double Discount respect the adult price. @Order N Integer Indicate if is the first additional (1) or second (and nexts) (2). Supplements N - Rate supplements. Supplement N - Supplement. @Type N String BoardSupplement: Pay the supplement to change the board type. @Active N Boolean Allways is active. @Mandatory N Boolean Allways is false. @BaseBoardCode Y Boolean Base board code. To board upgrade, the passanger has to pay the price for this board, plus the prices of this supplement.

Boards Y - Board to upgrade. Board N - Board. @Code N Integer Board code. Prices Y - Supplements prices. Price N - Price. @Type N String Possible values:
  • Cost: Cost price.
  • Recommended: Recommended price Adult Y - Price per adult. @Amount N Double Daily price for each adult.

Juniper Booking Engine www.ejuniper.com 19 WebService Specification AdultAdditionals Y - Price for additional adults. Only available on the Fixed rates. AdultAdditional N - Daily price for each additional adult. There can be up to two nodes. @Amount N Double Daily price for each additional adult. @Order N Integer Indicate if is the first additional (1) or second (and nexts) (2). ChildrenA Y - Price for range A children. Only available on the Fixed rates. ChildA N - Daily price for each child. There can be up to two nodes. @Amount N Double Daily price for each A child.

Order N Integer Indicate if is the first child (1) or second (and nexts) (2).

ChildrenB Y - Price for range B children. Only available on the Fixed rates. ChildB N - Daily price for each child. There can be up to two nodes. @Amount N Double Daily price for each B child. @Order N Integer Indicate if is the first child (1) or second (and nexts) (2). Babies Y - Price for baby. Baby N - Daily price for each baby. @Amount N Double Daily price for each baby. @Order N Integer Only value 1. Allotment It refers to the allotment. Node / Attribute (@) Opt Type Description RoomTypes N - List of room types of the allotment. RoomType N - Room type of the allotment. @Code N Integer Room type code Dates N - List of dates.

Date N - Date node. There has to be at least one Date node. @From N Date From date.

To N Date To date. @BaseAllotment Y Integer Indicate the base allotment.

Juniper Booking Engine www.ejuniper.com 20 WebService Specification @NormalUsed Y Integer Allotment used by bookings. @ExtraAllotment Y Integer Extra allotment on the contract. @TotalAvailable Y Integer Total free allotment available to book. @FreeSales Y Boolean FreeSale indicator, on "true", there will be no limit to the allotment. Stopsale It refers to stop sales for some days. Node / Attribute (@) Opt Type Description RoomTypes Y - List of room types that the stopsales applies.

If missing, the stopsale will apply to all the room types.

RoomType Y - Room type to apply. @Code N Integer Room type code. Dates N - List of dates. Date N - Date node. There has to be at least one Date node. @From N Date From date. @To N Date To date. @Action N String Possible values:
  • Close: It will not be possible to book.
  • OnRequest: Booking will be created as “on request”. Release It refers to releases for some days. Node / Attribute (@) Opt Type Description RoomTypes Y - List of room types. If missing, the stopsale will apply to all the room types.

RoomType Y - Room type to apply. @Code N Integer Room type code.

Dates N - List of dates. Date N - Date node. There has to be at least one Date node. @From N Date From date. @To N Date To date.

Juniper Booking Engine www.ejuniper.com 21 WebService Specification @Days N Integer Day value of the release. Restriction It refers to restriccions for some days. Node / Attribute (@) Opt Type Description @Type N String Restriction type. Possible values:
  • MinimumStay: Minimum stay restriction
  • CheckinDays: Let’s you specify a set of weekdays where it won’t be allowed to checkin.
  • CheckoutDays: Let’s you specify a set of weekdays where it won’t be allowed to checkout LengthOfStay Y - Length of stay.

MinNights Y Integer Minimum number of night permited.

Only applies on MinimumStay restrictions. Dates N - List of dates. Date N - Date node. There has to be at least one Date node. @From N Date Start date @To N Date End date RoomTypes Y - Room types to apply. If missing, the restriction will apply to all the room types. RoomType N - Room type. There can be multiple nodes. @Code N Integer Room type code. Boards Y - Board types to apply. If missing, the restriction will apply to all the board types. Board N - Board type. There can be multiple nodes. @Code N Integer Board type code.

ApplicationDays Y - Days when the restriction will applied. If missing, the restriction will apply to all the days of the week. @WeekDays N String Week days that the restriction will be applied. Example “XX- --XX” means that restriction will applied on Monday, Tuesday, Saturday and Sunday. On MinimunStay restrictions means that the restriction will only apply if you stay one of these days of the week. On CheckinDays or CheckoutDays restrictions means that the checkins or checkouts are NOT allowed in these days of the week.

ApplyToCheckOut Y Boolean Indicate if it is necessary to apply on the check out day, too.

Juniper Booking Engine www.ejuniper.com 22 WebService Specification Only applies on CheckinDays restricions. Supplement It refers to the supplements Node / Attribute (@) Opt Type Description @Type N String Supplement type. Possible values:
  • Basic: Basic supplement
  • ShortStay: Supplement for short stays.
  • Special: Special supplement which is not possible to modify. @Code N Integer Supplement unique id. @Active N Boolean If supplement is not active, it will not be applied on the bookings. @AplicationType N String
  • BasePrice: Apply on the rate price.
  • BaseMeal: Apply on the rate price and meal plan supplement.

Total: Apply on the rate and other supplements and offers. @Mandatory N Boolean If the supplement is mandatory. Names N - Supplement name in the different languages. Name N - Name text. @Language N String Language. Dates N - List of all dates of the supplement, not only between the requested dates. Date N - Date node. There has to be at least one Date node. @From N Date Start date @To N Date End date RoomTypes Y - Room types to apply. If missing, the supplement will apply to all the room types. RoomType N - Room type. There can be multiple nodes. @Code N Integer Room type code.

Boards Y - Board types to apply.

If missing, the supplement will apply to all the board types. Board N - Board type. There can be multiple nodes. @Code N Integer Board type code.

Juniper Booking Engine www.ejuniper.com 23 WebService Specification LengthOfStay Y - Length of stay. @MaxNights Y Integer Maximum number of night to apply the supplement. Only applies on ShortStay supplements. ApplicationDays Y - Days when the supplement will applied. If missing, the supplement will apply to all the days of the week. @WeekDays N String Weekdays that the supplement will be applied. Example “XX---XX” means that supplement will applied on Monday, Tuesday, Saturday and Sunday. Prices N - Prices aplicated to the supplement. Price N - There can be multiple prices. It has only allowed a Percent node, a Room node, or an Adult, ChildrenA and ChildrenB nodes.

  • @Type N String
  • Cost: Cost price.
  • Recommended: Recommended price Percent Y - Percent supplement. @Amount N Double Percent amount. Room Y - Room fixed price supplement. @Amount N Double Price amount. Adult Y - Adult fixed price supplement. @Amount N Double Price amount. ChildrenA Y - First range children price. ChildA Y - @Order N Integer Child order. @Amount N Double Price amount. ChildrenB Y - Second range children price. ChildB Y - @Order N Integer Child order. @Amount N Double Price amount. Offer It refers the offers for some days. Node / Attribute (@) Opt Type Description @Type N String Offer type. Possible values:
  • Juniper Booking Engine www.ejuniper.com 24 WebService Specification
  • FreePaxes: Some of the children will be free.
  • BoardUpgrade: Upgrade to a better board type with not charge.
  • FreeNights: If the client stay many days, some of them will be free.
  • LowerPrices: Discount on the price.
  • EarlyBooking: Early booking discount.
  • Special: Special offer which is not possible to modify. @Code N Integer Offer unique id. @Active N Boolean If offer is not active, it will not be applied on the bookings. @AplicationType N String
  • BasePrice: Apply on the rate price.
  • BaseMeal: Apply on the rate price and meal plan supplement.

Total: Apply on the rate and other supplements and offers. @Priority N Integer If two offer will be apply, the system choice the offer with lowest value in this field. @NonRefundable N Boolean If it is true, the booking allways have a non-refundable cancellation policy. @ApplyAdditionals N Boolean If the discount will be applied to the additional adults. @ApplyChildren N Boolean If the discount will be applied to the children. Names N - Offer name in the different languages. Name N - Name text. @Language N String Language. Dates N - List of all dates of the offer, not only between the requested dates.

Date N - Date node. There has to be at least one Date node. @From N Date Start date @To N Date End date RoomTypes Y - Room types to apply. If missing, the offer will apply to all the room types. RoomType N - Room type. There can be multiple nodes. @Code N Integer Room type code. Boards Y - Board types to apply. If missing, the offer will apply to all the board types. Board N - Board type. There can be multiple nodes.

Juniper Booking Engine www.ejuniper.com 25 WebService Specification @Code N Integer Board type code. LengthOfStay Y - Length of stay. @MinNights Y Integer Minimum number of night to apply the offer.

MaxNights Y Integer Maximum number of night to apply the offer. ApplicationDays Y - Days when the offer will applied. If missing, the offer will apply to all the days of the week. @WeekDays N String Weekdays that the offer will applied. Example “XX---XX” means that offer will applied on Monday, Tuesday, Saturday and Sunday.

ApplyWithOffers N - If both offers can applied for the same days, the system will apply both. The system will apply only two offers for the same day. Offer N - Other offer. @Code N Integer Offer code. BookingInAdvance Y - The system will apply the offer if the user book in advance the checkin day. Only apply for EarlyBooking. @MinDays Y Integer Minimum number of days prior the checkin day. @MaxDays Y Integer Maximum number of days prior the chekin day. BookingDates Y - The system will apply the offer only if the user book between these dates. Only apply for EarlyBooking. @From Y Date Minimum date.

  • @To Y Date Maximum date. PaymentConditions Y - @PaymentDate Y Date Payment date. @Percentage Y Double Percentage Prices N - Prices aplicated to the offer. Only apply to LowestPrice and EarlyBooking. Price N - There can be multiple prices. It has only allowed a Percent node, a Room node, or an Adult, ChildrenA and ChildrenB nodes. @Type N String
  • Cost: Cost price.
  • Recommended: Recommended price @BaseType N String
  • Discount: Discount.
  • ReplaceRatePrice: Replace the rate prices. Percent Y - Percent supplement.

Juniper Booking Engine www.ejuniper.com 26 WebService Specification @Amount N Double Percent amount.

Room Y - Room fixed price supplement. @Amount N Double Price amount. Adult Y - Adult fixed price supplement. @Amount N Double Price amount. ChildrenA Y - First range children price. ChildA Y - @Order N Integer Child order. @Amount N Double Price amount. ChildrenB Y - Second range children price. ChildB Y - @Order N Integer Child order. @Amount N Double Price amount. FreePaxes Y - Free paxes. Only apply to FreePaxes offer. ChildrenA Y - Free children of first range. ChildA Y - Free child.

Order N Double Order of free child. ChildrenB Y - Free children of second range. ChildB Y - Free child. @Order N Double Order of free child. BoardUpgrade Y - Board upgrade information. Only apply on BoardUpgrade offers. @BoardPayCode N Integer Board type that client pays. @BoardGetCode N Integer Board type that client obtains. FreeNights Y - Free nights information. Only apply on FreeNights offers. @Nights Y Date Every this number of nights. @Free Y Date The client can have this number of free nights. @ApplyOnce Y Boolean If the offer could apply many time in the same booking if the client stay many nights.

SpecialNotes

Juniper Booking Engine www.ejuniper.com 27 WebService Specification It refers to special notes that apply to the contract. Node / Attribute (@) Opt Type Description Note N @From Y Date Start application date @To Y Date End application date Text N String Text @Language Y String Language of text. ISO2 2.3.3. ExtranetHotelRatesUpdate It refers to the request for updating the hotel rates and allotment. Request

Juniper Booking Engine www.ejuniper.com 28 WebService Specification Suplemento básico Basic supplement

Juniper Booking Engine www.ejuniper.com 29 WebService Specification Estancia corta Short stay Descuento Discount Early booking

Juniper Booking Engine www.ejuniper.com 30 WebService Specification Early booking Noches gratis Nights free Cambio de régimen Board upgrade Niños gratis Free child

Juniper Booking Engine www.ejuniper.com 31 WebService Specification Piscina cerrada por reformas Pool closed due to renovations Node / Attribute (@) Opt Type Description Contracts N - List of contracts to update. Contract N - Contract to update @Code N Integer Contract code.

Rates Y - List of rates to change. Rate Y - Rate to change. Detailed below. Allotments Y - List of allotments to change. Allotment Y - Allotment to change. Detailed below. StopSales Y - List of stop sales to change. StopSale Y - Stopsale to change. Detailed below. Releases Y - List of releases to change. Release Y - Release to change. Detailed below. Restrictions Y - List of restrictions to change. Restriction Y - Restriction to change. Detailed below. Supplements Y - List of supplements.

Supplement Y - Supplement. Detailed below. Offers Y - List of offers. Offer Y - Offer. Detailed below. AdditionalInfo Y - List of additional info. SpecialNotes Y - SpecialNotes. Detailed below. Rate It refers to the new rate. Once a rate has been created, it can’t be deleted. Node / Attribute (@) Opt Type Description

Juniper Booking Engine www.ejuniper.com 32 WebService Specification @Type N String Indicates the rate type. Possible values:
  • Fixed: Additional and children prices will be indicated on AdultAdditionals, ChildrenA and ChildrenB nodes on Price node.
  • Percentage: Additional prices would be calculated using the Discounts node information. Dates N - List of dates to apply the new prices. Date N - Date range. @From N Date Date where the rate will starts @To N Date Date where the rate will ends Prices N - List of new prices. Price N - Price element. @RoomTypeCode N Integer Indicates the room type of the price. @BoardCode N Integer Indicates the board type of the price. @Type N String Indicates the price type. Possible values:
  • Cost
  • Recommended Room Y - Price for the room. Only available on the room with price by room.

Amount N Double Daily price for each room. Adult Y - Price per adult. @Amount N Double Daily price for each adult. AdultAdditionals Y - Price for additional adults. Only available on the Fixed rates. AdultAdditional N - Daily price for each additional adult. There can be up to two nodes. @Amount N Double Daily price for each additional adult. @Order N Integer Indicate if is the first additional (1) or second (and nexts) (2). ChildrenA Y - Price for range A children. Only available on the Fixed rates. ChildA N - Daily price for each child. There can be up to two nodes. @Amount N Double Daily price for each A child.

Order N Integer Indicate if is the first child (1) or second (and nexts) (2). ChildrenB Y - Price for range B children. Only available on the Fixed rates. ChildB N - Daily price for each child. There can be up to two nodes.

Juniper Booking Engine www.ejuniper.com 33 WebService Specification @Amount N Double Daily price for each B child. @Order N Integer Indicate if is the first child (1) or second (and nexts) (2). Discounts Y - Discounts for the additional passagers, respect the adult price. Only available on the Percentage rates. AdultAdditionals Y - Discount for additional adults.

AdultAdditional N - Discount for additional adult. There can be up to two nodes. @Discount N Double Discount respect the adult price. @Order N Integer Indicate if is the first additional (1) or second (and nexts) (2). ChildrenA Y - Discount for range A children.

  • ChildA N - Discount for range A child. There can be up to two nodes. @Discount N Double Discount respect the adult price. @Order N Integer Indicate if is the first child (1) or second (and nexts) (2). ChildrenB Y - Discount for range B children. ChildB N - Discount for range B child. There can be up to two nodes. @Discount N Double Discount respect the adult price. @Order N Integer Indicate if is the first additional (1) or second (and nexts) (2). Supplements N - Rate supplements. Supplement N - Supplement. @Type N String
  • BoardSupplement: Pay the supplement to change the board type.
  • @Active N Boolean Allways is active. @Mandatory N Boolean Allways is false. @BaseBoardCode Y Boolean Base board code. To board upgrade, the passanger has to pay the price for this board, plus the prices of this supplement. Boards Y - Board to upgrade. Board N - Board. @Code N Integer Board code. Prices Y - Supplements prices. Price N - Price. @Type N String
  • Cost: Cost price.
  • Recommended: Recommended price

Juniper Booking Engine www.ejuniper.com 34 WebService Specification Adult Y - Price per adult. @Amount N Double Daily price for each adult.

AdultAdditionals Y - Price for additional adults. Only available on the Fixed rates. AdultAdditional N - Daily price for each additional adult. There can be up to two nodes. @Amount N Double Daily price for each additional adult. @Order N Integer Indicate if is the first additional (1) or second (and nexts) (2). ChildrenA Y - Price for range A children. Only available on the Fixed rates. ChildA N - Daily price for each child. There can be up to two nodes. @Amount N Double Daily price for each A child.

Order N Integer Indicate if is the first child (1) or second (and nexts) (2). ChildrenB Y - Price for range B children. Only available on the Fixed rates. ChildB N - Daily price for each child. There can be up to two nodes. @Amount N Double Daily price for each B child. @Order N Integer Indicate if is the first child (1) or second (and nexts) (2). Babies Y - Price for baby. Baby N - Daily price for each baby. @Amount N Double Daily price for each baby. @Order N Integer Only value 1. NOTE: It’s not possible to send the prices and the rate supplement for the same board type for the same rate.

If you try to update the prices for a rate with supplements, but you don’t send the supplements, the supplements will be deleted.

Allotment It refers to new allotment. Once allotment has been created, you have to set it to 0 in BaseAllotment in order to disable it. Node / Attribute (@) Opt Type Description RoomTypes N - List of room types of the new allotment. RoomType N - Roomtype of the new allotment. @Code N Integer Room type code Dates N - List of date periods. Date N - Date of the new allotment.

Juniper Booking Engine www.ejuniper.com 35 WebService Specification @From N Date From date. @To N Date To date. @BaseAllotment Y Integer Indicate the base allotment. It cannot be lower than the booked one.

FreeSales Y Boolean Indicate if there will be no limit to the allotment. @TotalAvailable Y Integer Indicate the total available allotment. It cannot be sent with @BaseAllotment or @FreeSales. It cannot be lower than 0. It will ajust the BaseAllotment value to change the availability. Stopsale It refers to new stop sales for some days, or open some days. Node / Attribute (@) Opt Type Description RoomTypes Y - List of room types that the stopsales will apply. If missing, the stopsale will apply to all the room types. RoomType Y - Room type to apply.

@Code N Integer Room type code. Dates N - List of date periods. Date N - List of dates. There has to be at least one node @From N Date From date. @To N Date To date. @Action N String Possible values:
  • Close: Days will be closed and it will not be possible to book.
  • Open: Days will be opened deleting any preexisting stopsales in the process.
  • OnRequest: An on request stopsale will be. Booking will be created as on request. Release It refers to new release for some days. Once a release has been created, you have to set it to 0 in order to delete it.

Node / Attribute (@) Opt Type Description RoomTypes Y - List of room types that the release will apply.

If missing, the stopsale will apply to all the room types. RoomType Y - Room type to apply. @Code N Integer Room type code.

Juniper Booking Engine www.ejuniper.com 36 WebService Specification Dates N - List of date periods. Date N - List of dates. There has to be at least one node @From N Date From date. @To N Date To date. @Days N Integer New day value of the release. Restriction It refers to new restriccion for some days. - Once a MinimumStay restriction has been created, you have to overwrite it with a 0 MinNights one in order to delete it. - Once a CheckinDays restriction has been created, you have to overwrite it with a new one that allows all days in order to delete it.

Node / Attribute (@) Opt Type Description @Type N String Restriction type. Possible values:
  • MinimumStay: Create a minimum stay restriction. MinNights attribute will have to be indicated.
  • CheckinDays: Let’s you specify a set of weekdays where it won’t be allowed to checkin.
  • CheckoutDays: Let’s you specify a set of weekdays where it won’t be allowed to checkout. LengthOfStay Y - Length of stay. @MinNights Y Integer Minimum number of night permited. Only applies on MinimumStay restrictions.

Dates N - Dates to apply. Date N - List of dates. There has to be at least one node @From N Date From date. @To N Date To date. RoomTypes Y - Room types to apply. RoomType N - Room type. There can be multiple nodes. @Code N Integer Room type code. Boards Y - Board types to apply. Board N - Board type. There can be multiple nodes. @Code N Integer Board type code. ApplicationDays Y - Days when the restriction will applied. @WeekDays N String Week days that the restriction will be applied. Example “XX-

Juniper Booking Engine www.ejuniper.com 37 WebService Specification --XX” means that restriction will applied on Monday, Tuesday, Saturday and Sunday.

On MinimunStay restrictions means that the restriction will only apply if you stay one of these days of the week. On CheckinDays or CheckoutDays restrictions means that the checkins or checkout are NOT allowed in these days of the week. @ApplyToCheckOut Y Boolean Indicate if it is necessary to apply on the check out day, too. Only applies on CheckinDays restricions.

If you only send restrictions for some rooms or boards, it is allowed to book the rest of rooms and boards without restrictions. Supplement It refers to the supplements Node / Attribute (@) Opt Type Description @Type N String Supplement type. Possible values:
  • Basic: Basic supplement
  • ShortStay: Supplement for short stays.
  • Special: Special supplement which is not possible to modify. @Code N Integer Supplement unique id. @Active N Boolean If supplement is not active, it will not applied on the bookings.
  • @AplicationType N String
  • BasePrice: Apply on the rate price.
  • BaseMeal: Apply on the rate price and meal plan supplement.
  • Total: Apply on the rate and other supplements and offers. @Mandatory N Boolean If the supplement is mandatory. Names N - Supplement name in the different languages. Name N - Name text. @Language N String Language. Dates N - List of all dates of the supplement, not only between the requested dates. Date N - Date node. There has to be at least one Date node. @From N Date Start date @To N Date End date RoomTypes Y - Room types to apply. If missing, the supplement will apply to all the room types.

Juniper Booking Engine www.ejuniper.com 38 WebService Specification RoomType N - Room type. There can be multiple nodes. @Code N Integer Room type code. Boards Y - Board types to apply. If missing, the supplement will apply to all the board types. Board N - Board type. There can be multiple nodes. @Code N Integer Board type code. LengthOfStay Y - Length of stay. @MaxNights Y Integer Maximum number of night to apply the supplement. Only applies on ShortStay supplements. ApplicationDays Y - Days when the supplement will applied. If missing, the supplement will apply to all the days of the week.

WeekDays N String Weekdays that the supplement will be applied. Example “XX---XX” means that supplement will applied on Monday, Tuesday, Saturday and Sunday.

  • Prices N - Prices aplicated to the supplement. Price N - There can be multiple prices. It has only allowed a Percent node, a Room node, or an Adult, ChildrenA and ChildrenB nodes. @Type N String
  • Cost: Cost price.
  • Recommended: Recommended price. Only allowed in the contracts with recommended prices. Percent Y - Percent supplement. @Amount N Double Percent amount. Room Y - Room fixed price supplement. @Amount N Double Price amount. Adult Y - Adult fixed price supplement. @Amount N Double Price amount. ChildrenA Y - First range children price. ChildA Y - @Order N Integer Child order. @Amount N Double Price amount. ChildrenB Y - Second range children price. ChildB Y -
Juniper Booking Engine www.ejuniper.com 39 WebService Specification @Order N Integer Child order. @Amount N Double Price amount. Offer It refers the offers for some days. Node / Attribute (@) Opt Type Description @Type N String Offer type. Possible values:
  • FreePaxes: Some of the children will be free.
  • BoardUpgrade: Upgrade to a better board type with not charge.
  • FreeNights: If the client stay many days, some of them will be free.
  • LowerPrices: Discount on the price.
  • EarlyBooking: Early booking discount.
  • Special: Special offer which is not possible to modify.
  • @Code N Integer Offer unique id. @Active N Boolean If offer is not active, it will not be applied on the bookings. @AplicationType N String
  • BasePrice: Apply on the rate price.
  • BaseMeal: Apply on the rate price and meal plan supplement.
  • Total: Apply on the rate and other supplements and offers. @Priority N Integer If two offer will be apply, the system choice the offer with lowest value in this field. @NonRefundable N Boolean If it is true, the booking allways have a non-refundable cancellation policy.

ApplyAdditionals N Boolean If the discount will be applied to the additional adults.

ApplyChildren N Boolean If the discount will be applied to the children. Names N - Offer name in the different languages. Name N - Name text. @Language N String Language. Dates N - List of all dates of the offer, not only between the requested dates. Date N - Date node. There has to be at least one Date node. @From N Date Start date

Juniper Booking Engine www.ejuniper.com 40 WebService Specification @To N Date End date RoomTypes Y - Room types to apply. If missing, the offer will apply to all the room types. RoomType N - Room type. There can be multiple nodes. @Code N Integer Room type code. Boards Y - Board types to apply. If missing, the offer will apply to all the board types. Board N - Board type. There can be multiple nodes. @Code N Integer Board type code. LengthOfStay Y - Length of stay. @MinNights Y Integer Minimum number of night to apply the offer. @MaxNights Y Integer Maximum number of night to apply the offer.

ApplicationDays Y - Days when the offer will applied. If missing, the offer will apply to all the days of the week.

WeekDays N String Weekdays that the offer will applied. Example “XX---XX” means that offer will applied on Monday, Tuesday, Saturday and Sunday. ApplyWithOffers N - If both offers can applied for the same days, the system will apply both. The system will apply only two offers for the same day. Offer N - Other offer. @Code N Integer Offer code. BookingInAdvance Y - The system will apply the offer if the user book in advance the checkin day. Only apply for EarlyBooking. @MinDays Y Integer Minimum number of days prior the checkin day. @MaxDays Y Integer Maximum number of days prior the chekin day.

BookingDates Y - The system will apply the offer only if the user book between these dates. Only apply for EarlyBooking. @From Y Date Minimum date.

  • @To Y Date Maximum date. Prices N - Prices aplicated to the offer. Only apply to LowestPrice and EarlyBooking. Price N - There can be multiple prices. It has only allowed a Percent node, a Room node, or an Adult, ChildrenA and ChildrenB nodes. @Type N String
  • Cost: Cost price.
  • Juniper Booking Engine www.ejuniper.com 41 WebService Specification
  • Recommended: Recommended price. Only allowed in the contracts with recommended prices. @BaseType N String
  • Discount: Discount. Only allowed in LowerPrices offers.
  • ReplaceRatePrice: Replace the rate prices. Percent Y - Percent supplement. @Amount N Double Percent amount. Room Y - Room fixed price supplement. @Amount N Double Price amount. Adult Y - Adult fixed price supplement. @Amount N Double Price amount. ChildrenA Y - First range children price. ChildA Y - @Order N Integer Child order. Only allowed 1. @Amount N Double Price amount.

ChildrenB Y - Second range children price. ChildB Y - @Order N Integer Child order. Only allowed 1. @Amount N Double Price amount. The value most be the same as ChildrenA. FreePaxes Y - Free paxes. Only apply to FreePaxes offer. ChildrenA Y - Free children of first range. ChildA Y - Free child. @Order N Double Order of free child. ChildrenB Y - Free children of second range. ChildB Y - Free child. @Order N Double Order of free child. BoardUpgrade Y - Board upgrade information. Only apply on BoardUpgrade offers.

BoardPayCode N Integer Board type that client pays. @BoardGetCode N Integer Board type that client obtains.

FreeNights Y - Free nights information. Only apply on FreeNights offers.

Juniper Booking Engine www.ejuniper.com 42 WebService Specification @Nights Y Date Every this number of nights. @Free Y Date The client can have this number of free nights. @ApplyOnce Y Boolean If the offer could apply many time in the same booking if the client stay many nights. SpecialNotes It refers to the special notes that apply to the contract: Node / Attribute (@) Opt Type Description Note N @From Y Date Start application date @To Y Date End application date Text N String Text @Language Y String Language of text. ISO2 Response Ok response Error response Prices must be greater than zero

Juniper Booking Engine www.ejuniper.com 43 WebService Specification HotelRatesUpdateRS Response Detail Node / @attribute Opt Type Description @Url N String URL endpoint @TimeStamp N DateTim e Response date and time.

Format: yyyy-MM-ddThh:mm:ss (UTC) @IntCode N String Internal control code Errors Y - Only if there are any problem Error N - Error @Code N String Error code. Refer to error table to have more information Text N String Error description

  • Juniper Booking Engine www.ejuniper.com 44 WebService Specification 2.3.4. ExtranetReadBooking It refers to the request that allows you to retrieve actual bookings. Request Node / Attribute (@) Opt Type Description SearchItems N - Search filters. @Status Y Enum Status of the booking. Possible values.
  • OK: Confirmed.
  • RQ: On request, pending supplier confirmation.
  • PP: Pay pending.
  • CN: Canceled. @Locator Y String Juniper locator. @ExternalLocator Y String Client booking line external locator. @AgencyLocator Y String Client locator.

HolderName Y String Part of holder name.

PassengerName Y String Part of a passanger name. CreationDate Y - Booking lines created between those dates. @From N Date Return booking lines created after this date. @To N Date Return booking lines created before this date. CheckinDate Y - Booking lines with checkin date between those dates. @From N Date Return checkin after this date. @To N Date Return checkin before this date. ModificationDate Y - Booking lines with last modification between those dates. @From N Date Return booking lines modified after this date. @To N Date Return booking lines with last modification before this date.

Hotels Y - Hotels container.

Juniper Booking Engine www.ejuniper.com 45 WebService Specification Hotel N - Hotel container. @Code N Integer Hotel code. Allows you the option of only retrieving the bookings of a single hotel, otherwise, all of the applicable bookings from all of the hotels configured under the supplied credentials will be returned. Response Ok response 30 30 test test test test test test ES General Mon Port Estrellas 5s C/ Sol dirección nº 1 2 12 Alojamiento y Desayuno test1 -- Triple

Next part ... Cancel