This is an auto-generated translation

Compras

La API de compras proporciona acceso a las tarifas y a la disponibilidad en tiempo real de 700 000 alojamientos en todo el mundo.

Información general

La API de compras devuelve las tarifas y la disponibilidad de todos los tipos de habitaciones de los alojamientos especificados (hasta 250 alojamientos como máximo por solicitud). La respuesta incluye los detalles sobre la tarifa, como las promociones, si la tarifa es reembolsable, las penalizaciones por cancelación y un desglose completo de los precios para cumplir los requisitos sobre indicación de tarifas de tu mercado.

Se pueden solicitar varias habitaciones del mismo tipo con varias instancias del parámetro occupancy. Si se solicita la misma ocupación varias veces en la misma solicitud, la respuesta solo contendrá un único conjunto de tarifas para esa ocupación. No se pueden solicitar más de ocho habitaciones a la vez. Si necesitas reservar más de 8 habitaciones a la vez, ponte en contacto con tu gestor de cuenta. Estamos trabajando en la ampliación de las reservas de grupos, y compartir tus requisitos ayudará a informar nuestra solución.

Cambios en la indicación de precios

Ten en cuenta los cambios recientes debidos a la normativa local:

Esperamos que lleguen otras normativas y no actualizaremos esta página para cada una de ellas, estos son sólo dos ejemplos.

¿Por qué los cambios?

Algunas jurisdicciones están aplicando leyes que obligan a mostrar las tarifas a los viajeros. Cada ley es ligeramente diferente, sin embargo, la forma en que hemos aplicado los cambios permitirá un cumplimiento individualizado.

Expedia Group ha introducido cambios en su API para que sus socios puedan mostrar los precios de diversas formas. En última instancia, sin embargo, cada socio que utilice la API Expedia Group's es responsable de garantizar que la forma en que muestra la información y los precios de los viajes Expedia cumple la ley.

¿Cuáles son los cambios?

Expedia ha mejorado la página Rapid API para incluir un nuevo campo property_inclusive que contiene el precio total que incluye la tarifa base y todas las tasas e impuestos Expedia y recaudados por la propiedad para toda la estancia. También está disponible una versión de este precio total en un nuevo campo property_inclusive_strikethrough. Además de los nuevos campos de visualización que incluyen la propiedad, hemos reajustado la forma en que se desglosan los impuestos y las tasas en la respuesta de la API. Todas las tasas cobradas en Expedia forman parte del tipo de desglose de precios por noche y estancia property_fee, y todos los impuestos cobrados en Expedia forman parte del tipo de desglose de precios por noche y estancia tax_and_service_fee.

Para Expedia Cobrar tarifas, la billable_currencyde los campos property_inclusivey property_inclusive_strikethroughestará en la moneda especificada en Expedia Group's contrato con el proveedor, que suele ser la moneda local del alojamiento. Esto es independiente de request_currency, porque los campos property_inclusivey property_inclusive_strikethroughpueden incluir tasas cobradas en la propiedad en la moneda local. Este comportamiento difiere de los campos inclusivey inclusive_strikethrough, en los que las tasas de billable_currencypara Expedia Recoger serán las mismas que las de request_currency.

La respuesta de la Tienda puede tener los importes de los alojamientos cobradas agrupados de forma diferente a la cantidad presentada en la respuesta de Contenido. Los totales deberían seguir coincidiendo correctamente.

Se trata de un cambio global aplicado a todas las propiedades, por lo que te rogamos que te pongas en contacto con tu gestor de cuenta si tienes alguna duda sobre los cambios.

Puntos de fidelidad

Los alojamientos con programas de fidelidad que participan en el programa de tarifas corporativas de Expedia ofrecen a los viajeros de negocios la oportunidad de ganar puntos de fidelidad del hotel por sus estancias. Los colaboradores pueden utilizar el nodo de servicios de la respuesta de la API de compras para identificar y mostrar los requisitos del programa de fidelidad antes de solicitar los detalles de la suscripción del viajero.

También pueden buscar específicamente tarifas corporativas que cumplan los requisitos del programa de fidelidad con el filtro de valor loyalty en sus solicitudes a la API de compras.

