V 1.0 Diciembre 2017
Esta documentación describe el conjunto de método del servicio web desarrollado por Ofimática Jaén SL con el objetivo de realizar reservas on-line de ocio.
El objetivo de este servicio web, es el acceso vía XML, a disponibilidad de circuitos así como la posibilidad de hacer reservas y cancelaciones en el sistema.
En la siguiente documentación se describe la estructura de los mensajes a enviar en cada método, así como la respuesta obtenida en cada uno de ellos. Además se adjuntan ejemplo de cada uno de ellos.
Para cualquier duda y aspecto a comentar durante su uso, puede contactar con nosotros de Lunes a Viernes, desde las 09:00 hasta las 14:00 y de 16:00 a 19:00 en el siguiente número de teléfono 953 280 144.
Las operaciones disponibles a fin de poder solicitar disponibilidad, generar una reserva y su posterior cancelación son los siguientes:
Servicio | Descripción |
---|---|
Search | Búsqueda inicial de actividades por coordenadas y rango de fechas. Devolverá una lista de actividades con diferentes modalidad y con sus respectivas fechas de salida para el destino seleccionado. |
Valuation | Devuelve el precio definitivo de la actividad / modalidad seleccionada en la búsqueda para un número de personas y fechas concretas. |
RetrievePickups | Método para obtener las paradas de recogida de la actividad en el caso de excursiones. |
Prebooking | Realiza el bloqueo temporal de las plazas para la actividad seleccionada en Valuation. |
Booking | Confirma la reserva. |
PreCancel | Obtiene los gastos de cancelación de la reserva. |
Cancel | Realiza la anulación de la reserva ya confirmada |
Entorno | Url o "Endpoint" |
---|---|
TEST | http://booking.ofi.es/Test/ActivitiesBookingService.svc?wsdl |
LIVE | http://booking.ofi.es/ActivitiesBookingService.svc?wsdl |
En este apartado se describe la petición y la respuesta de búsqueda de actividades en el sistema a partir de unas coordenadas geográficas y una fechas (desde / hasta).
De manera que el sistema devolverá una lista de actividades cuyo destino sea el de las coordenadas y tenga definida alguna salida entre las fechas solicitadas.
Campo | Cardinalidad | Descripción |
---|---|---|
SearchActivitiesRequest | 1 | Elemento root de la petición de búsqueda de actividades |
1. ConsumerId | 1 | Identificar del consumidor |
2. LanguageIsoCode | 1 | Código ISO del lenguaje |
3. InternalAgencyData | 0 | Este campo no se debe enviar via XML |
4. ProviderData | 0 | Este campo no se debe enviar via XML |
5. Latitude | 1 | Latitud del destino a buscar |
6. Longitude | 1 | Longitud del destino a buscar |
7. From | 1 | Fecba desde (yyyy-MM-dd) |
8. To | 1 | Fecba hasta (yyyy-MM-dd) |
9. Keywords | 0..1 | Palabras clave para la búsqueda |
10. ResultsPerPage | 0..1 | Los resultados devueltos se pueden dividir en páginas. Número de elementos por página (Max 100) |
11. Page | 0..1 | Los resultados devueltos se pueden dividir en páginas. Número páginas |
Campo | Cardinalidad | Descripción |
---|---|---|
SearchActivitiesResponse | 1 | Elemento root de la respuesta de búsqueda de actividades |
1. SessionId | 1 | Identificador único de la sesión |
2. Success | 1 | True si OK, False si hay algún error |
3. Message | 0..1 | En casos de error contiene la descripcion del mismo |
4. Warnings | 0 | No se debe de tener en cuenta via XML |
5. TotalResults | 1 | Número total de resultados. |
6. Page | 1 | Páginas. |
7. Resultados por página | 1 | Resultados por página. |
8. Activities | 0..N | Lista de actividades. |
8.1 NeedPickupSelection | 1 | Necesita selección de parada (método RetrievePickups obligatorio). Será true si la actividad es de tipo Excursión. |
8.2 OnRequest | 1 | Será true si la actividad es bajo petición. |
8.3 Type | 1 | Tipo de actividad: TICKET, EXCURSION, NONE. |
8.4 ProviderId | 1 | Identificador del proveedor de la actividad. |
8.5 RealProviderId | 1 | Identificador del proveedor final de la actividad. (Será el mismo que ProviderId salvo si hay consolidación). |
8.6 ProviderName | 1 | Nombre del proveedor de la actividad. |
8.7 Name | 1 | Nombre de la actividad. |
8.8 Code | 1 | Código de la actividad. |
8.9 Description | 1 | Descripción de la actividad. |
8.10 CurrencyCode | 1 | Código de la divisa. |
8.11 CurrencyName | 1 | Nombre de la divisa. |
8.11 Latitude | 1 | Latitud del destino de la actividad |
8.12 Longitude | 1 | Longitud del destino de la actividad |
8.13 Images | 0..N | Lista de imágenes de la activdad |
8.13.1 Order | 1 | Orden de la imagen |
8.13.2 ImageSizes | 1..N | Lista de tamaños de la imagen |
8.13.2.1 Url | 1 | Url de la imagen |
8.13.2.2 Size | 1 | Tamaño de la imagen |
8.14 Destinations | 1..N | Destinos de la actividad |
8.14.1 Code | 1 | Código del destino |
8.14.2 Name | 1 | Nombre del destino |
8.15 ListDepartureDateExcursion | 1..N | Lista de salidas |
8.15.1 StartDate | 1..N | Fecha de salida |
8.15.2 PriceFrom | 1..N | Precio desde de la salida |
8.16 Modalities | 1..N | Lista de modalidades |
8.16.1 Code | 1 | Código de la modalidad |
8.16.2 Duration | 1 | Duración de la modalidad |
8.16.3 Name | 1 | Nombre de la modalidad |
8.16.4 CancellationPolicies | 0..N | Lista de politicas de cancelación |
8.16.4.1 Description | 0..1 | Descripción de la política de cancelación |
8.16.4.2 NonRefundable | 1 | True si la política de cancelación es No Reembolsable |
8.16.4.3 Currency | 1 | Divisa |
8.16.4.4 Import | 1 | Importe |
8.16.4.5 LimitDateRefundable | 1 | Fecha límite de reembolso |
8.16.4.6 Price | 1 | Precio de la política |
8.16.4.6.1 Amount | 1 | Venta |
8.16.4.6.2 Cost | 1 | Coste |
8.16.4.6.3 Taxes | 0..1 | Tasas |
8.16.4.6.4 Currency | 1 | Divisa |
8.16.4.6.5 Commission | 0..1 | Comisión |
8.16.4.6.6 Mandatory | 1 | True si es precio obligatorio |
8.16.4.6.7 PriceLineThrough | 0..1 | Precho "tachado" (antes de descuentos) |
8.16.4.6.8 FeeDetails | 0..1 | Detalles de Fee |
8.16.4.6.8.1 TotalFee | 1 | Precio total del Fee |
8.16.4.6.8.2 PerPax | 1 | Precio del Fee por persona |
8.16.4.6.8.3 NumberOfPaxes | 1 | Número de personas |
8.16.4.6.8.4 PerBooking | 1 | Precio del Fee por reserva |
En este apartado se describe la petición y la respuesta de la petición de precio definitivo de una actividad para una modalidad y salida concreta.
Campo | Cardinalidad | Descripción |
---|---|---|
ValuationActivityRequest | 1 | Elemento root de la petición de confirmación de precio de actividades |
1. ConsumerId | 1 | Identificar del consumidor |
2. LanguageIsoCode | 1 | Código ISO del lenguaje |
3. InternalAgencyData | 0 | Este campo no se debe enviar via XML |
4. RulePrices | 0 | Este campo no se debe enviar via XML |
5. SessionId | 1 | Identificador único de la sesión. |
6. ProviderCode | 1 | Código del proveedor de la actividad. |
7. ActivityCode | 1 | Código de la actividad. |
8. From | 1 | Fecha desde |
9. To | 1 | Fecha hasta |
10. PassengersAges | 1..N | Lista de edades de los pasajeros. Tanto elementos como pasajeros haya. |
10. ModalityCode | 0..1 | Código de la modalidad. |
Campo | Cardinalidad | Descripción |
---|---|---|
ValuationActivityResponse | 1 | Elemento root de la respuesta de confirmación de precio de actividades |
1. SessionId | 1 | Identificador único de la sesión |
2. Success | 1 | True si OK, False si hay algún error |
3. Message | 0..1 | En casos de error contiene la descripcion del mismo |
4. Warnings | 0 | No se debe de tener en cuenta via XML |
5. Activity | 1 | Actividad |
5.1 Type | 1 | Tipo de actividad: TICKET, EXCURSION, NONE |
5.2 ProviderId | 1 | Identificador del proveedor de la actividad |
5.3 RealProviderId | 1 | Identificador real del proveedor del actividad. (Mismo que ProviderId salvo si hay consolidación) |
5.4 ProviderName | 1 | Nombre del proveedor de la actividad |
5.5 Name | 1 | Nombre de la actividad |
5.6 Code | 1 | Código de la actividad |
5.7 Description | 1 | Descripción de la actividad |
5.8 CurrencyCode | 1 | Código de la Divisa |
5.9 CurrencyName | 1 | Nombre de la Divisa |
5.10 Latitude | 1 | Latitud del destino |
5.11 Longitude | 1 | Longitud del destino |
5.12 Images | 0..N | Lista de imágenes de la actividad |
5.12 Destinations | 1..N | Lista de destinos de la actividad |
5.12 ListDepartureDateExcursion | 1..N | Lista de salidas |
5.13 ActivityCode | 1 | Código de la actividad |
5.14 OperationDays | 1..N | Código de la actividad |
5.14.1 Code | 1 | Código |
5.14.2 Name | 1 | Nombre |
5.14.3 From | 1 | Desde |
5.14.4 Hasta | 1 | Hasta |
5.15 Modalities | 1..N | Lista de modalidades |
5.15.1 Code | 1 | Código de la modalidad |
5.15.2 Duration | 1 | Duración de la modalidad |
5.15.3 Name | 1 | Nombre de la modalidad |
5.15.4 AmountUnitType | 1 | Indica si el precio es por persona o por servicio |
5.15.5 Comments | 1 | Comentarios de la modalidad |
5.15.6 ActivitySupplierInformation | 1 | Información del proveedor |
5.15.6.1 Name | 1 | Nombre del proveedor |
5.15.6.2 VatNumber | 1 | CIF |
5.15.7 ActivityProviderInformation | 1 | Información del proveedor |
5.15.7.1 Name | 1 | Nombre del proveedor |
5.15.7.2 BookingReference | 1 | Referencia |
5.15.8 Questions | 0..N | Lista de preguntas |
5.15.8.1 Code | 1 | Código de la pregunta |
5.15.8.2 Text | 1 | Texto de la pregunta |
5.15.8.3 Required | 1 | True si es obligatoria |
5.15.9 Rates | 1..N | Lista de tarifas |
5.15.9.1 Code | 1 | Código de la tarifa |
5.15.9.2 Details | 1..N | Detalles de la tarifa |
5.15.9.2.1 RateKey | 1 | Clave de la tarifa |
5.15.9.2.2 OperationDates | 1..N | Lista de días |
5.15.9.2.3 Price | 1 | Precio de la tarifa |
5.15.9.2.4 BoxOfficeAmount | 1 | Precio en taquilla |
5.15.9.2.5 Pickup | 0..1 | Detalles de la parada |
5.15.9.2.5.1 Name | 1 | Nombre |
5.15.9.2.5.2 ValidFrom | 1 | Desde |
5.15.9.2.5.3 ValidTo | 1 | Hasta |
5.15.9.2.5.4 ShortDescription | 1 | Descripción corta |
5.15.9.2.5.5 Description | 1 | Descripción larga |
5.15.9.2.5.6 Latitude | 1 | Latitud |
5.15.9.2.5.7 Longitude | 1 | Longitud |
5.15.9.2.5.8 Time | 1 | Hora (HHMM) |
5.15.9.2.5.9 PointCode | 1 | Código del punto de recogida |
5.15.9.2.5.10 IsHotel | 1 | True si el punto de recogida es un hotel |
5.15.9.2.5.11 HotelName | 1 | Nombre del hotel si IsHotel es true |
5.15.9.2.5.12 RateKey | 1 | Clave de la tarifa |
5.15.9.2.5.13 ModalityCode | 1 | Código de la modalidad |
5.15.9.2.5.14 IdRoute | 1 | Id ruta |
5.15.9.2.6 RetrievePickupsKey | 1 | En el caso de que que la actividad necesite una parada, en lugar de un rateKey, obtendra un RetrievePickupsKey. Necesario para llamar a RetrievePickups. |
5.15.9.2.7 AmountForAgeRange | 1..N | Lista de precios por edades. |
5.15.9.2.7.1 AgeFrom | 1 | Edad desde. |
5.15.9.2.7.2 AgeTo | 1 | Edad hasta. |
5.15.9.2.7.3 Amount | 1 | Precio por pax para el tramo de edad. |
5.15.9.2.7.4 BoxOfficeAmount | 1 | Precio por pax en taquilla para el tramo de edad. |
En este apartado se describe la petición y la respuesta del método para obtener las paradas de actividades.
Se trata de un método opcional dentro del proceso de reserva. Únicamente será necesario si la actividad tiene selección de paradas, es decir, si hemos obtenido previamente NeedPickupSelection con true.
Campo | Cardinalidad | Descripción |
---|---|---|
RetrievePickupsRequest | 1 | Elemento root de la petición de paradas de actividades |
1. ConsumerId | 1 | Identificar del consumidor |
2. LanguageIsoCode | 1 | Código ISO del lenguaje |
3. InternalAgencyData | 0 | Este campo no se debe enviar via XML |
4. ProviderData | 0 | Este campo no se debe enviar via XML |
5. ProviderCode | 1 | Código del proveedor |
6. RetrievePickupsKey | 1 | Clave obtenida en respuesta de Valuation |
7. From | 1 | Fecha desde |
8. To | 1 | Fecha hasta |
9. TourReferenceCode | 1 | Código de la actividad |
10. SessionCode | 1 | Código de la session obtenido en respuesta de Valuation |
Campo | Cardinalidad | Descripción |
---|---|---|
RetrievePickupsResponse | 1 | Elemento root de la respuesta de paradas de actividades |
1. SessionId | 1 | Identificador único de la sesión |
2. Success | 1 | True si OK, False si hay algún error |
3. Message | 0..1 | En casos de error contiene la descripcion del mismo |
4. Warnings | 0 | No se debe de tener en cuenta via XML |
5. Pickups | 1..N | Lista de paradas |
En este apartado se describe la petición y la respuesta del método de bloqueo de plazas de actividades.
Campo | Cardinalidad | Descripción |
---|---|---|
PrebookingActivityRequest | 1 | Elemento root de la petición de prereserva de actividades |
1. ConsumerId | 1 | Identificar del consumidor |
2. LanguageIsoCode | 1 | Código ISO del lenguaje |
3. InternalAgencyData | 0 | Este campo no se debe enviar via XML |
4. RulePrices | 0 | Este campo no se debe enviar via XML |
5. ProviderCode | 1 | Código del proveedor |
6. ClientReference | 1 | Localizador del cliente |
7. RateKey | 1 | Clave de la tarifa seleccionada |
8. From | 1 | Fecha desde |
9. To | 1 | Fecha desde |
10. Answers | 0..N | Lista de respuestas |
10.1 Question | 1 | Pregunta |
10.2 AnswerForQuestion | 1 | Respuesta |
11 Holder | 1 | Pasajero principal |
11.1 Name | 1 | Nombre |
11.2 Surname | 1 | Apellidos |
11.3 Birthday | 1 | Fecha de nacimiento |
11.4 Passport | 1 | DNI |
11.5 Mail | 1 | |
11.6 PassengerType | 1 | Tipo de pasajero : Adult / Child / Baby |
11.7 PostalCode | 1 | Código postal |
11.8 ResidentCityCode | 0 | No hay que enviarlo en actividades |
11.9 Phone | 1 | Teléfono |
11.10 Country | 1 | Código del pais ISO, ej: ES |
11.1 ZipCode | 1 | Código postal |
Campo | Cardinalidad | Descripción |
---|---|---|
PrebookingActivityResponse | 1 | Elemento root de la respuesta de prereserva de actividades |
1. SessionId | 1 | Identificador único de la sesión |
2. Success | 1 | True si OK, False si hay algún error |
3. Message | 0..1 | En casos de error contiene la descripcion del mismo |
4. Warnings | 0 | No se debe de tener en cuenta via XML |
5. BookingStatus | 1 | Estado de la reserva : Confirmada / BajoPetición / Fallida / Cancelada |
6. Booking | 1 | Info de la reserva |
6.1 Reference | 1 | Referencia de la reserva |
6.2 ClientReference | 1 | Localizador del cliente para la reserva |
6.3 Status | 1 | Estado de la reserva |
6.3 Price | 1 | Precio de la reserva |
6.4 Payable | 1 | Pagadero por |
6.5 Remarks | 1 | Observaciones |
6.6 CancellationPolicies | 1..N | Lista de políticas de cancelación |
7 OnRequest | 1 | True si la reserva es bajo petición |
En este apartado se describe la petición y la respuesta del método de confirmación de reserva de actividades.
Campo | Cardinalidad | Descripción |
---|---|---|
BookingActivityRequest | 1 | Elemento root de la petición de búsqueda de actividades |
1. ConsumerId | 1 | Identificar del consumidor |
2. LanguageIsoCode | 1 | Código ISO del lenguaje |
3. InternalAgencyData | 0 | Este campo no se debe enviar via XML |
4. RulePrices | 0 | Este campo no se debe enviar via XML |
5. SessionId | 1 | Identificador único de la sesión |
6. ProviderCode | 1 | Código del proveedor |
7. Reference | 1 | Referencia de la reserva |
Campo | Cardinalidad | Descripción |
---|---|---|
BookingActivityResponse | 1 | Elemento root de la respuesta de búsqueda de actividades. Misma respuesta que PrebookingActivityResponse |
En este apartado se describe la petición y la respuesta del método para obtener los gastos de cancelación de una actividad reservada previamente.
Campo | Cardinalidad | Descripción |
---|---|---|
CancelActivityRequest | 1 | Elemento root de la petición de precancelacion y cancelación de actividades |
1. ConsumerId | 1 | Identificar del consumidor |
2. LanguageIsoCode | 1 | Código ISO del lenguaje |
3. InternalAgencyData | 0 | Este campo no se debe enviar via XML |
4. SessionId | 1 | Identificador único de la sesión |
5. BookingReference | 1 | Localizador de la reserva a cancelar |
6. Código del proveedor | 1 | Código del proveedor de la reserva a cancelar |
Campo | Cardinalidad | Descripción |
---|---|---|
CancelActivityResponse | 1 | Elemento root de la petición de precancelacion y cancelación de actividades |
1. SessionId | 1 | Identificador único de la sesión |
2. Success | 1 | True si OK, False si hay algún error |
3. Message | 0..1 | En casos de error contiene la descripcion del mismo |
4. Warnings | 0 | No se debe de tener en cuenta via XML |
5. CancellationPolicyDescription | 1 | Descripción de la política de cancelación |
6. CancellationPrice | 1 | Precio de la cancelación |
7. Status | 1 | Estado de la reserva |
8. CancellationDate | 0..1 | Fecha de la cancelación |
En este apartado se describe la petición y la respuesta de cancelación de una reserva de actividad en el sistema.
Campo | Cardinalidad | Descripción |
---|---|---|
CancelActivityRequest | 1 | Elemento root de la petición de cancelación de actividades. Misma estructura que la petición de Precancel |
Campo | Cardinalidad | Descripción |
---|---|---|
CancelActivityResponse | 1 | Elemento root de la respuesta de cancelación de actividades. Misma estructura que la petición de Precancel |