API Reference: Confirmación de Disponibilidad de una Tarifa
Confirmación de Disponibilidad de una Tarifa (AvailabilityValidation)
Confirma la vigencia de una tarifa provista por una consulta de disponibilidad previa
Este mensaje es parte del flujo obligatorio luego de una operación de búsqueda de disponibilidad y antes de enviar otros mensajes.
Es necesario haber llamado a este mensaje al menos 15 minutos antes de otra operación (como Reserva de una Tarifa de Hoteles o Consulta de Gastos de Cancelación de un Hotel. Se sugiere que del lado del cliente de este Web Service se tenga almacenado el timestamp (fecha + hora) en que se realizó la última AvailabilityValidation, para volver a llamarla en caso de que hayan pasado más de 15 minutos respecto de ese timestamp.
Request: AvailabilityValidationRQ (Estructura del Documento)
Response: AvailabilityValidationRS (Estructura del Documento)
Ejemplo de uso:
- Solicitud:
<AvailabilityValidationRQ>
<GeneralParameters>
<PreferedLanguage LanguageCode="es"/>
<PreferedCurrency CurrencyCode="ARS"/>
</GeneralParameters>
<Products>
<Hotels>
<Hotel TripProductID="o1RPSM0RiqYxODcxNT.jMi0wwgEDBQQCzQHNzyNsjx82n2NI:q1JBe2JmeHNRfTF1zgHjL5s."/>
</Hotels>
</Products>
</AvailabilityValidationRQ>
Parámetro | Obligatorio | Descripción |
---|---|---|
GeneralParameters | Sí | |
PreferedLanguage | Sí | Establece el lenguaje requerido para la respuesta.
Atributos: LanguageCode: Código de lenguaje correspondiente a los códigos de lenguaje estándar provistos por Nemo. |
PreferedCurrency | No | Establece la moneda requerida para la respuesta.
Atributos: CurrencyCode: No está habilitado el uso de multimoneda. La moneda utilizada será la configurada en el contrato. Código de moneda correspondiente a los códigos de moneda estándar provistos. (Dicho nodo es No Obligatorio ya que la moneda utilizada actualmente es la configurada en el contrato) |
Hotels | No | |
Hotel | Sí | Se envía el id del hotel a consultar mediante el atributo TripProductID. IMPORTANTE: por ahora el servicio no soporta varios productos en una misma reserva. Deberá realizar una reserva por cada producto. |
- Respuesta:
<AvailabilityValidationRS>
<Details>
<Products>
<Hotels>
<Rate HotelCode="187156" SupplierId="TOH" TripProductID="o1RPSM0RiqYxODcxNT.jMi0wwgEDBQQCzQHNzyNsjx82n2NI:q1JBe2JmeHNRfTF1zgHjL5s.">
<Rooms>
<Room Type="NMO.HTL.RMT.DBL" Availability="NMO.HTL.AVB.CNF" RoomDescription="Estándar + desayuno - 2 paxs in 1 beds">
<Occupancy>
<Guests>
<Guest PassengerSequence="1"/>
<Guest PassengerSequence="2"/>
</Guests>
</Occupancy>
</Room>
</Rooms>
<Board Code="2">Desayuno buffet</Board>
<RatePrices>
<RatePrice Currency="USD" Type="NMO.HTL.RPT.NET">369.18</RatePrice>
<RatePrice Currency="USD" Type="NMO.GBL.RPT.GRS">461.47</RatePrice>
</RatePrices>
<Passengers>
<Passenger AgeType="NMO.GBL.AGT.ADT"/>
<Passenger AgeType="NMO.GBL.AGT.ADT"/>
</Passengers>
<Destinations>
<Destination DestinationType="NMO.HTL.DST.CTY" DestinationCode="4490">Miami</Destination>
<Destination DestinationType="NMO.HTL.DST.CTR" DestinationCode="174">Estados Unidos</Destination>
<Destination DestinationType="NMO.HTL.DST.CNT" DestinationCode="13">América del Norte</Destination>
<Destination DestinationType="NMO.HTL.DST.ALL" DestinationCode="1">Planeta Tierra</Destination>
</Destinations>
<Rating Code="NMO.HTL.RTN.3ST" Type="NMO.HTL.RTT.STR">
<Value>3.0</Value>
<Description>3 Estrellas</Description>
</Rating>
<CheckIn>2018-04-05</CheckIn>
<CheckOut>2018-04-09</CheckOut>
<RequiredFieldsByAgeType>
<RequiredFieldsFor AgeType="NMO.GBL.AGT.ADT">
<RequiredFields>
<RequiredField Type="NMO.FLD.ALL.FNM" FieldHelp="Primer nombre" Optional="false" XmlNode="Passenger/PersonNames/PersonName[@NameType='NMO.GBL.PNT.FIR']">Nombre</RequiredField>
<RequiredField Type="NMO.FLD.ALL.SNM" FieldHelp="Apellido" Optional="false" XmlNode="Passenger/PersonNames/PersonName[@NameType='NMO.GBL.PNT.LAS']">Apellido</RequiredField>
<RequiredField Type="NMO.FLD.ALL.BRD" FieldHelp="Fecha de Nacimiento" Optional="false" XmlNode="Passenger/BirthDate">Fecha Nac.</RequiredField>
<RequiredField Type="NMO.FLD.HTL.IDN" FieldHelp="Número de Documento de Identificación" Optional="false" XmlNode="Passengers/Identifiers/Identifier[Type='NMO.HTL.RPT.DNI']">Documento</RequiredField>
<RequiredField Type="NMO.FLD.MCL.CTR" FieldHelp="País" Optional="false" XmlNode="Passenger/CountryOfResidence">País</RequiredField>
<RequiredField Type="NMO.FLD.MCL.NAC" FieldHelp="Nacionalidad del pasajero" Optional="false" XmlNode="Passenger/Nationality">Nacionalidad</RequiredField>
</RequiredFields>
</RequiredFieldsFor>
</RequiredFieldsByAgeType>
</Rate>
</Hotels>
</Products>
</Details>
</AvailabilityValidationRS>
Parámetro | Obligatorio | Descripción |
---|---|---|
Notifications | No | |
Notification | Sí | Nodo que informa cuando ocurre algún error o excepción. |
NotificationId | Sí | Identificador de la notificación. Las mismas serán provistas por Nemo. |
NotificationType | Sí | Tipo de notificación. |
NotificationMessage | Sí | Mensaje de notificación. |
NotificationDetailedMessage | No | Mensaje detallado. |
NotificationTime | No | Marca de tiempo |
Echo | No | En este nodo se envía una copia de la consulta realizada. |
Details | Sí | |
Products | Sí | |
Hotels | No | |
Rate | Sí | Información de la Tarifa, reportada por el proveedor correspondiente al Hotel.
Atributos: -TripProductId: identificador del producto. -Offer: indica si es una oferta. Featured: indica si es un producto recomendado. |
Rooms | No | Información sobre las habitaciones. |
Room | Sí | Identifica una habitación en los parámetros de la búsqueda.
Atributos: -Type: tipo de habitación. -Availability: indica la disponibilidad de la habitación. Chequear por cambios en el Tipo de Disponibilidad indicado por el proveedor. |
Occupancy | Sí | Se informa la distribución de pasajeros en la habitación. |
Guests | Sí | Lista de huéspedes de la habitación. |
Boards | No | |
Board | Sí | Regímenes asociados a la habitación.
Atributos: -Code: Código del régimen (tipo de pensión). Tabla de códigos
|
RatePrices | No | Se informan las tarifas de la habitación. Chequear por cambios de precios indicados por el proveedor. |
Passengers | Sí | Pajeros incluidos en la tarifa hotelera. |
RequiredFieldsByAgeType | Sí | Información requerida y opcional para la reserva por tipo de pasajero. |
RequiredFieldsFor | Sí | Información requerida y opcional para la reserva para un tipo de pasajero
Atributos: -AgeType: Tipo de pasajero para el grupo de campos informado. Tabla de códigos |
RequiredFields | Sí | Campos requeridos y opcionales |
RequiredField | Sí | Información del campo requerido u opcional
Atributos: -Type: Tipo de campo. Tabla de códigos -FieldHelp: Ayuda/Información sobre el campo para el usuario -Optional: Indica si el campo es opcional -XmlNode: Ruta XPath dentro del nodo Passengers de la reserva donde se debe mandar el dato sobre el campo |
Ejemplo de Notificaciones con cambio de precio:
<AvailabilityValidationRS>
<Notifications>
<Notification ProductType="NMO.GBL.PDT.HTL">
<NotificationId>58</NotificationId>
<NotificationType>NMO.HTL.NFT.WRN</NotificationType>
<NotificationMessage>Hubo una variación en el precio del item</NotificationMessage>
<NotificationDetailedMessage/>
<NotificationTime>2019-04-25T16:01:41.961</NotificationTime>
</Notification>
</Notifications>
<Details>
<Products>
<Hotels>
<Rate HotelCode="187156" SupplierId="TOH"...
...
</AvailabilityValidationRS>