Nota: Solo se pueden ganar puntos de fidelidad por las tarifas corporativas de hoteles que tengan un programa de fidelidad.

Ejemplo:

Las tarifas corporativas de hotel válidas para obtener puntos de fidelidad tendrán el parámetro que se indica a continuación en la respuesta de búsqueda con el nodo amenities

{
  "id": "2096",
  "name": "Eligible for hotel loyalty points"
}

Incentivos de comisiones

Como colaborador de Rapid API, tienes acceso a incentivos de comisiones adicionales que ofrecen márgenes más altos en los alojamientos durante un periodo determinado de reserva y estancia. Para identificar los alojamientos con un incentivo de comisión activo, solo tienes que utilizar el valor rooms.rates.marketing_fee_incentives para el parámetro include en tu solicitud a la API de compras de Rapid. Las tarifas con incentivos de comisiones para todo o para parte del periodo de estancia solicitado incluirán detalles adicionales, como el origen del incentivo y la parte de la estancia afectada, en el objeto marketing_fee_incentives de la respuesta de la API de compras. A continuación, puedes tener en cuenta esta información y el campo marketing_fee existente, que es una estimación de la tarifa de marketing que incluye todos los incentivos disponibles, en tu proceso de clasificación y selección de inventario.

Ejemplo

El alojamiento 19248 ofrece márgenes más elevados para las estancias en diciembre. Haz una solicitud de API de Compras para Inmueble 19248 para una estancia del 22 de diciembre al 5 de enero. En el objeto marketing_fee_incentivesde la respuesta de la API de Compras Verás que hay un incentivo disponible para una parte de la estancia solicitada del 22 de diciembre al 31 de diciembre, lo que representa 10 de las 14 noches de estancia.

Ejemplo de solicitud

curl -X GET "https://test.ean.com/v3/properties/availability\
?checkin=2023-12-22\
&checkout=2024-01-05\
&currency=USD\
&country_code=US\
&language=en-US\
&occupancy=2\
&property_id=19248\
&rate_plan_count=1\
&sales_channel=website\
&sales_environment=hotel_only\
&include=rooms.rates.marketing_fee_incentives\
&travel_purpose=leisure" \
 -H "accept: application/json, application/json"\
 -H "accept-encoding: gzip"\
 -H "authorization: EAN apikey=abcd1234,signature=090a77e7ddd7779980231,timestamp=1697664047"\
 -H "user-agent: TravelNow/3.30.112"

Ejemplo de respuesta

[
  {
    "property_id": "19248",
    "rooms": [
      {
        "id": "123abc",
        "room_name": "Fancy Queen Room",
        "rates": [
          {
            "id": "333abc",
            ...
            "marketing_fee_incentives": [
              {
                "source": "property",
                "start": "2023-12-22",
                "end": "2023-12-31"
              }
            ],
            "occupancy_pricing": {
              "2": {
                "nightly": [ ... ],
                "stay": [ ... ],
                "totals": {
                  "inclusive": { ... },
                  "exclusive": { ... },
                  "inclusive_strikethrough": { ... },
                  "strikethrough": { ... },
                  "marketing_fee": {
                    "billable_currency": {
                      "value": "276.36",
                      "currency": "USD"
                    },
                    "request_currency": {
                      "value": "276.36",
                      "currency": "USD"
                    }
                  },
                  "gross_profit": { ... },
                  "minimum_selling_price": { ... },
                  "property_fees": { ... }
                },
                "fees": { ... }
              }
            }
          }
        ]
      }
    ]
  }
]

Propósito del viaje

El parámetro travel_purposete permite designar a tu viajero como de negocios o de ocio. Todos los socios de Rapid pueden utilizar el parámetro travel_purposepara ayudar a los alojamientos a reconocer y atender mejor a los viajeros de empresa.

En el caso de los socios que reúnan los requisitos para comprar tarifas comerciales, será necesario utilizar travel_purpose=businessen la solicitud de la tienda para recibir tarifas comerciales en la respuesta de la tienda. Si no se incluye el parámetro travel_purpose en la solicitud, se asumirá que es un viaje de ocio y no se devolverán las tarifas corporativas.

