Price Surfer - Export contable

De Wiki PriceSurfer
Ir a la navegaciónIr a la búsqueda

Introducción

El Web Services permite al cliente 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.

A través del servicio web un mayorista podrá buscar reservas de aéreos, solicitar información detallada de reservas, cambiar el estado del pago de reservas y consultar información de agencias. Todo a través de una interfaz única basada en el intercambio de documentos XML, que será descripta en esta guía de uso.

Además de este manual, están disponibles los esquemas XML (.XSD) para validar los mensajes antes de ser enviados al Web Service, así como también mensajes XML de ejemplo para cada función.


Interfaz Cliente Simplificada

El API va a usar protocolos HTTP estandard. Lo único que se requiere es un pedido de POST del HTTP.

Esto le otorgará las siguientes ventajas.

  • Protocolos estandards de su empresa
  • No se requiere de ningún componente adicional.


Requisitos de los clientes

  • Los pedidos de los clientes deben ser hechos desde una dirección pública y estática que esté registrada con NEMO.
  • Client requests must be made via an HTTP POST request. Los pedidos del cliente deben ser hechos a través de un pedido POST de HTTP.
  • Toda la información enviada y recibida a traves de la interface va a ser guardada en UTF-8


Autenticación del Cliente

Los headers del POST deben contener autenticación HTTP de tipo basic estandar, con nombre y usuario habilitado de Navigator (las mismas credenciales que se usan para ingresar en el backend).


Acceso

1. URL del mensaje: URL de la API (según entorno) + nombre del mensaje


URL de la API (según entorno):


Los nombres de los mensajes disponibles son:

  • BookingsQueryRQ: Búsqueda de reservas
  • BookingsDetailsRQ: Pedido de detalle de reservas
  • AgencyQueryRQ: Pedido de detalle de agencias
  • BookingPaymentStatusRQ: Cambio de estado de reserva a pagado


Ejemplo de pedido de una agencia al servidor de QA: http://qanav.nemo.com.ar/backend_qa.php/api/AgencyQueryRQ


2. La consulta: El POST debe llevar adjunto un archivo XML con igual nombre al mensaje (en el ejemplo “AgencyQueryRQ”) cuyo contenido será el de la consulta que se quiere hacer al WebService.


Códigos de respuesta de la petición HTTP

La respuesta del WebService puede tomar diferentes códigos, a continuación se detalla el significado de cada una.


Código Respuesta
200 OK
400 No valida el XML de la consulta
401 Fallo de autenticación
404 No se encontró el archivo XML de la consulta
404 No se encontraron agencias con los parámetros de búsqueda ingresados
404 No se encontraron reservas con los parámetros de búsqueda ingresados
503 No se pudo conectar con el core de navigator


Por cualquier consulta recuerde dirigirse al mail de Soporte Técnico: support@pricenavigator.net


Mensajes soportados

Buscar reservas (BookingQuery)

Búsqueda de reservas de aéreos en un rango de fechas determinado. Retorna un listado de reservas correspondientes a las fechas ingresadas.

Recibe BookingsQueryRQ, retorna BookingsQueryRS.

La búsqueda incluye aéreos y hoteles.

Se pueden ingresar como parámetros para la búsqueda:

  • fecha de creación
  • fecha de checkin
  • identificador de la agencia
  • nombre de pasajero
  • nombre de cliente


Solicitar información detallada de reservas (BookingDetails)

Consulta de información detallada de una reserva determinada especificando un identificador de la reserva.


Recibe BookingsDetailsRQ, retorna BookingsDetailsRS.


Cambiar estado del pago de reservas (BookingPaymentStatus)

Cambio de estado de pago de una reserva. Retorna el resultado de la transacción. Podrá indicar si el cambio fue realizado con éxito o en caso contrario notificar qué evento se produjo por el cual no pudo realizarse el cambio.


Recibe BookingPaymentStatusRQ, retorna BookingPaymentStatusRS.


Consultar info de agencia (AgencyQuery)

Consulta de información detallada de una agencia determinada especificando el ID de agencia o el nombre de la misma.


Recibe AgencyQueryRQ, retorna AgencyQueryRS.


Documentos XML

Mensaje BookingsQuery: Buscar reservas

La búsqueda de reservas permite obtener un listado de reservas con toda la información referida a cada reserva en particular.

El método BookingsQuery recibe un documento BookingsQueryRQ y retorna un documento BookingsQueryRS.


BookingsQueryRQ

Ejemplo:


