Diferencia entre revisiones de «Price Surfer - Web Services»
Línea 65: | Línea 65: | ||
O si desea la documentación online: | O si desea la documentación online: | ||
− | http://wiki.psurfer.net/resources/PSCEV-doc/pscev | + | http://wiki.psurfer.net/resources/PSCEV-doc/pscev.html |
Línea 80: | Línea 80: | ||
'''Operación: /catalog/products/search''' | '''Operación: /catalog/products/search''' | ||
− | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_AvailabilityQueryRQ.html AvailabilityQueryRQ] |
− | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_AvailabilityQueryRS.html AvailabilityQueryRS] |
=== Confirmación de Disponibilidad de una Tarifa obtenida en una Búsqueda Anterior (AvailabilityValidation) === | === Confirmación de Disponibilidad de una Tarifa obtenida en una Búsqueda Anterior (AvailabilityValidation) === | ||
Línea 89: | Línea 89: | ||
'''Operación: /catalog/product/validate''' | '''Operación: /catalog/product/validate''' | ||
− | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_AvailabilityQueryRQ.html AvailabilityQueryRQ] |
− | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_AvailabilityQueryRS.html AvailabilityQueryRS] |
=== Consulta de Información de un Hotel (AdditionalInfoQuery) === | === Consulta de Información de un Hotel (AdditionalInfoQuery) === | ||
Línea 98: | Línea 98: | ||
'''Operación: /catalog/product/detail''' | '''Operación: /catalog/product/detail''' | ||
− | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_AdditionalInfoQueryRQ.html AditionalInfoQueryRQ] |
− | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_AdditionalInfoQueryRS.html AditionalInfoQueryRS] |
=== Consulta de Gastos de Cancelación para una o varias Tarifas ó Reservas (CancellationFeesQuery) === | === Consulta de Gastos de Cancelación para una o varias Tarifas ó Reservas (CancellationFeesQuery) === | ||
Línea 107: | Línea 107: | ||
'''Operación: /booking/cancellation/fees''' | '''Operación: /booking/cancellation/fees''' | ||
− | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_CancellationFeesQueryRQ.html CancellationFeesQueryRQ] |
− | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_CancellationFeesQueryRS.html CancellationFeesQueryRS] |
=== Reserva de Tarifa (BookingProducts) === | === Reserva de Tarifa (BookingProducts) === | ||
Línea 116: | Línea 116: | ||
'''Operación: /catalog/product/book''' | '''Operación: /catalog/product/book''' | ||
− | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_BookingProductsRQ.html BookingProductsRQ] |
− | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_BookingProductsRS.html BookingProductsRS] |
=== Consulta de Reserva (BookingQuery) === | === Consulta de Reserva (BookingQuery) === | ||
Línea 125: | Línea 125: | ||
'''Operación: /booking/detail''' | '''Operación: /booking/detail''' | ||
− | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_hotelBookingServiceDetailRQ.html hotelBookingServiceDetailRQ] |
− | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_hotelBookingServiceDetailRS.html hotelBookingServiceDetailRS] |
=== Cancelación de Reserva (BookingCancellation) === | === Cancelación de Reserva (BookingCancellation) === | ||
Línea 134: | Línea 134: | ||
'''Operación: /booking/cancel''' | '''Operación: /booking/cancel''' | ||
− | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Recibe [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_BookingCancellationRQ.html BookingCancellationRQ] |
− | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/ | + | Retorna [http://wiki.psurfer.net/resources/PSCEV-doc/pscev_BookingCancellationRS.html BookingCancellationRS] |
== Escenario básico de una operación de reserva == | == Escenario básico de una operación de reserva == |
Revisión del 12:14 12 nov 2013
Sumario
- 1 Price Surfer - Mensajes de Web Services
- 1.1 Introducción
- 1.2 Propósito del presente documento
- 1.3 Implementación
- 1.4 Interfaz Cliente simplificada
- 1.5 API REFERENCE - Operaciones
- 1.6 Lista de Mensajes XML por cada Operación
- 1.6.1 Búsqueda de Disponibilidad de Hoteles (AvailabilityQueryRQ)
- 1.6.2 Confirmación de Disponibilidad de una Tarifa obtenida en una Búsqueda Anterior (AvailabilityValidation)
- 1.6.3 Consulta de Información de un Hotel (AdditionalInfoQuery)
- 1.6.4 Consulta de Gastos de Cancelación para una o varias Tarifas ó Reservas (CancellationFeesQuery)
- 1.6.5 Reserva de Tarifa (BookingProducts)
- 1.6.6 Consulta de Reserva (BookingQuery)
- 1.6.7 Cancelación de Reserva (BookingCancellation)
- 1.7 Escenario básico de una operación de reserva
- 1.8 Especificación de documentos XML
- 1.8.1 Búsqueda de Disponibilidad de Hoteles (AvailabilityQuery)
- 1.8.2 Consulta de Información de un Hotel (AdditionalInfoQuery)
- 1.8.3 Confirmación de Disponibilidad de una Tarifa obtenida en una Búsqueda Anterior (AvailabilityValidation)
- 1.8.4 Consulta de Gastos de Cancelación para una o varias Tarifas ó Reservas (CancellationFeesQuery)
- 1.8.5 Reserva de Tarifa (BookingProducts)
- 1.8.6 Cancelación de Reserva (BookingCancellation)
- 1.8.7 Consulta de Reserva (BookingQuery)
- 1.9 Lenguaje de Descripción de la Aplicación Web (WADL)
- 2 Especificaciones y recomendaciones
Price Surfer - Mensajes de Web Services
Introducción
El servicio Web de Price Server permite a sus agentes conectarse de manera transparente a la aplicación a través de un conjunto de funciones que pueden ser llamadas, desde las páginas web de sus sitios. Para lograr esto, se proveerá una Interfaz de Programación de Aplicaciones (API) para permitir que varios tipos de sistemas clientes se conecten al sistema propio de Nemo utilizando un juego de mensajes XML que han sido publicados y definidos en conformidad a los Estándares de Esquemas XML. La interfaz que provee servicios de búsquedas, reservas, etc. será entonces accesible vía una interfaz basada en XML y disponible para clientes registrados.
A través del servicio web un agente podrá consultar disponibilidad en hoteles para los proveedores asociados a su contrato, solicitar información sobre hoteles, gestionar reservas y cancelaciones. Todo a través de una interfaz única basada en el intercambio de documentos XML, que será descripta en esta guía de uso.
Propósito del presente documento
La función del documento es la de remarcar la estructura de la ya mencionada API, las funciones estándares que se proveen y aquellas funciones específicas que son dispuestas mediante la misma.
Implementación
Para poder iniciar la implementación y hacer pruebas a nuestro servidor de test, necesitará una serie de credenciales para utilizar durante el proceso de integración del servicio con su aplicación web, Las credenciales son: un "token" para el acceso al web service y un usuario y contraseña para acceder a la aplicación de Price Surfer y al Backoffice de configuración.
Luego de completada la integración deberá contactarnos nuevamente para solicitar una revisión para la certificación final de su sitio. Además de las credenciales provistas recibirá una descripción de los servicios provistos bajo WADL, el equivalente REST del Lenguaje de Descripción de Web Services (WSDL). Nuestro servicio es un servicio web estándar basado en REST para el intercambio de documentos XML, la seguridad es controlada a través de cabeceras WSS donde deberá incluir un Token de Autenticación.
Interfaz Cliente simplificada
La API publicada ofrece protocolos estándares de HTTPS que habilitan al servicio a través de solicitudes HTTPS bajo POST permitiendo así las siguientes ventajas:
- Protocolos estándares de acuerdo a la Industria
- No hay necesidad de establecer un middleware como componente adicional (ej. MQ Series)
- Seguridad establecida a través del uso de SSL
- Se provee un mecanismo más eficiente para el manejo de mensajes asíncronos mediante la tecnología “Push”
API REFERENCE - Operaciones
Las siguientes operaciones están disponibles en la API del servicio, para búsquedas y reservas de Hoteles.
- /catalog/products/search
- /catalog/product/detail
- /catalog/product/validate
- /catalog/product/book
- /booking/cancellation/fees
- /booking/detail
- /booking/cancel
Cada operación de la API necesita un xml según el mensaje que corresponda. A continuación se presentarán los XML necesarios para cada operación. Este xml va adjuntado como "raw" en el POST del http.
Por ejemplo, desde la consola podemos probar la conexión y los parámetros necesarios haciendo:
<source> curl -i -H "Accept: application/xml" -H "Content-Type: application/xml" -H "X-PS-AUTHTOKEN:xxxxxxxxxxxxxxxxxxxxxxxxxxx" -d "`cat AvailabilityQueryRQ.xml`" -o "result.xml" -v -X POST "http://#url-servicio-psurfer#/pricesurfer/catalog/products/search" </source>
Esto conectará al Web Service y hará un pedido de disponibilidad de productos.
Deberá existir el archivo AvailabilityQueryRQ.xml que contendrá un xml como por ejemplo el presentado más abajo.
La respuesta se guardará en el archivo result.xml.
Lista de Mensajes XML por cada Operación
Están disponibles los esquemas XSD de PriceSurfer: http://wiki.psurfer.net/resources/pscev-schema.zip
O si desea la documentación online:
http://wiki.psurfer.net/resources/PSCEV-doc/pscev.html
Documentación generada automáticamente por el servicio: http://wiki.psurfer.net/resources/REST-doc/index.html
Búsqueda de Disponibilidad de Hoteles (AvailabilityQueryRQ)
Consulta de disponibilidad de tarifas de hoteles para un set de habitaciones, con una configuración de pasajeros, en un destino y un rango de fechas determinado. Retorna una colección de tarifas, una por cada hotel ofrecido por los proveedores habilitados para el contrato del usuario.
Operación: /catalog/products/search
Recibe AvailabilityQueryRQ
Retorna AvailabilityQueryRS
Confirmación de Disponibilidad de una Tarifa obtenida en una Búsqueda Anterior (AvailabilityValidation)
Confirma la vigencia de una tarifa provista por una consulta de disponibilidad previa.
Operación: /catalog/product/validate
Recibe AvailabilityQueryRQ
Retorna AvailabilityQueryRS
Consulta de Información de un Hotel (AdditionalInfoQuery)
Consulta la información y detalles para un hotel provisto por el proveedor.
Operación: /catalog/product/detail
Recibe AditionalInfoQueryRQ
Retorna AditionalInfoQueryRS
Consulta de Gastos de Cancelación para una o varias Tarifas ó Reservas (CancellationFeesQuery)
Consulta de condiciones de gastos de cancelación sobre una o más tarifas o reservas reportadas.
Operación: /booking/cancellation/fees
Recibe CancellationFeesQueryRQ
Retorna CancellationFeesQueryRS
Reserva de Tarifa (BookingProducts)
Solicitud de reserva para una o varias tarifas de hoteles.
Operación: /catalog/product/book
Recibe BookingProductsRQ
Retorna BookingProductsRS
Consulta de Reserva (BookingQuery)
Consulta de información y detalles sobre una o varias reservas realizadas.
Operación: /booking/detail
Recibe hotelBookingServiceDetailRQ
Retorna hotelBookingServiceDetailRS
Cancelación de Reserva (BookingCancellation)
Solicitud de cancelación de una o varias reservas realizadas.
Operación: /booking/cancel
Recibe BookingCancellationRQ
Retorna BookingCancellationRS
Escenario básico de una operación de reserva
Especificación de documentos XML
Búsqueda de Disponibilidad de Hoteles (AvailabilityQuery)
Consulta de disponibilidad para hoteles en un destino y un rango de fechas determinado. Retorna una colección de tarifas, una por cada hotel ofrecido por los proveedores habilitados para el contrato del usuario.
Request: AvailabilityQueryRQ
Response: AvailabilityQueryRS
Ejemplo de uso:
- Solicitud:
<syntaxhighlight lang="xml"> <AvailabilityQueryRQ TransactionId="da9a0fcc_7bd9_48f9_8386_4079a7a6c66c" TransactionMode="Synchronous"> <GeneralParameters> <PreferedLanguage LanguageCode="es"/> <PreferedCurrency CurrencyCode="ARS"/> </GeneralParameters> <Trips ItemsCount="2"> <Trip Sequence="1"> <Destination>2757</Destination> <ProductsParameters> <HotelsParameters> <Criterion> <Rooms ItemsCount="2"> <Room RoomType="NMO.HTL.RMT.SGL" Sequence="1"/> </Rooms> <CheckIn>2013-12-20</CheckIn> <CheckOut>2013-12-22</CheckOut> </Criterion> </HotelsParameters> </ProductsParameters> </Trip> </Trips> <Passengers ItemsCount="1"> <Passenger AgeType="NMO.GBL.AGT.ADT" Sequence="1" RoomSequence="1"/> </Passengers> </AvailabilityQueryRQ> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
TransactionId | Si | Deberá contener solo letras, números o "_" y lo genera el cliente para identificar un único ID de transacción entre todos los mensajes del fujo de reserva. |
TransactionMode | Si | Synchronous / StartAsync / ContinueAsync, Normalmente se usará "Synchronous".
(Ver en detalle el uso de TransactionMode en el capítulo Price_Surfer_-_Web_Services#Especificaciones_y_recomendaciones) |
GeneralParameters | Si | |
PreferedLanguage | Si | 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 | Si | Establece la moneda requerida para la respuesta.
Atributos: CurrencyCode: Código de moneda correspondiente a los códigos de moneda estándar provistos. |
Trip | ||
Destination | Si | Ciudad para la que se realiza la consulta de disponibilidad de tarifas. |
ProductsParameters | Si | |
HotelsParameters | Si | Parámetros específicos de hoteles. |
Criterion | Si | Indica los distintos parámetros de la búsqueda. |
CheckIn | Si | Fecha de inicio de la estadía. Formato 'YYYY/MM/DD'. |
CheckOut | Si | Fecha de fin de la estadía. Formato 'YYYY/MM/DD'. |
Rooms | Si | Información sobre las habitaciones solicitadas. |
Room | Si | Identifica una habitación en los parámetros de la búsqueda. Cada habitación tendrá su RoomSequence, número entero consecutivo y comenzando en 1, que también colocará a los pasajeros en el nodo Passengers, para así armar la ocupación determinada para la búsqueda de hoteles.
Atributos: RoomType: Tipo de habitación. Los tipos de habitación admitidos corresponden a los provistos por Nemo. Es opcional porque la búsqueda se hará por ocupación, indicada en el nodo Passengers, pero si se requiere un tipo especial de habitación, por ejemplo Doble Twin, se puede indicar aquí. RoomSequence: Es un número consecutivo que comienza en 1 que identifica la habitación donde estará alojado cada pasajero. |
Passenger | Si | Establece los pasajeros para la búsqueda realizada. El atributo AgeType indica el tipo de pasajero de acuerdo a la edad, dentro de los provistos por Nemo (chl, adt, inf). En hoteles, indicar todos los pasajeros con su correspondiente identificador de habitación (RoomSequence). Por ejemplo para dos habitaciones dobles colocar dos pasajeros con RoomSequence=1 y otros dos pasajeros con RoomSequence=2. |
PersonNames | No | |
PersonName | Si | Nombres de la persona. Cada elemento PersonName tiene tipo y secuencia lo que permite construir los nombres con N cantidad de elementos y siguiendo cualquier orden según las distintas culturas. |
NameType | No | Tipo de nombre (primer nombre, segundo nombre, apellido). |
BirthDate | No | Fecha de nacimiento. |
- Respuesta:
<syntaxhighlight lang="xml"> <AvailabilityQueryRS TransactionId="da9a0fcc_7bd9_48f9_8386_4079a7a6c66c" TransactionMode="Synchronous">
<Echo TransactionId="da9a0fcc_7bd9_48f9_8386_4079a7a6c66c" TransactionMode="Synchronous"> <GeneralParameters> <PreferedLanguage LanguageCode="es"/> <PreferedCurrency CurrencyCode="ARS"/> </GeneralParameters> <Trips ItemsCount="2"> <Trip Sequence="1"> <Destination>2757</Destination> <ProductsParameters> <HotelsParameters> <Criterion> <Rooms ItemsCount="2"> <Room RoomType="NMO.HTL.RMT.SGL" Sequence="1"/> </Rooms> <CheckIn>2013-12-20</CheckIn> <CheckOut>2013-12-22</CheckOut> </Criterion> </HotelsParameters> </ProductsParameters> </Trip> </Trips> <Passengers ItemsCount="1"> <Passenger AgeType="NMO.GBL.AGT.ADT" Sequence="1" RoomSequence="1"/> </Passengers> </Echo> <Details> <Trips ItemsCount="1"> <Trip Sequence="1"> <HotelsAvailability> <Responset> <Pagination> <CurrentPage>1</CurrentPage> <ItemPerPage>2</ItemPerPage> <TotalItems>2</TotalItems> </Pagination> </Responset> <Summary> <Locations ItemsCount="2"> <Location Sequence="1" LocationCode="G1000">General</Location> <Location Sequence="2" LocationCode="G8">Area suburbana</Location> </Locations> </Summary> <Hotels ItemsCount="2"> <Hotel Code="7590" Name="Days Hotel London North" Featured="false" SupplierID="MIK"
Longitude="-0.26438" Latitude="51.634681" Sequence="1">
<Amenities> <Amenity Code="14" GroupCode="NMO.HTL.AMT.HTL" Sequence="1"/> <Amenity Code="5" GroupCode="NMO.HTL.AMT.FCL" Sequence="2"/> <Amenity Code="32" GroupCode="NMO.HTL.AMT.HTL" Sequence="3"/> <Amenity Code="7" GroupCode="NMO.HTL.AMT.FCL" Sequence="4"/> <Amenity Code="18" GroupCode="NMO.HTL.AMT.FCL" Sequence="5"/> <Amenity Code="117" GroupCode="NMO.HTL.AMT.HTL" Sequence="6"/> <Amenity Code="4" GroupCode="NMO.HTL.AMT.HTR" Sequence="7"/> <Amenity Code="34" GroupCode="NMO.HTL.AMT.HTR" Sequence="8"/> <Amenity Code="237" GroupCode="NMO.HTL.AMT.HTR" Sequence="9"/> <Amenity Code="8" GroupCode="NMO.HTL.AMT.HTR" Sequence="10"/> </Amenities> <DestinationDetails ItemsCount="4"> <Destination Code="2757" Type="NMO.HTL.DST.CTY" Sequence="1"/> <Destination Code="143" Type="NMO.HTL.DST.CTR" Sequence="2"/> <Destination Code="12" Type="NMO.HTL.DST.CNT" Sequence="3"/> <Destination Code="1" Type="NMO.HTL.DST.ALL" Sequence="4"/> </DestinationDetails> <Rates ItemsCount="1"> <Rate Offer="false" RateID="3727c45dbdafe53764a781ea39d8bd28#0" Sequence="1"
TripProductID="fef501f1-962d-40e8-84eb-42373a0e343f">
<Rooms> <Room Availability="CNF" Sequence="1" Type="SGL">Simple</Room> </Rooms> <Boards ItemsCount="1"> <Board Sequence="1" Type="Basis" Code="60">Desayuno incluido</Board> </Boards> <RatePrices ItemsCount="1"> <RatePrice Sequence="1" Type="NMO.GBL.RPT.GRS">389.82</RatePrice> </RatePrices> </Rate> </Rates> <Rating Code="NMO.HTL.RTN.4ST" Type="NMO.HTL.RTT.STR"> <Value>3.0</Value> </Rating> <Address> <Line Sequence="1">London Gateway, Services</Line> <Line Sequence="2">London</Line> <Line Sequence="3">U.k.</Line> </Address> <LocationDetails> <Location Sequence="1" LocationCode="G8">Area suburbana</Location> </LocationDetails> <ImageLinks> <ImageLink Sequence="1"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Exterior view</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46.0</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70.0</ImageWidth> <ImageURL>B/6/B6E5222965FCD939B8967908EE909116.jpg</ImageURL> <ThumbnailURL>4/3/43081546B80C1F2361A934E91E0B83F4.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="2"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46.0</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70.0</ImageWidth> <ImageURL>B/A/BA1FE7678A1DBABF62BB877A92B31404.jpg</ImageURL> <ThumbnailURL>D/2/D2CEAE049DA3A5D2D1F8C6CC1F911B67.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="3"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46.0</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70.0</ImageWidth> <ImageURL>F/7/F73A5A01DACC93E47CC6ECA33071A1A5.jpg</ImageURL> <ThumbnailURL>9/1/914733863EFF6EC19D48A23ED5AE697C.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="4"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46.0</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70.0</ImageWidth> <ImageURL>5/E/5EBE1CC8E1840C121C4BF0FBF40B6DCB.jpg</ImageURL> <ThumbnailURL>2/E/2EA36573BCE916FAFC09A32A590DBF1E.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="5"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Restaurant</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46.0</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70.0</ImageWidth> <ImageURL>F/0/F07D742D7500E4C1315EA73B6449861E.jpg</ImageURL> <ThumbnailURL>E/A/EA1A7F0CE29E848589485A346F35B81F.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="6"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Bar</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46.0</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70.0</ImageWidth> <ImageURL>F/5/F577413868BD10E0413F903462BFEA4B.jpg</ImageURL> <ThumbnailURL>4/9/491197FA9F74F1DE30FB7D0FBBE29348.jpg</ThumbnailURL> </ImageLink> </ImageLinks> </Hotel> <Hotel Code="173240" Name="Cranley" Featured="false" SupplierID="MIK"
Longitude="-86.751351" Latitude="21.138497" Sequence="2">
<Amenities> <Amenity Code="52" GroupCode="NMO.HTL.AMT.HTL" Sequence="1"/> <Amenity Code="7" GroupCode="NMO.HTL.AMT.FCL" Sequence="2"/> <Amenity Code="1" GroupCode="NMO.HTL.AMT.FCL" Sequence="3"/> </Amenities> <DestinationDetails ItemsCount="4"> <Destination Code="2757" Type="NMO.HTL.DST.CTY" Sequence="1"/> <Destination Code="143" Type="NMO.HTL.DST.CTR" Sequence="2"/> <Destination Code="12" Type="NMO.HTL.DST.CNT" Sequence="3"/> <Destination Code="1" Type="NMO.HTL.DST.ALL" Sequence="4"/> </DestinationDetails> <Rates ItemsCount="1"> <Rate Offer="false" RateID="3727c45dbdafe53764a781ea39d8bd28#16" Sequence="1"
TripProductID="23dfd49b-3239-42f6-8b24-1a2ee5301098">
<Rooms> <Room Availability="CNF" Sequence="1" Type="SGL">Simple</Room> </Rooms> <Boards ItemsCount="1"> <Board Sequence="1" Type="Basis" Code="97">Desayuno Buffet Continental</Board> </Boards> <RatePrices ItemsCount="1"> <RatePrice Sequence="1" Type="NMO.GBL.RPT.GRS">1987.6</RatePrice> </RatePrices> </Rate> </Rates> <Rating Code="NMO.HTL.RTN.5ST" Type="NMO.HTL.RTT.STR"> <Value>4.0</Value> </Rating> <Address> <Line Sequence="1">10-12 Bina Gardens</Line> <Line Sequence="2">London</Line> <Line Sequence="3">United Kingdom</Line> </Address> <LocationDetails> <Location Sequence="1" LocationCode="G1000">General</Location> </LocationDetails> </Hotel> </Hotels> </HotelsAvailability> </Trip> </Trips> <Passengers ItemsCount="1"> <Passenger AgeType="NMO.GBL.AGT.ADT" Sequence="1" RoomSequence="1"/> </Passengers> </Details>
</AvailabilityQueryRS> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
Notifications | No | |
Notification | Si | Nodo que informa cuando ocurre algún error o excepción. En el atributo TripNumber se indica el trip al cual se refiere la notificación. |
NotificationId | Si | Identificador de la notificación. Las mismas serán provistas por Nemo. |
NotificationType | Si | Tipo de notificación. |
NotificationMessage | Si | Mensaje de notificación. |
Echo | No | En este nodo se envía una copia de la consulta realizada. |
Details | Si | |
Trips | Si | |
Hotel | No | Hotel recomendado por el sistema como mejor compra para el tramo.
Atributos: SupplerID: Id del proveedor Code: código del hotel, de los provistos por Nemo. Name: nombre del hotel Longitude y Latitude (opcionales): coordenadas para la ubicación del hotel en un mapa. |
Amenities | Si | Amenidades del hotel. |
Rates | Si | Se informan las habitaciones, regímenes y tarifas. |
Rating | Si | Categoría del hotel. |
HotelsAvailability | No | Retorna un conjunto de hoteles para el destino buscado. Se informará el nodo Amenities, DestinationDetails, Rates y Rating.
Se agregó el nodo ResponsetFilters:
|
Exceptions | Si | Si no se puede armar el nodo Details se arma un nodo Exceptions con las notificaciones correspondientes. |
Consulta de Información de un Hotel (AdditionalInfoQuery)
Mensaje que permite consultar la información detallada de un hotel. La información a devolver será la obtenida de los respectivos proveedores.
Request: AdditionalInfoQueryRQ
Response: AdditionalInfoQueryRS
Ejemplo de uso:
- Solicitud:
<syntaxhighlight lang="xml"> <AdditionalInfoQueryRQ> <GeneralParameters> <PreferedLanguage LanguageCode="es"/> <PreferedCurrency CurrencyCode="ARS"/> </GeneralParameters> <Products> <Hotels ItemsCount="1"> <Hotel Sequence="1" TripProductID="fef501f1-962d-40e8-84eb-42373a0e343f"/> </Hotels> </Products> </AdditionalInfoQueryRQ> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
PreferedLanguage | Si | 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 | Si | Establece la moneda requerida para la respuesta.
Atributos: CurrencyCode: Código de moneda correspondiente a los códigos de moneda estándar provistos. |
Hotels | No | |
Hotel | Si | Se envía el id del hotel a consultar mediante el atributo TripProductID. |
- Respuesta:
<syntaxhighlight lang="xml"> <AdditionalInfoQueryRS>
<Details> <Products> <Hotels> <Hotel HotelCode="7590" SupplierID="MIK" Sequence="1" xmlns:ns="http://www.nemogroup.net/hcev/2008/04"> <HotelName>Days Hotel London North</HotelName> <HotelDescriptions ItemsCount="1"> <HotelDescription Sequence="1" HotelDescriptionType="General">Este hotel de 3 estrellas esta situado a las afueras de London y el año de apertura fue 2002. Esta a poca distancia en coche de Wembley Stadium y la estación más
cercana es Edgware. El hotel tiene un restaurante, un bar, un salón de convenciones y una cafeteria. Las 193 habitaciones estan equipadas con secador de pelo, caja de seguridad y aire acondicionado.</HotelDescription>
</HotelDescriptions> <Amenities ItemsCount="10"> <Amenity Fee="No" Sequence="1"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="14">Ascensores</Description> <ImageLink> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Ascensores</ImageDescription> <ImageURL>ic_elevador.gif</ImageURL> </ImageLink> </Amenity> <Amenity Fee="No" Sequence="2"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="5">Caja de seguridad</Description> </Amenity> <Amenity Fee="No" Sequence="3"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="32">Tiro al Arco</Description> </Amenity> <Amenity Fee="No" Sequence="4"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="7">Guardarropa</Description> <Value>193</Value> </Amenity> <Amenity Fee="No" Sequence="5"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="18">Sala de conferencias</Description> </Amenity> <Amenity Fee="No" Sequence="6"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="117">Se permite animales domésticos</Description> </Amenity> <Amenity Fee="No" Sequence="7"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="4">Secador</Description> </Amenity> <Amenity Fee="No" Sequence="8"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="34">Aire acondicionado</Description> <ImageLink> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Aire acondicionado</ImageDescription> <ImageURL>ic_aireac.gif</ImageURL> </ImageLink> </Amenity> <Amenity Fee="No" Sequence="9"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="237">television</Description> </Amenity> <Amenity Fee="No" Sequence="10"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="8">Radio</Description> </Amenity> </Amenities> <Addresses ItemsCount="1"> <Address Sequence="1"> <AddressLines ItemsCount="3"> <AddressLine Sequence="1">London Gateway, Services</AddressLine> <AddressLine Sequence="2">London</AddressLine> <AddressLine Sequence="3">U.k.</AddressLine> </AddressLines> <TelephoneNumbers ItemsCount="2"> <TelephoneNumber Sequence="1"> <TelephoneNumberType TelephoneNumberType="NMO.GBL.TLT.TE1"/> <TelephoneNumberValue>020 89067000</TelephoneNumberValue> </TelephoneNumber> <TelephoneNumber Sequence="2"> <TelephoneNumberType TelephoneNumberType="NMO.GBL.TLT.FAX"/> <TelephoneNumberValue>020 89067011</TelephoneNumberValue> </TelephoneNumber> </TelephoneNumbers> <Destinations ItemsCount="4"> <Destination Sequence="1" DestinationType="NMO.HTL.DST.CTY" DestinationCode="2757">Londres</Destination> <Destination Sequence="2" DestinationType="NMO.HTL.DST.CTR" DestinationCode="143">Reino Unido</Destination> <Destination Sequence="3" DestinationType="NMO.HTL.DST.CNT" DestinationCode="12">Europa</Destination> <Destination Sequence="4" DestinationType="NMO.HTL.DST.ALL" DestinationCode="1">Planeta Tierra</Destination> </Destinations> </Address> </Addresses> <Position> <Latitude>51.634681</Latitude> <Longitude>-0.26438</Longitude> </Position> <HotelRating HotelRatingCode="NMO.HTL.RTN.3ST" HotelRatingType="NMO.HTL.RTT.STR"> <RatingDescription>3 Estrellas</RatingDescription> <RatingValue>3.0</RatingValue> </HotelRating> <ImageLinks ItemsCount="6"> <ImageLink Sequence="1"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Exterior view</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>B/6/B6E5222965FCD939B8967908EE909116.jpg</ImageURL> <ThumbnailURL>4/3/43081546B80C1F2361A934E91E0B83F4.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="2"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>B/A/BA1FE7678A1DBABF62BB877A92B31404.jpg</ImageURL> <ThumbnailURL>D/2/D2CEAE049DA3A5D2D1F8C6CC1F911B67.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="3"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/7/F73A5A01DACC93E47CC6ECA33071A1A5.jpg</ImageURL> <ThumbnailURL>9/1/914733863EFF6EC19D48A23ED5AE697C.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="4"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>5/E/5EBE1CC8E1840C121C4BF0FBF40B6DCB.jpg</ImageURL> <ThumbnailURL>2/E/2EA36573BCE916FAFC09A32A590DBF1E.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="5"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Restaurant</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/0/F07D742D7500E4C1315EA73B6449861E.jpg</ImageURL> <ThumbnailURL>E/A/EA1A7F0CE29E848589485A346F35B81F.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="6"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Bar</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/5/F577413868BD10E0413F903462BFEA4B.jpg</ImageURL> <ThumbnailURL>4/9/491197FA9F74F1DE30FB7D0FBBE29348.jpg</ThumbnailURL> </ImageLink> </ImageLinks> <LocationDetails ItemsCount="1"> <Location Sequence="1" LocationCode="G8">Area suburbana</Location> </LocationDetails> </Hotel> </Hotels> </Products> </Details>
</AdditionalInfoQueryRS> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
Notifications No | ||
Notification | Si | Nodo que informa cuando ocurre algún error o excepción. En el atributo TripNumber se indica el trip al cual se refiere la notificación. |
NotificationId | Si | Identificador de la notificación. Las mismas serán provistas por Nemo. |
NotificationType | Si | Tipo de notificación. |
NotificationMessage | Si | Mensaje de notificación. |
Echo | No | En este nodo se envía una copia de la consulta realizada. |
Details | Si | |
Products | Si | |
Hotels | No | |
Hotel | Si | Información de un Hotel reportada por el proveedor asociado.
Atributos: HotelCode: Código del hotel de los provistos por Nemo. SupplierID: Código del proveedor correspondiente a los códigos de proveedor estándar provistos por Nemo. |
HotelName | Si | Nombre del hotel. |
AccomodationType | No | Indica si es hotel, hostel, camping, etc. |
HotelDescriptions | No | |
HotelDescription | No | Descripción del hotel.
Atributos: HotelDescriptionType: Tipo de descripción correspondiente a los tipos de descripción estándar provistos. |
LocationDetails | No | |
Location | No | Descripción del área en la que se localiza el hotel.
Atributos: LocationCode: Código de área provisto por el proveedor. Amenities || Si || Lista de amenidades brindadas por el hotel. |
Amenity | Si | Amenidad brindada por el hotel.
Atributos: Fee: Bandera que indica si la amenidad tiene cargo por huésped o no. |
AmenityGroup | Si | Descripción del tipo de amenidad.
Atributos: AmenityGroupCode: Código del tipo de amenidad correspondiente a los códigos de tipo de amenidad estándar provistos por Nemo. |
Description | Si | Descripción de la amenidad ofrecida por el hotel.
Atributos: AmenityCode: Código de amenidad correspondiente a los códigos de amenidad estándar provistos por Nemo. |
Address | Si | Dirección del hotel |
AddressLines | Si | Líneas que componen la dirección del hotel. |
AddressLine | Si | Indica la dirección del hotel. |
TelephoneNumbers | No | Lista de números telefónicos disponibles para el hotel. |
TelephoneNumber | Si | |
TelephoneNumberType | Si | Tipo de número telefónico.
Atributos: TelephoneNumberType: Tipo de número telefónico correspondiente a los tipos de números telefónicos estándar provistos por Nemo. |
TelephoneNumberValue | Si | Número telefónico. |
Destination | Si | Localización geográfica detallada del hotel.
Atributos: DestinationType: Tipo de destino(continente, país, región/provincia/estado, ciudad) correspondiente a los tipos de destino estándar provistos. DestinationCode: Código de destino correspondiente a los códigos de destino estándar provistos. |
Position | No | Coordenadas del hotel: Latitud y Longitud. |
HotelRating | Si | Categoría del hotel.
Atributos: HotelRatingCode: código de la categoría correspondiente a los códigos de categoría estándar provistos por Nemo. HotelRatingType: Tipo de la categoría correspondiente a los tipos de categoría estándar provistos por Nemo. |
RatingValue | Si | Valoración de la categoría del hotel expresada en el tipo de categoría indicado en el nodo padre. |
ImageLinks | Si | Conjunto de imágenes del hotel |
ImageLink | No | |
ImageDescription | Si | Descripción de la imagen
ImageDisplayType: Tipo de imagen correspondiente a los tipos de imágenes estándar provistos por Nemo. DisplayOrder || No || Orden del la imagen. |
ImageURL | Si | URL de la imagen |
AreaDetails | No | |
AreaDetail | No | Referencia al área en el que se localiza el hotel |
HotelRoomTypeDescriptions | No | Detalle de los tipos de habitación con los que cuenta el hotel. |
Copyright | No | Declaración de derechos de autor del proveedor de la información del hotel. |
Fares | Si | Datos de tarifas |
FareType | No | Tipo de tarifas, ej. Tarifa web, precio de agencia |
Prices | Si | Precios, con valor y moneda |
Exceptions | Si | Si no se puede armar el nodo Details se arma un nodo Exceptions con las notificaciones correspondientes. |
Confirmación de Disponibilidad de una Tarifa obtenida en una Búsqueda Anterior (AvailabilityValidation)
Confirma la vigencia de una tarifa provista por una consulta de disponibilidad previa
Request: AvailabilityQueryRQ
Response: AvailabilityQueryRS
Ejemplo de uso:
- Solicitud:
<syntaxhighlight lang="xml"> <AvailabilityValidationRQ> <GeneralParameters> <PreferedLanguage LanguageCode="es"/> <PreferedCurrency CurrencyCode="ARS"/> </GeneralParameters> <Products> <Hotels ItemsCount="1"> <Hotel Sequence="1" TripProductID="fef501f1-962d-40e8-84eb-42373a0e343f"/> </Hotels> </Products> </AvailabilityValidationRQ> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
GeneralParameters | Si | |
PreferedLanguage | Si | 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 | Si | Establece la moneda requerida para la respuesta.
Atributos: CurrencyCode: Código de moneda correspondiente a los códigos de moneda estándar provistos. |
Hotels | No | |
Hotel | Si | Se envía el id del hotel a consultar mediante el atributo TripProductID. |
- Respuesta:
<syntaxhighlight lang="xml"> <AvailabilityValidationRS>
<Details> <Products> <Hotels ItemsCount="1"> <Rate RateID="3727c45dbdafe53764a781ea39d8bd28#0" Sequence="1" HotelCode="7590" SupplierId="MIK"
TripProductID="fef501f1-962d-40e8-84eb-42373a0e343f">
<Rooms ItemsCount="1"> <Room Sequence="1" Type="NMO.HTL.RMT.SGL" Availability="NMO.HTL.AVB.CNF" RoomDescription="Simple"> <Occupancy> <Guests ItemsCount="1"> <Guest Sequence="1" PassengerSequence="1"/> </Guests> </Occupancy> </Room> </Rooms> <Boards ItemsCount="1"> <Board Sequence="1" Code="60" Type="BreakfastDescription">Desayuno incluido</Board> </Boards> <RatePrices ItemsCount="3"> <RatePrice Currency="ARS" Sequence="1" Type="NMO.HTL.RPT.NET">389.81860737273263</RatePrice> <RatePrice Currency="EUR" Sequence="2" Type="NMO.HTL.RPT.NBC">66.62</RatePrice> <RatePrice Currency="ARS" Sequence="3" Type="NMO.GBL.RPT.GRS">389.81860737273263</RatePrice> </RatePrices> <Passengers ItemsCount="1"> <Passenger Sequence="1" AgeType="NMO.GBL.AGT.ADT"/> </Passengers> <Destinations ItemsCount="1"> <Destination Sequence="1" DestinationType="NMO.HTL.DST.CTY" DestinationCode="2757"/> </Destinations> <Rating Code="NMO.HTL.RTN.3ST" Type="NMO.HTL.RTT.STR"> <Value>3.0</Value> <Description>3 Estrellas</Description> </Rating> <CheckIn>2013-12-20</CheckIn> <CheckOut>2013-12-22</CheckOut> </Rate> </Hotels> </Products> </Details>
</AvailabilityValidationRS> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
Notifications | No | |
Notification | Si | Nodo que informa cuando ocurre algún error o excepción. En el atributo TripNumber se indica el trip al cual se refiere la notificación. |
NotificationId | Si | Identificador de la notificación. Las mismas serán provistas por Nemo. |
NotificationType | Si | Tipo de notificación. |
NotificationMessage | Si | Mensaje de notificación. |
Echo | No | En este nodo se envía una copia de la consulta realizada. |
Details | Si | |
Products | Si | |
Hotels | No | |
Hotel | Si | Información de un Hotel reportada por el proveedor asociado.
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 | Si | 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. |
Occupancy | Si | Se informa la distribución de pasajeros en la habitación. |
Guests | Si | Lista de huespedes de la habitación con su información. |
Boards | No | |
Board | Si | Regímenes asociados a la habitación.
Atributos: Type: Tipo de régimen correspondiente a los tipos de régimen estándar provistos por Nemo. Code: Código del régimen correspondiente a los códigos de régimen estándar provistos. |
RatePrices | No | Se informan las tarifas de la habitación. |
Passengers | Si | Pajeros incluidos en la tarifa hotelera. |
Fares | Si | Datos de tarifas |
FareType | No | Tipo de tarifas, ej. Tarifa web, precio de agencia |
Prices | Si | Precios, con valor y moneda |
Consulta de Gastos de Cancelación para una o varias Tarifas ó Reservas (CancellationFeesQuery)
Consulta de condiciones de gastos de cancelación sobre una o más tarifas o reservas reportadas.
Request: CancellationFeesQueryRQ
Response: CancellationFeesQueryRS
Ejemplo de uso:
- Solicitud:
<syntaxhighlight lang="xml"> <CancellationFeesQueryRQ> <GeneralParameters> <PreferedLanguage LanguageCode="es"/> <PreferedCurrency CurrencyCode="ARS"/> </GeneralParameters> <Products> <Hotels ItemsCount="1"> <Hotel Sequence="1" TripProductID="fef501f1-962d-40e8-84eb-42373a0e343f"/> </Hotels> </Products> </CancellationFeesQueryRQ> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
GeneralParameters | Si | |
PreferedLanguage | Si | 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 | Si | Establece la moneda requerida para la respuesta.
Atributos: - CurrencyCode: Código de moneda correspondiente a los códigos de moneda estándar provistos. |
Products | Si | |
Hotels | No | |
Hotel | Si | Atributos:
- TripProductId: Identificador del producto |
- Respuesta:
<syntaxhighlight lang="xml"> <CancellationFeesQueryRS>
<Details> <Products> <Hotels ItemsCount="1"> <Hotel Sequence="1" HotelCode="7590" SupplierID="MIK"> <Hotel Sequence="1" SupplierID="MIK" HotelCode="7590"> <HotelName>Days Hotel London North</HotelName> <HotelDescriptions ItemsCount="1"> <HotelDescription Sequence="1" HotelDescriptionType="General">Este hotel de 3 estrellas esta situado a las afueras de London y el año de apertura fue 2002. Esta a poca distancia en coche de Wembley Stadium y la estación más cercana es Edgware. El hotel tiene un restaurante, un bar, un salón de convenciones y una cafeteria. Las 193 habitaciones estan equipadas con secador de pelo, caja de seguridad y aire acondicionado.</HotelDescription> </HotelDescriptions> <LocationDetails ItemsCount="1"> <Location Sequence="1" LocationCode="G8">Area suburbana</Location> </LocationDetails> <Amenities ItemsCount="10"> <Amenity Fee="No" Sequence="1"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="14">Ascensores</Description> <ImageLink> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Ascensores</ImageDescription> <ImageURL>ic_elevador.gif</ImageURL> </ImageLink> </Amenity> <Amenity Fee="No" Sequence="2"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="5">Caja de seguridad</Description> </Amenity> <Amenity Fee="No" Sequence="3"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="32">Tiro al Arco</Description> </Amenity> <Amenity Fee="No" Sequence="4"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="7">Guardarropa</Description> <Value>193</Value> </Amenity> <Amenity Fee="No" Sequence="5"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="18">Sala de conferencias</Description> </Amenity> <Amenity Fee="No" Sequence="6"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="117">Se permite animales domésticos</Description> </Amenity> <Amenity Fee="No" Sequence="7"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="4">Secador</Description> </Amenity> <Amenity Fee="No" Sequence="8"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="34">Aire acondicionado</Description> <ImageLink> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Aire acondicionado</ImageDescription> <ImageURL>ic_aireac.gif</ImageURL> </ImageLink> </Amenity> <Amenity Fee="No" Sequence="9"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="237">television</Description> </Amenity> <Amenity Fee="No" Sequence="10"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="8">Radio</Description> </Amenity> </Amenities> <Addresses ItemsCount="1"> <Address Sequence="1"> <AddressLines ItemsCount="3"> <AddressLine Sequence="1">London Gateway, Services</AddressLine> <AddressLine Sequence="2">London</AddressLine> <AddressLine Sequence="3">U.k.</AddressLine> </AddressLines> <TelephoneNumbers ItemsCount="2"> <TelephoneNumber Sequence="1"> <TelephoneNumberType TelephoneNumberType="NMO.GBL.TLT.TE1"/> <TelephoneNumberValue>020 89067000</TelephoneNumberValue> </TelephoneNumber> <TelephoneNumber Sequence="2"> <TelephoneNumberType TelephoneNumberType="NMO.GBL.TLT.FAX"/> <TelephoneNumberValue>020 89067011</TelephoneNumberValue> </TelephoneNumber> </TelephoneNumbers> <Destinations ItemsCount="4"> <Destination Sequence="1" DestinationType="NMO.HTL.DST.CTY" DestinationCode="2757">Londres</Destination> <Destination Sequence="2" DestinationType="NMO.HTL.DST.CTR" DestinationCode="143">Reino Unido</Destination> <Destination Sequence="3" DestinationType="NMO.HTL.DST.CNT" DestinationCode="12">Europa</Destination> <Destination Sequence="4" DestinationType="NMO.HTL.DST.ALL" DestinationCode="1">Planeta Tierra</Destination> </Destinations> </Address> </Addresses> <Position> <Latitude>51.634681</Latitude> <Longitude>-0.26438</Longitude> </Position> <HotelRating HotelRatingCode="NMO.HTL.RTN.3ST" HotelRatingType="NMO.HTL.RTT.STR"> <RatingDescription>3 Estrellas</RatingDescription> <RatingValue>3.0</RatingValue> </HotelRating> <ImageLinks ItemsCount="6"> <ImageLink Sequence="1"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Exterior view</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>B/6/B6E5222965FCD939B8967908EE909116.jpg</ImageURL> <ThumbnailURL>4/3/43081546B80C1F2361A934E91E0B83F4.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="2"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>B/A/BA1FE7678A1DBABF62BB877A92B31404.jpg</ImageURL> <ThumbnailURL>D/2/D2CEAE049DA3A5D2D1F8C6CC1F911B67.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="3"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/7/F73A5A01DACC93E47CC6ECA33071A1A5.jpg</ImageURL> <ThumbnailURL>9/1/914733863EFF6EC19D48A23ED5AE697C.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="4"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>5/E/5EBE1CC8E1840C121C4BF0FBF40B6DCB.jpg</ImageURL> <ThumbnailURL>2/E/2EA36573BCE916FAFC09A32A590DBF1E.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="5"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Restaurant</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/0/F07D742D7500E4C1315EA73B6449861E.jpg</ImageURL> <ThumbnailURL>E/A/EA1A7F0CE29E848589485A346F35B81F.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="6"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Bar</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/5/F577413868BD10E0413F903462BFEA4B.jpg</ImageURL> <ThumbnailURL>4/9/491197FA9F74F1DE30FB7D0FBBE29348.jpg</ThumbnailURL> </ImageLink> </ImageLinks> </Hotel> <DestinationDetails ItemsCount="4"> <Destination Sequence="1" DestinationType="NMO.HTL.DST.CTY" DestinationCode="2757">Londres</Destination> <Destination Sequence="2" DestinationType="NMO.HTL.DST.CTR" DestinationCode="143">Reino Unido</Destination> <Destination Sequence="3" DestinationType="NMO.HTL.DST.CNT" DestinationCode="12">Europa</Destination> <Destination Sequence="4" DestinationType="NMO.HTL.DST.ALL" DestinationCode="1">Planeta Tierra</Destination> </DestinationDetails> <CheckIn>2013-12-20</CheckIn> <CheckOut>2013-12-22</CheckOut> <Rate RateID="3727c45dbdafe53764a781ea39d8bd28#0" TripProductID="fef501f1-962d-40e8-84eb-42373a0e343f"> <Rooms ItemsCount="1"> <Room Sequence="1"> <RoomDescription RoomType="NMO.HTL.RMT.SGL">Simple</RoomDescription> <Occupancy> <AdultsCount>1</AdultsCount> <ChildrenCount>0</ChildrenCount> <InfantCount>0</InfantCount> <RoomsCount>1</RoomsCount> <Passengers ItemsCount="1"> <Passenger Sequence="1" AgeType="NMO.GBL.AGT.ADT"/> </Passengers> </Occupancy> <Availability AvailabilityCode="NMO.HTL.AVB.CNF">Confirmación Inmediata</Availability> </Room> </Rooms> <Boards ItemsCount="1"> <Board Sequence="1" BoardType="BreakfastDescription" BoardCode="60" AppliableDays="A">Desayuno incluido</Board> </Boards> <RatePrices ItemsCount="3"> <RatePrice Sequence="1" Currency="ARS" Type="NMO.HTL.RPT.NET">389.81860737273263</RatePrice> <RatePrice Sequence="2" Currency="EUR" Type="NMO.HTL.RPT.NBC">66.62</RatePrice> <RatePrice Sequence="3" Currency="ARS" Type="NMO.GBL.RPT.GRS">389.81860737273263</RatePrice> </RatePrices> <ChargeConditions ItemsCount="2"> <ChargeCondition Sequence="1"> <ChargeDescription ChargeType="NMO.HTL.CHT.CAN">Gastos de cancelación</ChargeDescription> <DateRangeWithDays> <DateFrom>0</DateFrom> <DateTo>2</DateTo> </DateRangeWithDays> <RatePrices ItemsCount="3"> <RatePrice Sequence="1" Currency="ARS" Type="NMO.HTL.RPT.NET">194.90930368636631</RatePrice> <RatePrice Sequence="2" Currency="EUR" Type="NMO.HTL.RPT.NBC">33.31</RatePrice> <RatePrice Sequence="3" Currency="ARS" Type="NMO.GBL.RPT.GRS">194.90930368636631</RatePrice> </RatePrices> </ChargeCondition> <ChargeCondition Sequence="2"> <ChargeDescription ChargeType="NMO.HTL.CHT.CAN">Gastos de cancelación</ChargeDescription> <DateRangeWithDays> <DateFrom>0</DateFrom> <DateTo>1</DateTo> </DateRangeWithDays> <RatePrices ItemsCount="3"> <RatePrice Sequence="1" Currency="ARS" Type="NMO.HTL.RPT.NET">389.81860737273263</RatePrice> <RatePrice Sequence="2" Currency="EUR" Type="NMO.HTL.RPT.NBC">66.62</RatePrice> <RatePrice Sequence="3" Currency="ARS" Type="NMO.GBL.RPT.GRS">389.81860737273263</RatePrice> </RatePrices> </ChargeCondition> </ChargeConditions> <Deadline> <Date>2013-12-15T00:00:00.000-03:00</Date> </Deadline> </Rate> </Hotel> </Hotels> </Products> </Details>
</CancellationFeesQueryRS> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
Notifications | No | |
Notification | Si | Nodo que informa cuando ocurre algún error o excepción. En el atributo TripNumber se indica el trip al cual se refiere la notificación. |
NotificationId | Si | Identificador de la notificación. Las mismas serán provistas por Nemo. |
NotificationType | Si | Tipo de notificación. |
NotificationMessage | Si | Mensaje de notificación. |
Details | Si | |
Hotel | No | Contiene toda la información del hotel. |
HotelName | Si | Nombre del hotel. |
AccomodationType | No | Indica si es hotel, hostel, camping, etc, los tipos serán provistos por Nemo. |
HotelDescriptions | No | |
HotelDescription | Si | Descripción del hotel.
Atributos: HotelDescriptionType: Tipo de descripción correspondiente a los tipos de descripción estándar provistos por Nemo. |
LocationDetails | No | |
Location | No | Descripción del área en la que se localiza el hotel.
Atributos: LocationCode: Código de área provisto por el proveedor. |
Amenities | No | |
Amenity | No | Código de amenidad admitido.
Atributos: AmenityGroupCode: Tipo de amenidad. Los tipos de amenidad admitidos corresponden a los provistos por Nemo. AmenityCode: Código de amenidad. Los códigos de amenidad admitidos corresponden a los provistos. |
Address | Si | Dirección del hotel |
AddressLines | Si | Líneas que componen la dirección del hotel. |
AddressLine | Si | Indica la dirección del hotel. |
Position | No | Coordenadas del hotel: Latitud y Longitud. |
HotelRating | Si | Categoría del hotel.
Atributos: HotelRatingCode: código de la categoría correspondiente a los códigos de categoría estándar provistos por Nemo. HotelRatingType: Tipo de la categoría correspondiente a los tipos de categoría estándar provistos por Nemo. |
RatingValue | Si | Valoración de la categoría del hotel expresada en el tipo de categoría indicado en el nodo padre. |
ImageLinks | Si | Conjunto de imágenes del hotel |
ImageLink | No | |
ImageDescription | Si | Descripción de la imagen
ImageDisplayType: Tipo de imagen correspondiente a los tipos de imágenes estándar provistos por Nemo. |
DisplayOrder | No | Orden del la imagen. |
ImageURL | Si | URL de la imagen |
DestinationDetails | Si | Atributos:
DestinationType: tipo de destino de los provistos por Nemo. Destination Code: código del destino a buscar, de los provistos por Nemo. |
CheckIn | No | Fecha de entrada de la estadía. |
CheckOut | No | Fecha de salida de la estadía |
Rate | Si | Tarifa a reservar, indicando con el atributo TripProductId el id del hotel a reservar. |
Rooms | No | |
Room | Si | |
Occupancy | Si | Indica la cantidad de adultos, niños e infantes por cada habitación.
En el nodo Guest se encuentra el identificador del pasajero, atributo PassengerSequence. Este dato se obtiene del Sequence del nodo Passenger. |
Passenger | No | Datos de los pasajeros.
Atributos: AgeType: tipo de pasajero (chl, inf, adt). Sequence: Este dato será asociado al PassengerSequence del nodo Guest en hoteles. |
Exceptions | Si | Si no se puede armar el nodo Details se arma un nodo Exceptions con las notificaciones correspondientes. |
ChargeConditions | Si | Nodo de gastos de cancelación |
ChargeCondition | Si | Gasto de Cancelación
Atributo: - ChargeType, tipo de cargo (Ej. NMO.HTL.CHT.CAN cancelación, NMO.HTL.CHT.AMD Modificación) |
ChargeDescription | Si | Descripción del gastos de cancelación |
DateRangeWithDays | No | Indica que el gasto de cancelación tiene un rango en base a días. |
DateFrom | Si | Fecha desde |
DateTo | Si | Fecha hasta |
DateRangeWithDateType | No | Indica que el gasto de cancelación tiene un rango en base a fechas. |
DateFrom | Si | Fecha desde |
DateTo | Si | Fecha hasta |
RatePrices | Si | |
RatePrice | Si | Indica el importe del concepto de cancelación
Atributos: - RatePriceType, tipo de precio |
Reserva de Tarifa (BookingProducts)
Solicitud de reserva para una o varias tarifas de hoteles.
Request: BookingProductsRQ
Response: BookingProductsRS
Ejemplo de uso:
- Solicitud:
<syntaxhighlight lang="xml"> <BookingProductsRQ> <GeneralParameters> <PreferedLanguage LanguageCode="es"/> <PreferedCurrency CurrencyCode="ARS"/> </GeneralParameters> <Products> <Hotels ItemsCount="2"> <Hotel Sequence="1" TripProductID="fef501f1-962d-40e8-84eb-42373a0e343f"> <Rooms ItemsCount="1"> <Room Sequence="1" RoomType="NMO.HTL.RMT.SGL"> <Guests ItemsCount="1"> <Guest Sequence="1" PassengerSequence="1"/> </Guests> </Room> </Rooms> </Hotel> </Hotels> <Passengers ItemsCount="1"> <Passenger AgeType="NMO.GBL.AGT.ADT" Sequence="1"> <PersonNames ItemsCount="2"> <PersonName Sequence="1" NameType="NMO.GBL.PNT.FIR">nombre</PersonName> <PersonName Sequence="2" NameType="NMO.GBL.PNT.LAS">apellido</PersonName> </PersonNames> </Passenger> </Passengers> </Products> </BookingProductsRQ> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
GeneralParameters | Si | |
PreferedLanguage | Si | 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 | Si | Establece la moneda requerida para la respuesta.
Atributos: CurrencyCode: Código de moneda correspondiente a los códigos de moneda estándar provistos. |
Hoteles | No | |
Hotel | Si | |
Rate | Si | Tarifa a reservar, indicando con el atributo TripProductId el id del hotel a reservar. |
Rooms | No | |
Room | Si | |
Occupancy | Si | Indica la cantidad de adultos, niños e infantes por cada habitación.
En el nodo Guest se encuentra el identificador del pasajero, atributo PassengerSequence. Este dato se obtiene del Sequence del nodo Passenger. |
Passenger | No | Datos de los pasajeros.
Atributos: AgeType: tipo de pasajero (chl, inf, adt). Sequence: Este dato será asociado al PassengerSequence del nodo Guest en hoteles. |
- Respuesta:
<syntaxhighlight lang="xml"> <BookingProductsRS>
<Details> <BookingReference>QN_006OF</BookingReference> <BookingState>NMO.GBL.BST.CNF</BookingState> <Products> <Hotels ItemsCount="1"> <Hotel Sequence="1" HotelCode="7590" SupplierID="MIK" LogID="162718"> <BookingReferences ItemsCount="2"> <BookingReference Sequence="1" ReferenceType="NMO.HTL.RPT.MPH">QN_006OF-1</BookingReference> <BookingReference Sequence="2" ReferenceType="NMO.HTL.RPT.PRS">E00166024</BookingReference> </BookingReferences> <BookingStatusList ItemsCount="1"> <BookingStatus Sequence="1"> <BookingStatusDescription BookingStatusCode="NMO.HTL.BST.CNF">Confirmado</BookingStatusDescription> <BookingStatusTime>09:19:06.884-03:00</BookingStatusTime> </BookingStatus> </BookingStatusList> <Hotel Sequence="1" SupplierID="MIK" HotelCode="7590"> <HotelName>Days Hotel London North</HotelName> <HotelDescriptions ItemsCount="1"> <HotelDescription Sequence="1" HotelDescriptionType="General">Este hotel de 3 estrellas esta situado a las afueras de London y el año de apertura fue 2002. Esta a poca distancia en coche de Wembley Stadium y la estación más cercana es Edgware. El hotel tiene un restaurante, un bar, un salón de convenciones y una cafeteria. Las 193 habitaciones estan equipadas con secador de pelo, caja de seguridad y aire acondicionado.</HotelDescription> </HotelDescriptions> <LocationDetails ItemsCount="1"> <Location Sequence="1" LocationCode="G8">Area suburbana</Location> </LocationDetails> <Amenities ItemsCount="10"> <Amenity Fee="No" Sequence="1"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="14">Ascensores</Description> <ImageLink> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Ascensores</ImageDescription> <ImageURL>ic_elevador.gif</ImageURL> </ImageLink> </Amenity> <Amenity Fee="No" Sequence="2"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="5">Caja de seguridad</Description> </Amenity> <Amenity Fee="No" Sequence="3"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="32">Tiro al Arco</Description> </Amenity> <Amenity Fee="No" Sequence="4"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="7">Guardarropa</Description> <Value>193</Value> </Amenity> <Amenity Fee="No" Sequence="5"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="18">Sala de conferencias</Description> </Amenity> <Amenity Fee="No" Sequence="6"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="117">Se permite animales domésticos</Description> </Amenity> <Amenity Fee="No" Sequence="7"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="4">Secador</Description> </Amenity> <Amenity Fee="No" Sequence="8"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="34">Aire acondicionado</Description> <ImageLink> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Aire acondicionado</ImageDescription> <ImageURL>ic_aireac.gif</ImageURL> </ImageLink> </Amenity> <Amenity Fee="No" Sequence="9"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="237">television</Description> </Amenity> <Amenity Fee="No" Sequence="10"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="8">Radio</Description> </Amenity> </Amenities> <Addresses ItemsCount="1"> <Address Sequence="1"> <AddressLines ItemsCount="3"> <AddressLine Sequence="1">London Gateway, Services</AddressLine> <AddressLine Sequence="2">London</AddressLine> <AddressLine Sequence="3">U.k.</AddressLine> </AddressLines> <TelephoneNumbers ItemsCount="2"> <TelephoneNumber Sequence="1"> <TelephoneNumberType TelephoneNumberType="NMO.GBL.TLT.TE1"/> <TelephoneNumberValue>020 89067000</TelephoneNumberValue> </TelephoneNumber> <TelephoneNumber Sequence="2"> <TelephoneNumberType TelephoneNumberType="NMO.GBL.TLT.FAX"/> <TelephoneNumberValue>020 89067011</TelephoneNumberValue> </TelephoneNumber> </TelephoneNumbers> <Destinations ItemsCount="4"> <Destination Sequence="1" DestinationType="NMO.HTL.DST.CTY" DestinationCode="2757">Londres</Destination> <Destination Sequence="2" DestinationType="NMO.HTL.DST.CTR" DestinationCode="143">Reino Unido</Destination> <Destination Sequence="3" DestinationType="NMO.HTL.DST.CNT" DestinationCode="12">Europa</Destination> <Destination Sequence="4" DestinationType="NMO.HTL.DST.ALL" DestinationCode="1">Planeta Tierra</Destination> </Destinations> </Address> </Addresses> <Position> <Latitude>51.634681</Latitude> <Longitude>-0.26438</Longitude> </Position> <HotelRating HotelRatingCode="NMO.HTL.RTN.3ST" HotelRatingType="NMO.HTL.RTT.STR"> <RatingDescription>3 Estrellas</RatingDescription> <RatingValue>3.0</RatingValue> </HotelRating> <ImageLinks ItemsCount="6"> <ImageLink Sequence="1"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Exterior view</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>B/6/B6E5222965FCD939B8967908EE909116.jpg</ImageURL> <ThumbnailURL>4/3/43081546B80C1F2361A934E91E0B83F4.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="2"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>B/A/BA1FE7678A1DBABF62BB877A92B31404.jpg</ImageURL> <ThumbnailURL>D/2/D2CEAE049DA3A5D2D1F8C6CC1F911B67.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="3"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/7/F73A5A01DACC93E47CC6ECA33071A1A5.jpg</ImageURL> <ThumbnailURL>9/1/914733863EFF6EC19D48A23ED5AE697C.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="4"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>5/E/5EBE1CC8E1840C121C4BF0FBF40B6DCB.jpg</ImageURL> <ThumbnailURL>2/E/2EA36573BCE916FAFC09A32A590DBF1E.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="5"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Restaurant</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/0/F07D742D7500E4C1315EA73B6449861E.jpg</ImageURL> <ThumbnailURL>E/A/EA1A7F0CE29E848589485A346F35B81F.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="6"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Bar</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/5/F577413868BD10E0413F903462BFEA4B.jpg</ImageURL> <ThumbnailURL>4/9/491197FA9F74F1DE30FB7D0FBBE29348.jpg</ThumbnailURL> </ImageLink> </ImageLinks> </Hotel> <DestinationDetails ItemsCount="4"> <Destination Sequence="1" DestinationType="NMO.HTL.DST.CTY" DestinationCode="2757">Londres</Destination> <Destination Sequence="2" DestinationType="NMO.HTL.DST.CTR" DestinationCode="143">Reino Unido</Destination> <Destination Sequence="3" DestinationType="NMO.HTL.DST.CNT" DestinationCode="12">Europa</Destination> <Destination Sequence="4" DestinationType="NMO.HTL.DST.ALL" DestinationCode="1">Planeta Tierra</Destination> </DestinationDetails> <CheckIn>2013-12-20</CheckIn> <CheckOut>2013-12-22</CheckOut> <Rate RateID="3727c45dbdafe53764a781ea39d8bd28#0" TripProductID="971cf657-9cf4-4b7a-aeaa-32c7d354f71d"> <Rooms ItemsCount="1"> <Room Sequence="1"> <RoomDescription RoomType="NMO.HTL.RMT.SGL">Simple</RoomDescription> <Occupancy> <AdultsCount>1</AdultsCount> <ChildrenCount>0</ChildrenCount> <InfantCount>0</InfantCount> <RoomsCount>1</RoomsCount> <Passengers ItemsCount="1"> <Passenger Sequence="1" AgeType="NMO.GBL.AGT.ADT"> <PersonNames ItemsCount="2"> <PersonName Sequence="1" NameType="NMO.GBL.PNT.FIR">nombre</PersonName> <PersonName Sequence="2" NameType="NMO.GBL.PNT.LAS">apellido</PersonName> </PersonNames> </Passenger> </Passengers> </Occupancy> <Availability AvailabilityCode="NMO.HTL.AVB.CNF">Confirmación Inmediata</Availability> </Room> </Rooms> <Boards ItemsCount="1"> <Board Sequence="1" BoardType="BreakfastDescription" BoardCode="60" AppliableDays="A">Desayuno incluido</Board> </Boards> <RatePrices ItemsCount="3"> <RatePrice Sequence="1" Currency="ARS" Type="NMO.HTL.RPT.NET">389.81860737273263</RatePrice> <RatePrice Sequence="2" Currency="EUR" Type="NMO.HTL.RPT.NBC">66.62</RatePrice> <RatePrice Sequence="3" Currency="ARS" Type="NMO.GBL.RPT.GRS">389.81860737273263</RatePrice> </RatePrices> </Rate> <BookingCreationDT>2013-07-30T09:18:52.573-03:00</BookingCreationDT> </Hotel> </Hotels> </Products> </Details>
</BookingProductsRS> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
Notifications | No | |
Notification | Si | Nodo que informa cuando ocurre algún error o excepción. En el atributo TripNumber se indica el trip al cual se refiere la notificación. |
NotificationId | Si | Identificador de la notificación. Las mismas serán provistas por Nemo. |
NotificationType | Si | Tipo de notificación. |
NotificationMessage | Si | Mensaje de notificación. |
Details | Si | |
Bookings | Si | |
Booking | Si | Detalle de la reserva.
Atributos:
|
Hotel | Si | |
BookingReferences | No | Identificadores de la resera. |
BookingStatusList | No | Estados del “ítem”. |
BookingStatus | Si | |
BookingStatusDescription | Si | Descripción del estado actual de la reserva.
BookingStatusCode: Código del estado de la reserva correspondiente a los códigos estándar de reserva provistos por Nemo. |
Hotel | No | Contiene toda la información del hotel. |
HotelName | Si | Nombre del hotel. |
AccomodationType | No | Indica si es hotel, hostel, camping, etc, los tipos serán provistos por Nemo. |
HotelDescriptions | No | |
HotelDescription | Si | Descripción del hotel.
Atributos: HotelDescriptionType: Tipo de descripción correspondiente a los tipos de descripción estándar provistos por Nemo. |
LocationDetails | No | |
Location | No | Descripción del área en la que se localiza el hotel.
Atributos: LocationCode: Código de área provisto por el proveedor. |
Amenities | No | |
Amenity | No | Código de amenidad admitido.
Atributos: AmenityGroupCode: Tipo de amenidad. Los tipos de amenidad admitidos corresponden a los provistos por Nemo. AmenityCode: Código de amenidad. Los códigos de amenidad admitidos corresponden a los provistos. |
Address | Si | Dirección del hotel |
AddressLines | Si | Líneas que componen la dirección del hotel. |
AddressLine | Si | Indica la dirección del hotel. |
Position | No | Coordenadas del hotel: Latitud y Longitud. |
HotelRating | Si | Categoría del hotel.
Atributos: HotelRatingCode: código de la categoría correspondiente a los códigos de categoría estándar provistos por Nemo. HotelRatingType: Tipo de la categoría correspondiente a los tipos de categoría estándar provistos por Nemo. |
RatingValue | Si | Valoración de la categoría del hotel expresada en el tipo de categoría indicado en el nodo padre. |
ImageLinks | Si | Conjunto de imágenes del hotel |
ImageLink | No | |
ImageDescription | Si | Descripción de la imagen
ImageDisplayType: Tipo de imagen correspondiente a los tipos de imágenes estándar provistos por Nemo. |
DisplayOrder | No | Orden del la imagen. |
ImageURL | Si | URL de la imagen |
DestinationDetails | Si | Atributos:
DestinationType: tipo de destino de los provistos por Nemo. Destination Code: código del destino a buscar, de los provistos por Nemo. |
CheckIn | No | Fecha de entrada de la estadía. |
CheckOut | No | Fecha de salida de la estadía |
Rate | Si | Tarifa a reservar, indicando con el atributo TripProductId el id del hotel a reservar. |
Rooms | No | |
Room | Si | |
Occupancy | Si | Indica la cantidad de adultos, niños e infantes por cada habitación.
En el nodo Passengers se encuentran los datos de los pasajeros. |
ImageDescription | Si | Descripción de la imagen
ImageDisplayType: Tipo de imagen correspondiente a los tipos de imágenes estándar provistos por Nemo. |
ImageHeight | No | Dimensiones de la imagen: alto |
ImageWidht | No | Dimensiones de la imagen: Ancho |
ImageURL | Si | URL de la imagen |
ThumbnailURL | No | URL de la imagen miniatura |
Fares | Si | Datos de tarifas |
FareType | No | Tipo de tarifas, ej. Tarifa web, precio de agencia |
Prices | Si | Precios, con valor y moneda |
BookingState | Si | Estado de la reserva (del ítem). La codificación de los estados será provista por Nemo.
Atributos: Code: Código del estado (confirmada, rechazada, etc) |
ProductBookingExtraData | No | Nodo que se utiliza para registrar datos genéricos sobre una reserva. Luego al consultar la misma el sistema responderá con los datos registrados. |
Exceptions | Si | Si no se puede armar el nodo Details se arma un nodo Exceptions con las notificaciones correspondientes. |
ChargeConditions | Si | Nodo de gastos de cancelación |
ChargeCondition | Si | Gasto de Cancelación
Atributo: ChargeType, tipo de cargo (Ej. NMO.HTL.CHT.CAN cancelación, NMO.HTL.CHT.AMD Modificación) |
ChargeDescription | Si | Descripción del gastos de cancelación |
DateRangeWithDays | No | Indica que el gasto de cancelación tiene un rango en base a días. |
DateFrom | Si | Fecha desde |
DateTo | Si | Fecha hasta |
DateRangeWithDateType | No | Indica que el gasto de cancelación tiene un rango en base a fechas. |
DateFrom | Si | Fecha desde |
DateTo | Si | Fecha hasta |
RatePrices | Si | |
RatePrice | Si | Indica el importe del concepto de cancelación
Atributos: RatePriceType, tipo de precio |
Cancelación de Reserva (BookingCancellation)
Solicitud de cancelación de una o varias reservas realizadas.
Request: BookingCancellationRQ
Response: BookingCancellationRS
Ejemplo de uso:
- Solicitud:
<syntaxhighlight lang="xml"> <BookingCancellationRQ> <GeneralParameters> <PreferedLanguage LanguageCode="es"/> <PreferedCurrency CurrencyCode="ARS"/> </GeneralParameters> <Bookings ItemsCount="1"> <Booking BookingReference="QN_006OF" Sequence="1"/> </Bookings> </BookingCancellationRQ> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
GeneralParameters | Si | |
PreferedLanguage | Si | 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 | Si | Establece la moneda requerida para la respuesta.
Atributos: - CurrencyCode: Código de moneda correspondiente a los códigos de moneda estándar provistos. |
Products | Si | |
BookingReference | Si | Atributos:
- ReferenceType: Tipo de referencia, por ejemplo OLA.GBL.BRT.HTL – Referencia de reserva de hoteles. Valor: Identificador entregado en la respuesta de reserva |
Hotels | No | |
Hotel | Si | |
BookingReference | Si | Atributos:
- ReferenceType: Tipo de referencia, por ejemplo OLA.GBL.BRT.HTL – Referencia de reserva de hoteles. Valor: Identificador entregado en la respuesta de reserva |
- Respuesta:
<syntaxhighlight lang="xml"> <BookingCancellationRS>
<Details> <Bookings ItemsCount="1"> <Booking> <BookingReference ReferenceType="NMO.GBL.BRT.NAV" Sequence="1">QN_006OF</BookingReference> <BookingState>NMO.GBL.BST.CAN</BookingState> <Products> <Hotels ItemsCount="1"> <Hotel Sequence="1"> <BookingReferences ItemsCount="1"> <BookingReference ReferenceType="NMO.GBL.BRT.NAV" Sequence="1">QN_006OF-1</BookingReference> </BookingReferences> <BookingState Code="NMO.HTL.BST.CAN">NMO.HTL.BST.CAN</BookingState> </Hotel> </Hotels> <Passengers ItemsCount="0"/> </Products> </Booking> </Bookings> </Details>
</BookingCancellationRS> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
Notifications | No | |
Notification | Si | Nodo que informa cuando ocurre algún error o excepción. En el atributo TripNumber se indica el trip al cual se refiere la notificación. |
NotificationId | Si | Identificador de la notificación. Las mismas serán provistas por Nemo. |
NotificationType | Si | Tipo de notificación. |
NotificationMessage | Si | Mensaje de notificación. |
Details | Si | |
Bookings | Si | |
Booking | Si | Detalle de la reserva.
Atributos: - BookingReference: identificador de la reserva. - BookingState: estado de la reserva |
ReceivedFrom | Si | Nombre de la persona que firma los cambios de la reserva. |
BookingState | No | Estado de la reserva (del ítem). La codificación de los estados será provista por Nemo. |
Hotels | No | |
Hotel | Si | |
BookingReferences | No | Identificadores de la resera. |
BookingState | No | Estado actual de la reserva.
BookingStateCode: Código del estado de la reserva correspondiente a los códigos estándar de reserva provistos por Nemo. |
Fares | Si | Datos de tarifas |
FareType | No | Tipo de tarifas, ej. Tarifa web, precio de agencia |
Prices | Si | Precios, con valor y moneda |
BookingReferences | No | Identificadores de la reserva |
BookingState | Si | Estado de la reserva (del ítem). La codificación de los estados será provista por Nemo.
Atributos: Code: Código del estado (confirmada, rechazada, etc) |
Passenger | No | Datos de los pasajeros.
Atributos: AgeType: tipo de pasajero (chl, inf, adt). Sequence: Este dato será asociado al PassengerSequence del nodo Guest en hoteles. |
Exceptions | Si | Si no se puede armar el nodo Details se arma un nodo Exceptions con las notificaciones correspondientes. |
Consulta de Reserva (BookingQuery)
Consulta de información y detalles sobre una o varias reservas realizadas. Request: BookingQueryRQ Response: BookingQueryRS
Ejemplo de uso:
- Solicitud:
<syntaxhighlight lang="xml"> <BookingQueryRQ> <GeneralParameters> <PreferedLanguage LanguageCode="es"/> <PreferedCurrency CurrencyCode="ARS"/> </GeneralParameters> <Bookings ItemsCount="1"> <Booking BookingReference="QN_006OF" Sequence="1"/> </Bookings> </BookingQueryRQ> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
GeneralParameters | Si | |
PreferedLanguage | Si | 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 | Si | Establece la moneda requerida para la respuesta.
Atributos: CurrencyCode: Código de moneda correspondiente a los códigos de moneda estándar provistos. |
Bookings | Si | Mediante el nodo Booking se cargan las reservas a consultar.
Atributos: BookingReference: identificador de la reserva a consultar. |
- Respuesta:
<syntaxhighlight lang="xml"> <BookingQueryRS>
<Details> <Bookings ItemsCount="1"> <Booking Sequence="1"> <BookingReference>QN_006OF</BookingReference> <BookingState>NMO.GBL.BST.CAN</BookingState> <Products> <Hotels ItemsCount="1"> <Hotel Sequence="1" HotelCode="7590" SupplierID="MIK"> <BookingReferences ItemsCount="2"> <BookingReference Sequence="1" ReferenceType="NMO.HTL.RPT.MPH">QN_006OF-1</BookingReference> <BookingReference Sequence="2" ReferenceType="NMO.HTL.RPT.PRS">E00166024</BookingReference> </BookingReferences> <BookingStatusList ItemsCount="1"> <BookingStatus Sequence="1"> <BookingStatusDescription BookingStatusCode="NMO.HTL.BST.CAN">Cancelado</BookingStatusDescription> <BookingStatusTime>09:19:34.048-03:00</BookingStatusTime> <RulesInfo ItemsCount="4"> <RuleInfo Sequence="1" Permit="true" RuleType="NMO.GBL.RBS.DET"/> <RuleInfo Sequence="2" Permit="false" RuleType="NMO.GBL.RBS.VOU"/> <RuleInfo Sequence="3" Permit="false" RuleType="NMO.GBL.RBS.CAN"/> <RuleInfo Sequence="4" Permit="false" RuleType="NMO.GBL.RBS.PAY"/> </RulesInfo> </BookingStatus> </BookingStatusList> <Hotel Sequence="1" SupplierID="MIK" HotelCode="7590"> <HotelName>Days Hotel London North</HotelName> <HotelDescriptions ItemsCount="1"> <HotelDescription Sequence="1" HotelDescriptionType="General">Este hotel de 3 estrellas esta situado a las afueras de London y el año de apertura fue 2002. Esta a poca distancia en coche de Wembley Stadium y la estación más cercana es Edgware. El hotel tiene un restaurante, un bar, un salón de convenciones y una cafeteria. Las 193 habitaciones estan equipadas con secador de pelo, caja de seguridad y aire acondicionado.</HotelDescription> </HotelDescriptions> <LocationDetails ItemsCount="1"> <Location Sequence="1" LocationCode="G8">Area suburbana</Location> </LocationDetails> <Amenities ItemsCount="10"> <Amenity Fee="No" Sequence="1"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="14">Ascensores</Description> <ImageLink> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Ascensores</ImageDescription> <ImageURL>ic_elevador.gif</ImageURL> </ImageLink> </Amenity> <Amenity Fee="No" Sequence="2"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="5">Caja de seguridad</Description> </Amenity> <Amenity Fee="No" Sequence="3"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="32">Tiro al Arco</Description> </Amenity> <Amenity Fee="No" Sequence="4"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="7">Guardarropa</Description> <Value>193</Value> </Amenity> <Amenity Fee="No" Sequence="5"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.FCL">Instalaciones</AmenityGroup> <Description AmenityCode="18">Sala de conferencias</Description> </Amenity> <Amenity Fee="No" Sequence="6"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTL">Hotel</AmenityGroup> <Description AmenityCode="117">Se permite animales domésticos</Description> </Amenity> <Amenity Fee="No" Sequence="7"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="4">Secador</Description> </Amenity> <Amenity Fee="No" Sequence="8"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="34">Aire acondicionado</Description> <ImageLink> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Aire acondicionado</ImageDescription> <ImageURL>ic_aireac.gif</ImageURL> </ImageLink> </Amenity> <Amenity Fee="No" Sequence="9"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="237">television</Description> </Amenity> <Amenity Fee="No" Sequence="10"> <AmenityGroup AmenityGroupCode="NMO.HTL.AMT.HTR">Habitación</AmenityGroup> <Description AmenityCode="8">Radio</Description> </Amenity> </Amenities> <Addresses ItemsCount="1"> <Address Sequence="1"> <AddressLines ItemsCount="3"> <AddressLine Sequence="1">London Gateway, Services</AddressLine> <AddressLine Sequence="2">London</AddressLine> <AddressLine Sequence="3">U.k.</AddressLine> </AddressLines> <TelephoneNumbers ItemsCount="2"> <TelephoneNumber Sequence="1"> <TelephoneNumberType TelephoneNumberType="NMO.GBL.TLT.TE1"/> <TelephoneNumberValue>020 89067000</TelephoneNumberValue> </TelephoneNumber> <TelephoneNumber Sequence="2"> <TelephoneNumberType TelephoneNumberType="NMO.GBL.TLT.FAX"/> <TelephoneNumberValue>020 89067011</TelephoneNumberValue> </TelephoneNumber> </TelephoneNumbers> <Destinations ItemsCount="4"> <Destination Sequence="1" DestinationType="NMO.HTL.DST.CTY" DestinationCode="2757">Londres</Destination> <Destination Sequence="2" DestinationType="NMO.HTL.DST.CTR" DestinationCode="143">Reino Unido</Destination> <Destination Sequence="3" DestinationType="NMO.HTL.DST.CNT" DestinationCode="12">Europa</Destination> <Destination Sequence="4" DestinationType="NMO.HTL.DST.ALL" DestinationCode="1">Planeta Tierra</Destination> </Destinations> </Address> </Addresses> <Position> <Latitude>51.634681</Latitude> <Longitude>-0.26438</Longitude> </Position> <HotelRating HotelRatingCode="NMO.HTL.RTN.3ST" HotelRatingType="NMO.HTL.RTT.STR"> <RatingDescription>3 Estrellas</RatingDescription> <RatingValue>3.0</RatingValue> </HotelRating> <ImageLinks ItemsCount="6"> <ImageLink Sequence="1"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Exterior view</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>B/6/B6E5222965FCD939B8967908EE909116.jpg</ImageURL> <ThumbnailURL>4/3/43081546B80C1F2361A934E91E0B83F4.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="2"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>B/A/BA1FE7678A1DBABF62BB877A92B31404.jpg</ImageURL> <ThumbnailURL>D/2/D2CEAE049DA3A5D2D1F8C6CC1F911B67.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="3"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/7/F73A5A01DACC93E47CC6ECA33071A1A5.jpg</ImageURL> <ThumbnailURL>9/1/914733863EFF6EC19D48A23ED5AE697C.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="4"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Standard bedroom</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>5/E/5EBE1CC8E1840C121C4BF0FBF40B6DCB.jpg</ImageURL> <ThumbnailURL>2/E/2EA36573BCE916FAFC09A32A590DBF1E.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="5"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Restaurant</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/0/F07D742D7500E4C1315EA73B6449861E.jpg</ImageURL> <ThumbnailURL>E/A/EA1A7F0CE29E848589485A346F35B81F.jpg</ThumbnailURL> </ImageLink> <ImageLink Sequence="6"> <ImageDescription ImageDisplayType="NMO.GBL.IMG.IMG">Bar</ImageDescription> <ImageHeight UnitOfMeasureCode="9">46</ImageHeight> <ImageWidth UnitOfMeasureCode="9">70</ImageWidth> <ImageURL>F/5/F577413868BD10E0413F903462BFEA4B.jpg</ImageURL> <ThumbnailURL>4/9/491197FA9F74F1DE30FB7D0FBBE29348.jpg</ThumbnailURL> </ImageLink> </ImageLinks> </Hotel> <DestinationDetails ItemsCount="4"> <Destination Sequence="1" DestinationType="NMO.HTL.DST.CTY" DestinationCode="2757">Londres</Destination> <Destination Sequence="2" DestinationType="NMO.HTL.DST.CTR" DestinationCode="143">Reino Unido</Destination> <Destination Sequence="3" DestinationType="NMO.HTL.DST.CNT" DestinationCode="12">Europa</Destination> <Destination Sequence="4" DestinationType="NMO.HTL.DST.ALL" DestinationCode="1">Planeta Tierra</Destination> </DestinationDetails> <CheckIn>2013-12-20-03:00</CheckIn> <CheckOut>2013-12-22-03:00</CheckOut> <Rate> <Rooms ItemsCount="1"> <Room Sequence="1"> <RoomDescription RoomType="NMO.HTL.RMT.SGL">Simple</RoomDescription> <Occupancy> <AdultsCount>1</AdultsCount> <ChildrenCount>0</ChildrenCount> <InfantCount>0</InfantCount> <RoomsCount>1</RoomsCount> <Passengers ItemsCount="1"> <Passenger Sequence="1" AgeType="NMO.GBL.AGT.ADT"> <PersonNames ItemsCount="2"> <PersonName Sequence="1" NameType="NMO.GBL.PNT.FIR">NOMBRE</PersonName> <PersonName Sequence="2" NameType="NMO.GBL.PNT.LAS">APELLIDO</PersonName> </PersonNames> </Passenger> </Passengers> </Occupancy> <Availability AvailabilityCode="NMO.HTL.AVB.CNF">Confirmación Inmediata</Availability> </Room> </Rooms> <Boards ItemsCount="1"> <Board Sequence="1" BoardType="BreakfastDescription" BoardCode="60">Desayuno incluido</Board> </Boards> <RatePrices ItemsCount="3"> <RatePrice Sequence="1" Currency="ARS" Type="NMO.HTL.RPT.NET">0.0</RatePrice> <RatePrice Sequence="2" Currency="EUR" Type="NMO.HTL.RPT.NBC">0.0</RatePrice> <RatePrice Sequence="3" Currency="ARS" Type="NMO.GBL.RPT.GRS">0.0</RatePrice> </RatePrices> <ChargeConditions ItemsCount="2"> <ChargeCondition Sequence="1"> <ChargeDescription ChargeType="NMO.HTL.CHT.CAN">Gastos de cancelación</ChargeDescription> <DateRangeWithDays> <DateFrom>0</DateFrom> <DateTo>2</DateTo> </DateRangeWithDays> <RatePrices ItemsCount="3"> <RatePrice Sequence="1" Currency="ARS" Type="NMO.HTL.RPT.NET">194.90930368636631</RatePrice> <RatePrice Sequence="2" Currency="EUR" Type="NMO.HTL.RPT.NBC">33.31</RatePrice> <RatePrice Sequence="3" Currency="ARS" Type="NMO.GBL.RPT.GRS">194.90930368636631</RatePrice> </RatePrices> </ChargeCondition> <ChargeCondition Sequence="2"> <ChargeDescription ChargeType="NMO.HTL.CHT.CAN">Gastos de cancelación</ChargeDescription> <DateRangeWithDays> <DateFrom>0</DateFrom> <DateTo>1</DateTo> </DateRangeWithDays> <RatePrices ItemsCount="3"> <RatePrice Sequence="1" Currency="ARS" Type="NMO.HTL.RPT.NET">389.81860737273263</RatePrice> <RatePrice Sequence="2" Currency="EUR" Type="NMO.HTL.RPT.NBC">66.62</RatePrice> <RatePrice Sequence="3" Currency="ARS" Type="NMO.GBL.RPT.GRS">389.81860737273263</RatePrice> </RatePrices> </ChargeCondition> </ChargeConditions> <Deadline> <Date>2013-12-15T00:00:00.000-03:00</Date> </Deadline> </Rate> <BookingCreationDT>2013-07-30T09:18:52.000-03:00</BookingCreationDT> </Hotel> </Hotels> </Products> </Booking> </Bookings> </Details>
</BookingQueryRS> </syntaxhighlight>
Parámetro | Obligatorio | Descripción |
---|---|---|
Notifications | No | |
Notification | Si | Nodo que informa cuando ocurre algún error o excepción. En el atributo TripNumber se indica el trip al cual se refiere la notificación. |
NotificationId | Si | Identificador de la notificación. Las mismas serán provistas por Nemo. |
NotificationType | Si | Tipo de notificación. |
NotificationMessage | Si | Mensaje de notificación. |
Details | Si | |
Bookings | Si | |
Booking | Si | Detalle de la reserva.
Atributos:
|
ReceivedFrom | Si | Nombre de la persona que firma los cambios de la reserva. |
BookingState | No | Estado de la reserva (del ítem). La codificación de los estados será provista por Nemo. |
Hotel | Si | |
BookingReferences | No | Identificadores de la resera. |
BookingStatusList | No | Estados del “ítem”. |
BookingStatus | Si | |
BookingStatusDescription | Si | Descripción del estado actual de la reserva.
BookingStatusCode: Código del estado de la reserva correspondiente a los códigos estándar de reserva provistos por Nemo. |
Hotel | No | Contiene toda la información del hotel. |
HotelName | Si | Nombre del hotel. |
AccomodationType | No | Indica si es hotel, hostel, camping, etc, los tipos serán provistos por Nemo. |
HotelDescriptions | No | |
HotelDescription | Si | Descripción del hotel.
Atributos: HotelDescriptionType: Tipo de descripción correspondiente a los tipos de descripción estándar provistos por Nemo. |
LocationDetails | No | |
Location | No | Descripción del área en la que se localiza el hotel.
Atributos: LocationCode: Código de área provisto por el proveedor. |
Amenities | No | |
Amenity | No | Código de amenidad admitido.
Atributos: AmenityGroupCode: Tipo de amenidad. Los tipos de amenidad admitidos corresponden a los provistos por Nemo. AmenityCode: Código de amenidad. Los códigos de amenidad admitidos corresponden a los provistos. |
Address | Si | Dirección del hotel |
AddressLines | Si | Líneas que componen la dirección del hotel. |
AddressLine | Si | Indica la dirección del hotel. |
Position | No | Coordenadas del hotel: Latitud y Longitud. |
HotelRating | Si | Categoría del hotel.
Atributos: HotelRatingCode: código de la categoría correspondiente a los códigos de categoría estándar provistos por Nemo. HotelRatingType: Tipo de la categoría correspondiente a los tipos de categoría estándar provistos por Nemo. |
RatingValue | Si | Valoración de la categoría del hotel expresada en el tipo de categoría indicado en el nodo padre. |
ImageLinks | Si | Conjunto de imágenes del hotel |
ImageLink | No | |
ImageDescription | Si | Descripción de la imagen
ImageDisplayType: Tipo de imagen correspondiente a los tipos de imágenes estándar provistos por Nemo. |
DisplayOrder | No | Orden del la imagen. |
ImageURL | Si | URL de la imagen |
DestinationDetails | Si | Atributos:
DestinationType: tipo de destino de los provistos por Nemo. Destination Code: código del destino a buscar, de los provistos por Nemo. |
CheckIn | No | Fecha de entrada de la estadía. |
CheckOut | No | Fecha de salida de la estadía |
Rate | Si | Tarifa a reservar, indicando con el atributo TripProductId el id del hotel a reservar. |
Rooms | No | |
Room | Si | |
Occupancy | Si | Indica la cantidad de adultos, niños e infantes por cada habitación.
En el nodo Passengers se encuentran los datos de los pasajeros. |
Fares | Si | Datos de tarifas |
FareType | No | Tipo de tarifas, ej. Tarifa web, precio de agencia |
Prices | Si | Precios, con valor y moneda |
BookingReferences | No | Identificadores de la reserva |
BookingState | Si | Estado de la reserva (del ítem). La codificación de los estados será provista por Nemo.
Atributos: Code: Código del estado (confirmada, rechazada, etc) |
Exceptions | Si | Si no se puede armar el nodo Details se arma un nodo Exceptions con las notificaciones correspondientes. |
ChargeConditions | Si | Nodo de gastos de cancelación |
ChargeCondition | Si | Gasto de Cancelación
Atributo: ChargeType, tipo de cargo (Ej. NMO.HTL.CHT.CAN cancelación, NMO.HTL.CHT.AMD Modificación) |
ChargeDescription | Si | Descripción del gastos de cancelación |
DateRangeWithDays | No | Indica que el gasto de cancelación tiene un rango en base a días. |
DateFrom | Si | Fecha desde |
DateTo | Si | Fecha hasta |
DateRangeWithDateType | No | Indica que el gasto de cancelación tiene un rango en base a fechas. |
DateFrom | Si | Fecha desde |
DateTo | Si | Fecha hasta |
RatePrices | Si | |
RatePrice | Si | Indica el importe del concepto de cancelación
Atributos: RatePriceType, tipo de precio |
Lenguaje de Descripción de la Aplicación Web (WADL)
Utilizando la especificación provista por Price Surfer los Clientes podrán acceder al catálogo de los servicios y recursos provistos en la API.
Especificaciones y recomendaciones
Autorización
Para acceder a las operaciones propias del servicio web será necesario el uso de credenciales por medio de un hash que actúa como Token de Autorización. El servicio utilizará para esto una cabecera especial denominada "X-PS-AUTHTOKEN" la cuál actuará como clave de seguridad interna para establecer la comunicación entre el sistema y el usuario.
Ejemplo de cabecera
- Solicitud
<syntaxhighlight lang="xml"> POST http://service-cert.psurfer.net/pricesurfer/catalog/products/search HTTP/1.1 Accept-Encoding: gzip,deflate Accept: application/xml Content-Type: application/xml X-PS-AUTHTOKEN: 981d284d_bc57_c429_91b9_178fg07f78f0 Content-Length: 770 Host: http://service-cert.psurfer.net Connection: Keep-Alive User-Agent: Apache-HttpClient/4.1.1 (java 1.5) </syntaxhighlight>
- Respuesta
<syntaxhighlight lang="xml"> HTTP/1.1 200 OK X-Powered-By: Servlet/3.0 Server: GlassFish Server Open Source Edition 3.0.1 Content-Type: application/xml Transfer-Encoding: chunked Content-Encoding: gzip Vary: Accept-Encoding Date: Wed, 31 Jul 2013 10:39:32 GMT </syntaxhighlight>
TransactionMode Sincrónico y Asincrónico
Este modo se utiliza para Hoteles.
- Sincrónico: TransactionMode="Synchronous"
Las búsquedas en este modo esperarán que termine hasta el último proveedor en responder. Luego se ordenarán por precio y se retornarán. Esta es el método que utiliza la plataforma de PriceSurfer hsata este momento.
- Asincrónico: TransactionMode="StartAsync" y "ContinueAsync"
En este modo deberá iniciarse una búsqueda con el modo "StartAsync". La búsqueda termina cuando termine el primer proveedor, o sea el más rápido. El resto de los resultados se obtendrán con subsecuentes búsquedas pero con el modo "ContinueAsync".
Cada respuesta a este mensaje contiene un nodo "TransactionStatus" que se encuentra en la respuesta de Hoteles: {AvailabilityQueryRS//Details/Trips/TripList[n]/HotelsAvailabilityResponset/TransactionStatus} y su valor puede ser FINISHED, TIMEOUT o CONTINUE.
- FINISHED: significa que no hay más datos. Ésta es la última respuesta.
- TIMEOUT: significa que no hay más datos. Ésta es la última respuesta. La diferencia con FINISHED es que ha terminado con algún error en un proveedor y el mismo no pudo terminar el proceso.
- CONTINUE: significa que hay más datos de disponibilidad de hoteles. Debe seguir haciendo peticiones en modo "ContinueAsync" para obtener más resultados.