Ejemplo

Especificar que un viajero va a viajar por motivos de negocios es tan fácil como añadir 24 caracteres a la solicitud de la API de disponibilidad.

&travel_purpose=business

Merchandising

Hemos introducido los siguientes cambios en la API de compras para que sea compatible con los flujos de de merchandising y para que tu integración de la API de merchandising sea perfecta:

  • Los socios pueden utilizar el nuevo filtro dealdisponible en el punto final Disponibilidad de Compras Rápidas para recibir sólo tarifas que incluyan promociones activas. Esto da a los socios la flexibilidad de crear una solicitud de compra con un enfoque exclusivamente de merchandising y garantizar que todas las tarifas devueltas tengan un atributo deal.
  • Hay un nuevo encabezado de solicitud llamado Campaign-Iddisponible en el punto final de Disponibilidad de Compras de Rapid para que indiques que la llamada específica a la API de Disponibilidad de Compras que estás haciendo no es una llamada normal y que, de hecho, se debe a tus esfuerzos promocionales de merchandising (en otras palabras, esto significará que se hizo una solicitud a la API de Disponibilidad de Compras cuando el viajero entró en la experiencia de la Tienda debido a la promoción de la campaña). Sólo aceptaremos un ID de Campaña por llamada a la API de Compras.

Precios tachados

  • El campo strikethrough indica el precio total sin impuestos antes de aplicar los descuentos financiados por el hotel. Este campo debe usarse en plataformas que suelen mostrar el precio base sin impuestos ni tarifas en los resultados de búsqueda, como en Estados Unidos.
  • El campo inclusive_strikethrough muestra el precio total, sin los descuentos, y con los impuestos y tasas incluidos. El propósito de este campo es permitirte mostrar con mayor claridad el descuento que se aplica en las plataformas que muestran precios con todo incluido, es decir, base más impuestos y cargos. El campo devuelve el valor tanto en la moneda facturable como en la solicitada.

Ejemplo

[
  {
    "property_id": "19248",
    "rooms": [
      {
        "id": "123abc",
        "room_name": "Fancy Queen Room",
        "rates": [
          {
            "id": "333abc",
            ...
            "occupancy_pricing": {
              "2": {
                "nightly": [ ... ],
                "stay": [ ... ],
                "totals": {
                  "inclusive": { ... },
                  "exclusive": { ... },
                  "inclusive_strikethrough": {
                    "billable_currency": {
                      "value": "726.63",
                      "currency": "CAD"
                    },
                    "request_currency": {
                      "value": "549.60",
                      "currency": "USD"
                    }
                  },
                  "strikethrough": {
                    "billable_currency": {
                      "value": "650.00",
                      "currency": "CAD"
                    },
                    "request_currency": {
                      "value": "491.64",
                      "currency": "USD"
                    }
                  },
                  "marketing_fee": { ... },
                  "gross_profit": { ... },
                  "minimum_selling_price": { ... },
                  "property_fees": { ... }
                },
                "fees": { ... }
              }
            }
          }
        ]
      }
    ]
  }
]

Detalles de precios de promociones y descuentos

Al mostrar un importe de ahorro con descuento basado en una promoción o con precios tachados proporcionados en las API de disponibilidad y comprobación de precios, determinados puntos de venta necesitan que se proporcionen los detalles sobre el precio de la tarifa estándar (es decir, el precio sobre el que se calcula el descuento). Consulta en los siguientes enunciados qué terminología hay que utilizar.

UE: proporciona datos claros sobre el precio de la tarifa estándar (p. ej., "Este precio es la tarifa estándar proporcionada por el alojamiento en función de la búsqueda").

Italia: utiliza la siguiente frase: *"Questo prezzo è basato sulla tariffa generalmente applicabile fornita dalla struttura per questa camera e per queste date".

Opciones de reembolso

El campo current_refundabilitypermite a los socios mostrar todas las opciones de reembolso, ofreciendo a los viajeros transparencia en las tarifas y una mayor flexibilidad.

Las tres opciones son:

  • refundable
  • non_refundable
  • partially_refundable

