KIU_AirShoppingRQ/RS (Release 1.0)
Introducción al servicio de Shopping
**ESTE METODO ES EXCLUSIVO PARA LINEAS AEREAS**
Shopping: Servicio que ofrece en un solo método la posibilidad de obtener contenido de tarifas y su correspondiente disponibilidad en los vuelos ofrecidos para una ruta y fecha.
Funcionalidad del Método
- El método soporta la posibilidad de solicitar itinerarios One Way y Round Trip.
- Requiere que el cliente tenga configurado Family Fares para su aplicación.
- Las opciones devueltas son las más económicas o cotizables disponibles para cada Family Fare.
- En caso que ninguna tarifa de Family Fare cuente con disponibilidad, devuelve <Posting> cero en la más económica del grupo.
- Es el cotizador de KIU RES el que arma y cotiza las opciones de itinerarios. Por ende, la efectividad de precio/tasas es 100% respecto de la terminal criptica.
KIU_AirShoppingRQ
El método es validado por un schema, el cual controla el formato de mensaje XML.
Dicho schema se basa en el concepto OTA y tiene componentes (sub-schemas) creados para la lógica de KIU.
En base a las definiciones del schema, se desprenden los siguientes posibles mensajes XML:
KIU_AirShoppingRQ - One Way
<KIU_AirShoppingRQ xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" xmlns:ns="http://www.opentravel.org/OTA/2003/05/common" xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opentravel.org/OTA/2003/05" EchoToken="GERSHTSQTY" TimeStamp="2018-04-05T15:45:07-03:00" Target="Production" Version="3.0" SequenceNmbr="1" PrimaryLangID="en-us"> <POS> <Source AgentSine="AEP00XXSM" TerminalID="AEP00XX818" ISOCountry="AR" /> </POS> <Parameters> <CurrCode>ARS</CurrCode> <TourCodeInformation tourcode_type="B" tourcode_text="AEP4"/> <AirPreferences> <SpecificCarrier Code="XX"/> </AirPreferences> </Parameters> <JourneyInformation> <AirItinerary> <OriginDestinationInfo OriginDestRPH="1"> <OriginLocation>EZE</OriginLocation> <DestinationLocation>GRU</DestinationLocation> <DepartureDate>2018-06-22</DepartureDate> </OriginDestinationInfo> </AirItinerary> <TravelerInfo> <PassengerTypeQuantity Code="ADT" Quantity="1" /> </TravelerInfo> </JourneyInformation> </KIU_AirShoppingRQ>
KIU_AirShoppingRQ - Round Trip - Punto a Punto
<KIU_AirShoppingRQ xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" xmlns:ns="http://www.opentravel.org/OTA/2003/05/common" xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opentravel.org/OTA/2003/05" EchoToken="GERSHTSQTY" TimeStamp="2018-04-05T15:45:07-03:00" Target="Production" Version="3.0" SequenceNmbr="1" PrimaryLangID="en-us" NoCache="1" Debug="1"> <POS> <Source AgentSine="AEP00XXSM" TerminalID="AEP00XX818" ISOCountry="AR" /> </POS> <Parameters> <CurrCode>ARS</CurrCode> <AirPreferences> <SpecificCarrier Code="XX"/> </AirPreferences> </Parameters> <JourneyInformation> <AirItinerary> <OriginDestinationInfo OriginDestRPH="1"> <OriginLocation>EZE</OriginLocation> <DestinationLocation>GRU</DestinationLocation> <DepartureDate>2018-06-08</DepartureDate> <ReturnDate>2018-06-09</ReturnDate> </OriginDestinationInfo> </AirItinerary> <TravelerInfo> <PassengerTypeQuantity Code="ADT" Quantity="1" /> </TravelerInfo> </JourneyInformation> </KIU_AirShoppingRQ>
Componentes del mensaje XML
- KIU_AirShoppingRQ: Elemento complejo que contiene los detalles del requerimiento de cotización y los parámetros a contemplar.
- EchoToken: Atributo. Requerido. UpperCaseAlphaNumericLenght8to10. ID de identificación del request. Recomendado a implementar para realizar seguimientos de payloads por sesión.
- Target: Atributo. Requerido. xs:boolean [Production|Testing]. Ambiente donde se requiere la cotización.
- PrimaryLanguage: Atributo. Requerido. xs:language. Solamente EN-us soportado.
- SequenceNmbr: Atributo.Requerido. xs:nonNegativeInteger. Número de secuencia de request.
- TimeStamp: Atributo. Requerido. xs:timestamp. Fecha y hora del request. No debe ser inferior a la fecha actual del servidor de origen.
- Version: Atributo. Requerido. xs:decimal. Número de versión de la API de Web Services a la que se requiere (debe ser 3.0).
- Debug: Atributo. Opcional. Lista (0|1). USO INTERNO DE KIU (1 - Activa el elemento debug en la respuesta).
- NoCache: Atributo. Opcional. Lista (0|1). USO INTERNO DE KIU (1 - No consume la información desde el cache).
- POS: Elemento que contiene la información del punto de venta y detalles de localización.
- Source: Elemento que contiene los detalles de las credenciales de acceso a consumir Web Services.
- AgentSine: Atributo. Requerido. xs:string limited. ID de agente autorizado a consumir Web Services. Otorgado e informado por webservices@kiusys.com.
- TerminalID: Atributo. Requerido. xs:string limited. ID de terminal asociado a la oficina designada por el usuario para consumir Web Services. Otorgado e informado por webservices@kiusys.com.
- ISOCountry: Atributo. Requerido. ISO3166. Código ISO de país asociado al TerminalID.
- ISOCurrency: Atributo. Opcional. ISO4217. Código ISO de moneda de operación (en el presente método no tiene injerencia).
- RequestorID: Elemento. Opcional. Elemento identificador de la entidad que genera el pedido.
- Type: Atributo .OTA_CodesType. Código OTA del tipo de entidad, listado en la OpenTravel Code List Unique ID Type (UIT).
- BookingChannel: Especificación del canal de reserva.
- Type: Atributo. OTA_CodesTypes. Código OTA del canal de reserva, listado en la OpenTravel Code List Booking Channel Type (BCT).
- Type: Atributo. OTA_CodesTypes. Código OTA del canal de reserva, listado en la OpenTravel Code List Booking Channel Type (BCT).
- Source: Elemento que contiene los detalles de las credenciales de acceso a consumir Web Services.
- Parameters: Elemento. Mandatorio. Contenedor de los parámetros de búsqueda que rigen sobre la respuesta.
- CurrCodes: Elemento. Mandatorio. ISO4217. Código ISO de moneda de despliegue de la cotización.
- TourCodeInformation: Elemento. Opcional. Contiene la información de Tour code o promo code a aplicar en la búsqueda.
- tourcode_type: Atributo. Requerido. Enum (N, B, /B, I, /I). Tipo de tour code a aplicar.
- tourcode_text: Atributo. Requerido. xs:string (3-13). Código de Tour code válido a ingresar.
- AirPreferences: Elemento. Opcional. Contiene la información del carrier cuyo despliegue se desea consultar (exclusivo para agencias, OTAs y metabuscadores).
- SpecificCarrier: Elemento. Opcional. Contiene la información del carrier específico cuyo despliegue se desea consultar (exclusivo para agencias, OTAs y metabuscadores).
- Code: Atributo. Opcional. Código alfanumérico del carrier cuyo despliegue se desea consultar (exclusivo para agencias, OTAs y metabuscadores).
- SpecificCarrier: Elemento. Opcional. Contiene la información del carrier específico cuyo despliegue se desea consultar (exclusivo para agencias, OTAs y metabuscadores).
- CurrCodes: Elemento. Mandatorio. ISO4217. Código ISO de moneda de despliegue de la cotización.
- JourneyInformation: Elemento. Mandatorio. Contenedor de la información de viaje a cotizar.
- AirItinerary: Elemento. Mandatorio. Contenedor de la información de itinerario aéreo a buscar.
- OriginDestinationInformation: Elemento. Mandatorio. Contenedor de la ruta y fecha a realizar búsqueda de opciones.
- OriginDestRPH: Atributo. Requerido. xs:nonNegativeInteger. ID de referencia de la ruta y fecha para realizar asociaciones internas del método.
- OriginLocation: Elemento. Mandatorio. AlphaLength3. Código ISO IATA aeropuerto de origen o partida.
- DestinationLocation: Elemento. Mandatorio. AlphaLength3. Código ISO IATA aeropuerto de arribo. Destino final.
- DepartureDate: Elemento. Mandatorio. xs:date. ISO fecha de partida.
- ReturnDate: Elemento. Opcional. xs:date. ISO fecha de regreso, en caso de origen-destino itinerario ida y vuelta.
- OriginDestRPH: Atributo. Requerido. xs:nonNegativeInteger. ID de referencia de la ruta y fecha para realizar asociaciones internas del método.
- OriginDestinationInformation: Elemento. Mandatorio. Contenedor de la ruta y fecha a realizar búsqueda de opciones.
- TravelerInfo: Elemento. Requerido. Elemento contenedor de la información de tipo de pasajero y cantidad para aplicar en la búsqueda y cotización.
- PassengerTypeQuantity: Elemento. MinOccur 1. Contiene la información singular de cada tipo de pasajero.
- Code: Atributo. Requerido. AlphaLenght3. Código tipo de pasajero.
- Quantity: Atributo. Requerido. Numeric1to9. Cantidad de ocurrencia de tipo de pasajero.
- Age: Atributo. Opcional. Numeric1to99. Edad del tipo de pasajero declarado.
- DateOfBirth: Atributo. Opcional. xs:date. Fecha de nacimiento. Obligatorio en caso de declarar tipo de pasajero INF (infante).
- PassengerTypeQuantity: Elemento. MinOccur 1. Contiene la información singular de cada tipo de pasajero.
- AirItinerary: Elemento. Mandatorio. Contenedor de la información de itinerario aéreo a buscar.
KIU_AirShoppingRS
La respuesta proviene del procesamiento interno en KIU RES. Se ordena de menor a mayor, asociando dentro de cada instancia de Precio las familias aplicadas, las tarifas que componen dicha familia utilizadas para la cotización, el desglose por tipo de pasajero cotizado, el/los segmento/s incluído/s en la opción con su correspondiente RBD y la disponibilidad de lugares.
En este caso, la respuesta no se valida contra un Schema en esta versión, puesto que proviene del host mismo. Se tiene como referencia para desarrolladores y puede ser la base de validación del lado del consumidor.
En base a esta definición, se extraen los siguientes mensajes XML posibles. Por una limitante de cantidad de caracteres, se adjuntan los ejemplos:
KIU_AirShoppingRS - One Way
KIU_AirShoppingRS Example OneWay.xml
KIU_AirShoppingRS - Round Trip
KIU_AirShoppingRS Example RoundTrip.xml
Componentes del Mensaje XML
- Success: Elemento. Choice. Indica el estado de respuesta de la API.
- Errors: Elemento. Choice. Contenedor de error/es de procesamiento.
- Error: Elemento. Contiene la descripción del error.
- Code: Atributo. xs:NonNegativeInteger. Contiene el código de error.
- Code: Atributo. xs:NonNegativeInteger. Contiene el código de error.
- Error: Elemento. Contiene la descripción del error.
- Parameters: Elemento. Contenedor de los parámetros comunes aplicados a la respuesta.
- CurrCode: Elemento. ISO4217. ISO moneda de despliegue para las opciones cotizadas.
- DecimalPlaces: Elemento. Numeric0to2. Cantidad de decimales expresados en los montos cotizados.
- TotalPricedCount: Elemento. Numeric1to999. Cantidad de opciones cotizadas que incluye la respuesta.
- ShoppingCarrier: Elemento. Contenedor de las opciones cotizadas para la ruta requerida para un carrier específico.
- Code: Atributo. xs:string (4). Código del carrier host que responde opciones cotizadas.
- Count: Atributo. xs:Integer. Cantidad de opciones cotizadas devueltas para el carrier declarado.
- FareFamilyGroup:
- FamilyName: Elemento.
- FamilyName: Elemento.
- AirPricedItineraries: Elemento. Contenedor de la lista de opciones de itinerarios aéreos cotizados.
- AirItineraryPriced: Elemento. Descripción de opción cotizada.
- OptionID: Atributo. RPH_Type. ID de referencia de la opción cotizada para asociaciones/referencias internas del método.
- JourneyInformation: Elemento. Contenedor de los detalles de la opción de itinerario cotizada.
- AirItinerary: Elemento. Contenedor del detalle del itinerario aéreo.
- TripID: Atributo. RPH_type. ID de referencia del itinerario aéreo para asociaciones/referencias internas del método.
- OriginLocation: Elemento. Contiene la información de localización del punto de origen del itinerario aéreo.
- LocationCode: Atributo. AlphaLenght3. Codigo ISO IATA de aeropuerto de partida.
- DestinationLocation: Elemento. Contiene la información de localización del punto de destino final del itinerario aéreo.
- LocationCode: Atributo. AlphaLenght3. Codigo ISO IATA de aeropuerto de destino final.
- DepartureDate: Elemento. xs:date. Fecha ISO de partida. Inicio del viaje.
- ReturnDate: Elemento. Opcional. xs:date. Fecha ISO de retorno desde el punto de destino al origen en caso de ida y vuelta, punto a punto.
- TripID: Atributo. RPH_type. ID de referencia del itinerario aéreo para asociaciones/referencias internas del método.
- AirItinerary: Elemento. Contenedor del detalle del itinerario aéreo.
- FareInfo: Elemento. Contenedor de la información de cotización para la opción cotizada.
- FareFamily: Elemento. Repetitivo. Contiene la descripción de la/s familia/s tarifaria/s aplicada/s en la cotización.
- OriginDestRPH: Atributo. RPH_Type. ID de referencia para asociación/referencia interna a un origen-destino/FlightSegment.
- Name: Atributo. AlphaNumericStringLength1to30. Descripción del nombre marketing de la familia tarifaria.
- FareBasisCodes: Elemento. Contenedor de la información de las bases de tarifas aplicadas para la familia tarifaria correspondiente.
- FareBasisCode: Elemento. xs:string. Repetitivo. Código de tarifa.
- Cabin: Atributo. xs:string. Nombre de la cabina correspondiente a la publicación de la tarifa (Economy, Business, First, etc.).
- IDFare: Atributo. xs:integer. ID de referencia de la tarifa para asociaciones/referencias con otros métodos (KIU_AirRulesRQ).
- RBD: Atributo. AlphaLenght1. Clase de reserva asignada a la tarifa.
- FareBaseID: Atributo. RPH_Type. ID de referencia de la tarifa para asociaciones/referencias internas del método (FlightSegment Instance).
- FareBasisCode: Elemento. xs:string. Repetitivo. Código de tarifa.
- FareFamily: Elemento. Repetitivo. Contiene la descripción de la/s familia/s tarifaria/s aplicada/s en la cotización.
- AirItinTotalFare: Elemento. Contenedor de la información del total cotizado para el itinerario, tomando en cuenta el total de tipos de pasajeros informados.
- BaseFare: Elemento. xs:decimal. Total de tarifa expresado en la moneda de publicación.
- CurrCode: Atributo. ISO4217. Código ISO de moneda de publicación de la tarifa.
- EquivFare: Elemento. xs:decimal. Total de la tarifa expresado en la moneda de cotización requerida.
- CurrCode: Atributo. ISO4217. Código ISO de moneda de despliegue de la tarifa según moneda de cotización.
- BSR: Atributo. xs:decimal. Tasa de cambio aplicada entre moneda de publicación y moneda de cotización.
- TotalTax: Elemento. xs:decimal. Monto total de impuestos/tasas, aplicadas en la cotización (el monto se expresa en moneda de cotización).
- TotalFees: Elemento. xs:decimal. Opcional. Monto total de fees aplicados a la cotización (el monto se expresa en moneda de cotización).
- TotalFare: Elemento. xs:decimal. Monto total de la cotización del itinerario aéreo (el monto se expresa en moneda de cotización).
- BaseFare: Elemento. xs:decimal. Total de tarifa expresado en la moneda de publicación.
- PTC_BreakDowns: Elemento. Contiene el detalle de cotización para cada tipo de pasajero requerido.
- PTC_BreakDown: Elemento. Contiene el detalle de cotización por tipo de pasajero.
- PTC: Elemento. xs:String-Restricted to UPPERCASEALPHA3. Código de tipo de pasajero.
- Quantity: Elemento. Numeric1to9. Cantidad para el tipo de pasajero.
- FareInfo: Elemento. Contiene la información de la base de tarifa aplicada. Los montos expresados son singulares y por tipo de pasajero.
- BaseFare: Elemento. xs:decimal. Monto de tarifa expresado en la moneda de publicación.
- CurrCode: Atributo. ISO4217. Código ISO de la moneda de publicación de la tarifa.
- EquivFare: Elemento. xs:decimal. Monto de la tarifa expresado en la moneda de cotización requerida.
- CurrCode: Atributo. ISO4217. Código ISO de moneda de despliegue de la tarifa según moneda de cotización.
- BSR: Atributo. xs:decimal. Tasa de cambio aplicada entre moneda de publicación y moneda de cotización.
- Surcharges: Elemento. Repetitivo. Contenedor de los sobrecargos aplicados a tarifa.
- Surcharge: Elemento. Contiene el detalle por sobrecargo.
- Code: Elemento. AlphaNumericStringLength1to3. Código del sobrecargo aplicado.
- Amount: Elemento. xs:decimal. Monto del sobrecargo, expresado en la misma tarifa de BaseFare.
- CurrCode: Atributo. ISO4217. Codigo ISO moneda del sobrecargo.
- Surcharge: Elemento. Contiene el detalle por sobrecargo.
- Taxes: Elemento. Contiene el detalle de las tasas/impuestos aplicados.
- Tax: Elemento. Descripción de cada tasa/impuesto.
- Code: Elemento. AlphaNumericStringLength1to3. Código de tasa/impuesto.
- Amount: Elemento. xs:decimal. Monto de la tasa/impuesto, expresado en la moneda de cotización.
- Tax: Elemento. Descripción de cada tasa/impuesto.
- Fees: Elemento. Contiene el detalle del/de los fee/s aplicados.
- Fee: Elemento. Descripción de cada fee.
- Code: Elemento. AlphaNumericStringLength1to3. Código de fee.
- Amount: Elemento. xs:decimal. Monto de fee. Expresado en la moneda de cotización.
- Fee: Elemento. Descripción de cada fee.
- TotalFare: Elemento. xs:decimal. Monto total de la tarifa para el tipo de pasajero.
- FareConstruction: Elemento. xs:string. Opcional. Descripción de la construcción tarifaría de la opción para el tipo de pasajero.
- FareConstructionDetail: Elemento Complejo. Opcional. Contiene el detalle de la construcción tarifaria por componente tarifario.
- FareComponent: Elemento complejo que contiene la descripción singular por componente de la cotización.
- FareComponentID: Atributo. Entero. Número de orden y IDREF del componente.
- ComponentPoint: Elemento. xs:string. Contiene el routing del componente.
- CurrencyCode: Elemento. ISO4127. Código alfabético de moneda de la construcción tarifaria.
- ComponentAmount: Elemento. Decimal. Monto correspondiente al componente.
- Surcharge: Elemento. String. Opcional. Sobre cargo aplicado al componente.
- StopOver: Elemento. String. Opcional. Cargo de stop over aplicado al componente.
- FareComponent: Elemento complejo que contiene la descripción singular por componente de la cotización.
- BaseFare: Elemento. xs:decimal. Monto de tarifa expresado en la moneda de publicación.
- PTC_BreakDown: Elemento. Contiene el detalle de cotización por tipo de pasajero.
- AirItinInformation: Elemento. Descripción de los segmentos aéreos del itinerario.
- OriginDestinationInfo: Elemento. Contenedor de segmento/s de vuelos del itinerario aéreo desde el origen hacia el destino. Componente correspondiente a la salida del origen al destino.
- OriginDestRPH: Atributo. RPH_Type. (1 = Vuelos Outbound 1001=Vuelos Inbound) Identificador de referencia para los segmentos desde un origen a un destino puntal.
- FlightID: Atributo. RPH_Type. ID para asociación/referencia interna del mensaje de los segmentos de vuelo incluidos en el origen destino.
- FlightSegment: Elemento. Contiene detalle de vuelo/segmento del itinerario aéreo.
- FareBaseID: Atributo. RPH_Type. Identificador de referencia para asociación con FareBasisCode.
- SegmentNbr: Elemento. Numeric1to99. Número de orden del segmento en el itinerario aéreo.
- CarrierCode: Elemento. xs:string-restricted alphanumeric2. Código de línea aérea.
- FlightNumber: Elemento. xs:nonNegativeInteger1to4. Número identificador del vuelo.
- RBD: Elemento. AlphaLenght1. Código de clase de reserva para el segmento de acuerdo a la cotización (FareBasisCode).
- Posting: Elemento. Numeric1to9. Cantidad de lugares disponibles en la clase de reserva.
- DepartureDate: Elemento. xs:date. Fecha de salida del segmento.
- DepartureDay: Elemento. DayOfWeek. Opcional. Representación del día de la semana, de acuerdo a la fecha de partida.
- DepartureAirport: Elemento. AlphaLenght3. Código del aeropuerto de salida del segmento.
- ArrivalAirport: Elemento. AlphaLenght3. Código del aeropuerto de arribo del segmento.
- DepartureTime: Elemento. xs:string restricted. (HH:MM:SS). Hora estimada de partida del segmento.
- ArrivalTime: Elemento. xs:string restricted. (HH:MM:SS) Hora estimada de arribo del segmento.
- ChangeDayInd: Elemento. xs:integer. Indicador de cambio de día entre la fecha de partida y arribo. Cantidad de días.
- EQP: Elemento. xs:string. Opcional. Código del equipo que presta el servicio en el segmento.
- Stops: Elemento. Numeric0to4. Cantidad de paradas en el segmento.
- ElapsedTime: Elemento. Opcional. xs:string restricted. (HH:MM:SS). Duración del vuelo.
- OperatingInfo: Elemento. Opcional. xs:string. Descripción de operador del vuelo.
- FltRemark: Elemento. Opcional. xs:string. Comentario asociado al vuelo.
- OriginDestinationInfo: Elemento. Contenedor de segmento/s de vuelos del itinerario aéreo desde el origen hacia el destino. Componente correspondiente a la salida del origen al destino.
- AirItineraryPriced: Elemento. Descripción de opción cotizada.
Posibles Mensajes de Error
Código | Mensaje | Explicación |
1001 | There is no combination option available | En uno o más de un vuelo no hay posibilidad de combinar tarifas de acuerdo a la disponibilidad. |
1100 | No fare combination option available | No se encuentra ninguna combinación de clases/families para cotizar. |
2000 | Impossible to process your request. Please contact webservices@kiusys.com | Error genérico de procesamiento. No se pudo obtener moneda, disponibilidad, tarifas, o todo junto. |
9999999 | INVALID - CHECK REQUEST INFO | Error genérico, envía e-mail. Es el homologo a INVALID PARAMETER. |
11185 | SpecificCarrier is required | No se declaró carrier (exclusivo para agencias, OTAs y metabuscadores). |