<syntaxhighlight lang="xml"> <BookingsQueryRQ xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:noNamespaceSchemaLocation='AEXCEV_Main.xsd'>

   <GeneralParameters>
       <PreferedLanguage LanguageCode="es-AR"/>
   </GeneralParameters>
   <Details>
       <Criterion>
           <AgencyId>11539</AgencyId>
           <CreationDate>
               <DateFrom>2011-06-23</DateFrom>
               <DateTo>2011-06-24</DateTo>
           </CreationDate>
           <CheckinDate>
               <DateFrom>2011-07-19</DateFrom>
               <DateTo>2011-07-19</DateTo>
           </CheckinDate>
           <GuestName>John0</GuestName>
           <ClientName>Cesar Palmieri</ClientName>
           <BookingState>
               NMO.HTL.BST.RQF                
               <StateMachineId>2</StateMachineId>
           </BookingState>
       </Criterion>
   </Details>

</BookingsQueryRQ> </syntaxhighlight>


Parámetro Obligatorio Descripción
GeneralParameters SI Parámetros generales de configuración de la consulta.
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 Web Services.

Details SI Detalle del mensaje de búsqueda.
Criterion SI Indica los distintos parámetros de la búsqueda.
AgencyId NO Indica el número de agencia para buscar.
CreationDate NO Indica el rango de fechas de creación de la reserva.
DateFrom NO Fecha de creación desde.
DateTo NO Fecha de creación hasta.
CheckinDate NO Indica el rango de las fechas de checkin de la reserva.
DateFrom NO Fecha de checkin desde.
DateTo NO Fecha de checkin hasta.
GuestName NO Identifica el nombre del huésped para la habitación.
ClientName NO Persona que realiza la reserva.
BookingState No Estado de la reserve
Code No Código de estado de la reserva
StateMachineId No Id de la máquina de estado


BookingsQueryRS

Ejemplo:

<syntaxhighlight lang="xml"> <BookingsQueryRS xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="AEXCEV_Main.xsd">

   <Echo>
       <GeneralParameters>
           <PreferedLanguage LanguageCode="es-AR" />
       </GeneralParameters>
       <Details>
           <Criterion>
               <AgencyId>11539</AgencyId>
               <CreationDate>
                   <DateFrom>2011-06-23</DateFrom>
                   <DateTo>2011-06-24</DateTo>
               </CreationDate>
               <CheckinDate>
                   <DateFrom>2011-07-19</DateFrom>
                   <DateTo>2011-07-19</DateTo>
               </CheckinDate>
               <GuestName>John0</GuestName>
               <ClientName>Cesar Palmieri</ClientName>
           </Criterion>
       </Details>
   </Echo>
   <Details>
       <Bookings ItemsCount="1">
           <Booking Sequence="1" ContractId="11640" AgencyId="11539">
               <BookingReference ReferenceType="NMO.GBL.BRT.NAV">DN_0000Y</BookingReference>
               <BookingState ItemsCount="1">
                   <BookingState>
                       NMO.HTL.BST.RQF
                       <Description>Request failed</Description>
                       <StateMachineId>2</StateMachineId>
                       <StateDateTime>2011-11-16T09:57:44</StateDateTime>
                   </BookingState>
               </BookingState>
               <BookingCreationDate>2011-06-23</BookingCreationDate>
               <ClientName>cesar palmieri</ClientName>
               <Price PriceType="PVP">
                   <Amount CurrencyCode="USD">0</Amount>
               </Price>
               <BookingItems>
                   <Hotels ItemsCount="1">
                       <Hotel Sequence="1">
                           <BookingReference ReferenceType="NMO.HTL.RPT.MPH">DN_0000Y-1</BookingReference>
                       </Hotel>
                   </Hotels>
               </BookingItems>
           </Booking>
       </Bookings>
   </Details>

</BookingsQueryRS> </syntaxhighlight>


Parámetro Obligatorio Descripción
GeneralParameters SI Parámetros generales de configuración de la consulta.
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 Web Services.

Details SI Detalle de la respuesta del mensaje de búsqueda.
Criterion SI Indica los distintos parámetros de la búsqueda.
AgencyId NO Indica el número de agencia para buscar.
CreationDate NO Indica el rango de las fechas de creación de la reserva.
DateFrom NO Fecha de creación desde.
DateTo NO Fecha de creación hasta.
CheckinDate NO Indica el rango de las fechas de checkin de la reserva.
DateFrom NO Fecha de checkin desde.
DateTo NO Fecha de checkin hasta.
GuestName NO Identifica el nombre del huésped para la habitación.
ClientName NO Persona que realiza la reserva.
Bookings SI Detalle de las reservas encontradas.
BookingReference SI Lista de referencias asociadas a la reserva.
BookingState SI Estado de la reserva.
Code SI Código de estado de la reserva.
Description SI Descripción del estado de la reserva.
StateMachineId SI Id de la máquina de estados.
StateDateTime SI Fecha del cambio de estado.
BookingCreationDate SI Fecha de creación de la reserva.
ClientName SI Nombre del cliente que realizó la reserva.
Price SI Precio y tipo de precio de la reserva.
Amount SI Monto del precio de la reserva.
BookingItems SI Detalle de los items de la reserva.
Hotels SI Items de hoteles.
BookingReference SI Lista de referencias asociadas a la reserva.