¿Qué significa parcialmente reembolsable?

Parcialmente reembolsable se refiere a los tipos en los que:

  • La penalización por cancelación es superior a 0 pero inferior al valor total de la reserva.

y/o

  • Hay non-refundable intervalos de fechas dentro del periodo de estancia.

¿En qué es mejor aprovechar el campo current_refundability que utilizar sólo la bandera booleana reembolsable?

El indicador booleano refundableindica si una tarifa es totalmente reembolsable o no, pero devuelve un resultado falsepara las tarifas parcialmente reembolsables, lo que es engañoso para los viajeros. El campo current_refundabilityofrece una opción más matizada que proporciona información más precisa sobre la reembolsabilidad de los tipos.

¿Cómo pueden recibir los socios el campo current_refundability dentro de la respuesta de la Tienda?

Los socios deben solicitar el campo current_refundabilityen el parámetro includede la solicitud de la tienda.

Ejemplo

"property_id": "23060",
  "status": "available".
  "rates": [
    {
      "id": "201392692",
      "status": "available",
      ...
      ...
      ...
      ...
      "current_refundability": partially_refundable,
      "cancel_penalties":[
        {
          "start": "2024-10-08T23:59:00.000+02:00",
          "end": "2024-10-09T23:59:00.000+02:00",
          "nights":"1",
          "currency": "EUR"
        }
      ]
    }
  ]

Motivo de falta de disponibilidad

La función unavailable_reason te permite solicitar información procesable sobre por qué una propiedad no está disponible para una estancia determinada (fechas de estancia y ocupación). El parámetro de solicitud opcional include=unavailable_reason debe incluirse en la compra para recibir esta información en la respuesta. Sin embargo, no todos los alojamientos no disponibles tendrán un motivo procesable por el que no se puedan reservar. Estos alojamientos no se devolverán en la respuesta.

La respuesta de compra puede incluir una combinación de alojamientos disponibles y no disponibles. Los alojamientos no disponibles incluirán un property_id, score y una sección unavailable_reason que incluye un code con una breve explicación de por qué el alojamiento no está disponible (en inglés) y data para obtener información adicional que podría adaptarse en la solicitud para hacer que el alojamiento, las habitaciones o los planes de tarifas estén disponibles. Por ejemplo, si un code unavailable_reason fuera adults_exceed_threshold, el 2 en data significaría que 2 adultos es el número máximo permitido para esa habitación o tarifa y se produciría un error con cualquier ocupación superior a 2.

Nota: Se pueden aplicar varias restricciones a un alojamiento, pero solo se devolverá un unavailable_reason.

Ejemplo

[
  {
    "property_id": "824739",
    "score": 12345,
    "unavailable_reason": {
      "code": "adults_exceed_threshold",
      "data": "2"
    }
  }
]

Consulta en la lista completa de códigos devueltos .

Filtros de servicios

Tienes la opción de filtrar los alojamientos devueltos en la respuesta de compra de Rapid con el parámetro de solicitud amenity_category junto con uno o más servicios específicos.

Consulta la sección Categorías de servicios de las Listas de referencia de contenido aquí para obtener una lista de servicios que se pueden usar para filtrar la respuesta.

Ejemplos

Filtro de servicio único:

&amenity_category=free_breakfast

Filtro de varios servicios:

&amenity_category=free_breakfast&amenity_category=free_airport_transfer&amenity_category=casino

Límites de cuota

Conseguimos optimizar el tráfico aplicando límites de cuota a los colaboradores. Estos límites de cuota aseguran que podemos ofrecer un servicio estable y sostenible a los colaboradores, al mismo tiempo que garantizan un uso eficiente de los sistemas de Expedia Group. Para el tráfico de compras, los factores más importantes para determinar la carga son la cantidad de alojamientos y habitaciones, y la duración de las estancias que se buscan en cada solicitud.

Más información sobre la limitación de la tasa

Comprobación de los precios

Confirma el precio que ha devuelto la respuesta de compra. Utiliza esta API para verificar si una tarifa seleccionada previamente sigue siendo válida antes de realizar la reserva. Si el precio coincide, la respuesta devuelve un enlace para solicitar una reserva. Si el precio ha cambiado, la respuesta devuelve nuevos detalles sobre el precio y un enlace para reservar el nuevo precio. Si ya no está disponible el precio, la respuesta devuelve un enlace a una nueva solicitud de compra para buscar otras tarifas.

Puede haber una ligera variación de aproximadamente el 0,1% (por habitación × persona × noche) en el importe facturable que aparece en PriceCheckpara totals.property_feesy feesen comparación con la respuesta de la Tienda anterior, que podría incluir un importe que se ajuste a cero. La discrepancia en las tasas debidas en la propiedad surge cuando la request_currencyy la billable_currencydifieren para Expedia Tasas de recogida. La función API no se verá afectada por esta discrepancia.

Retención y reanudación

Algunas existencias no son aptas para retener y reanudar. Los socios que utilicen retener y reanudar pueden acceder a estas tarifas incrementales adoptando el indicador de compras de tarifas non-holdable. Puedes encontrar más detalles en aquí .

Opciones de pago

Devuelve las opciones de pago aceptadas en las que Expedia está aceptando el pago del viajero final (EPS MOR). Utiliza esta API para activar la página de pagos y mostrar las formas de pago válidas, de modo que la reserva se realice sin complicaciones.

Notas importantes

  • language solo utiliza pares de códigos de dos dígitos del idioma y del país unidos por un guion. Antes de integrar los códigos, repasa nuestra sección idiomas admitidos.
  • Los códigos de country de dos dígitos establecen el punto de venta del huésped (no afectan al contenido traducido).
  • No se devuelven datos estáticos (nombres, clasificación por estrellas, información geográfica, etc.). Solo se ofrecen datos relacionados con la disponibilidad y las tarifas.
  • Los enlaces tokenizados en las respuestas caducarán tras un breve periodo de tiempo. Si un enlace token devuelve un error HTTP 503, es probable que el enlace haya caducado. Deberás obtener una nueva comprobación de precios o un enlace a los depósitos generados en una respuesta de compras reciente, y volver a intentarlo. No guardes los valores de los enlaces para reutilizarlos a largo plazo.
  • Rapid API permite que los alojamientos actualicen su contenido en cualquier momento. Necesitamos que hagas todo lo posible por proporcionar a los clientes la información más actualizada. La API de compra proporciona la información más actual sobre las habitaciones y las tarifas que estén vacantes. Para obtener información adicional a nivel de alojamiento, habitación o plan de tarifas que no se haya incluido en esta respuesta, utiliza nuestra API de contenido del alojamiento.
  • Las API proporcionan precios basados solamente en una habitación. Para reservar varias habitaciones, deberás realizar tú mismo cualquier cálculo adicional. Como parte de los requisitos de lanzamiento, tu integración deberá mostrar el desglose de precios detallado a los usuarios finales en determinados pasos del proceso de reserva. El desglose se encuentra tras este enlace de documentación segura .

Para realizar solicitudes de prueba en este servicio, consulta nuestra documentación sobre solicitud de prueba.

Impuestos y tasas variables

Puede haber impuestos y tasas obligatorios que no estén incluidos en el precio total porque no pueden calcularse en el momento de la reserva, por ejemplo, tasas que varían en función de la actividad de in-stay o impuestos variables de alojamiento en algunos mercados, como Japón y Colombia. La información sobre cómo se calculan estos impuestos y tasas variables estará disponible en la API de Contenidos. Esta información debe mostrarse de forma destacada a los viajeros.

Detalles de la API

Explora las definiciones de los puntos de conexión relacionados con las compras en esta página y usa API Explorer u otro software de pruebas para ver la diferencia entre los ejemplos y las definiciones de esquemas, y el resultado real.


Recursos adicionales

Tanto si lo que quieres es probar todos los puntos de conexión de Rapid API como si quieres descargar las especificaciones de OpenAPI o nuestra colección de Postman, tenemos lo que necesitas.



¿Te ha resultado útil esta página?
¿Cómo podemos mejorar este contenido?
¡Gracias por ayudarnos a mejorar!