Obtén precios de hotel en tiempo real de Booking, Expedia y Google Hotels con una API: tarifas multi-OTA en vivo, sin scraping. 1.000 créditos gratis.
Una API de precios de hotel en tiempo real es una interfaz que devuelve la tarifa actual y en vivo de un hotel en varias agencias de viaje online (OTAs) con una sola petición. Veetal Connect API hace exactamente eso: con una llamada obtiene el precio en vivo de un alojamiento en Booking.com, Expedia, Google Hotels, Hotels.com y Airbnb, normalizado en JSON limpio y con marcas de tiempo — sin scrapers que construir ni mantener. Esta guía explica cómo funciona el precio multi-OTA en vivo, cómo es una petición, cómo la caché y los créditos mantienen el coste previsible, y dónde encaja en un producto de revenue o de comparación.
Por qué es difícil obtener precios de hotel en tiempo real
Una habitación de hotel no se vende a un único precio en un único sitio. El mismo alojamiento se distribuye en decenas de canales, y cada uno muestra un número distinto según quién mira y cómo. Esa fragmentación es justo la razón de ser de una API de precios en tiempo real.
- Un mismo alojamiento aparece a la vez en muchas OTAs, cada una con su tarifa, régimen, política de cancelación y descuento de socio.
- Los precios cambian constantemente — por duración de la estancia, ocupación, dispositivo (móvil vs escritorio) y nivel de fidelidad (Booking Genius, ofertas solo móvil).
- Las OTAs muestran los precios en páginas de búsqueda públicas, no en feeds de datos limpios, así que muchos equipos recurren al scraping — que se rompe con cada cambio de maqueta y lo frena el anti-bot.
- Los metabuscadores como Google Hotel Ads agregan muchas OTAs a la vez, pero conciliarlas con tu propia tarifa directa sigue exigiendo una estructura normalizada.
Resultado: obtener una respuesta fiable a "cuánto cuesta esta habitación ahora mismo, en todas partes" es sorprendentemente difícil. Una API de precios de hotel en tiempo real lo reduce a una sola petición.
Cómo funciona una API de precios multi-OTA en vivo
Veetal expone el precio en vivo a través de su familia Real Time API (realtime_*), que consulta bajo demanda a las OTAs y devuelve JSON normalizado. Los endpoints clave para precios en vivo son:
- Paridad de hotel en todas las OTAs — el endpoint de paridad devuelve el precio en vivo de una estancia en todas las OTAs listadas en Google Hotel Ads con una sola llamada: una tarifa por OTA, cada una con enlace de reserva y detalles de cancelación. Latencia típica de 4–14 segundos. Es la vía más rápida para responder "¿cuánto cuesta este hotel en cada canal ahora mismo?".
- Tarifas en vivo de Booking.com — el endpoint de tarifas de Booking devuelve tarifas por habitación en Booking.com: precio noche y total, capacidad, régimen, política de cancelación y ofertas Genius/móvil.
- Tarifas genéricas por OTA — un endpoint de tarifas en vivo por OTA cuando necesitas un solo canal de forma aislada.
- Precio de listing de Airbnb — un endpoint de listing de Airbnb devuelve el precio total en vivo y su desglose para un anuncio, de modo que el alquiler vacacional entra en la misma comparación que los hoteles.
Fuentes en vivo soportadas para precios: Booking.com, Expedia, Google Hotels, Hotels.com y Airbnb. (Las reseñas y la reputación multi-OTA tienen endpoints aparte; este artículo trata del precio.)
Qué incluye cada precio en vivo
Como la respuesta está normalizada, obtienes campos estructurados en lugar de HTML crudo — listos para renderizar o almacenar directamente:
- Precio por noche y total de la estancia, con moneda.
- Tipo de habitación y capacidad (adultos/niños).
- Régimen (solo alojamiento, desayuno, media pensión, pensión completa, todo incluido).
- Política de cancelación (flags de cancelación gratis y plazos).
- Ofertas por canal: Booking Genius, tarifas solo móvil, descuentos de socio.
- Un enlace directo a la página de reserva en esa OTA.
Dos capas: Real Time vs Feed
Las consultas en vivo son la mitad de la plataforma. La otra es una capa Feed almacenada y pre-procesada para histórico y competitor sets gestionados. Saber cuál llamar mantiene la latencia y el coste bajo control.
Feed API (feed_*) | Real Time API (realtime_*) | |
|---|---|---|
| Datos | Informes pre-procesados y almacenados de imports programados | Consulta en vivo y bajo demanda a la OTA |
| Ideal para | Histórico diario de tarifas de tus hoteles + compset | "Precio ahora mismo" de cualquier hotel/OTA |
| Coste | Lecturas baratas | Consume créditos por llamada |
| Latencia | Instantánea (ya almacenada) | Segundos (consulta en vivo) |
| Ejemplo | Informe diario de tarifas del compset | Consulta de paridad multi-OTA en vivo |
Regla práctica: usa Real Time cuando un usuario espera un número fresco (un widget de comparación, una sesión de compra); usa Feed cuando necesitas tendencias, histórico o un competitor set gestionado sin pagar por llamada. Ambas comparten el mismo modelo de datos de tarifas de hotel.
Cómo es una petición
Una consulta de precio multi-OTA en vivo es un único GET al endpoint de paridad:
GET /v2/realtime/hotel/parity?reference_type=accommodation&reference=grand-hotel-central&checkin=2026-09-10&checkout=2026-09-12&adults=2
La respuesta es una entrada por OTA, cada una con el precio en vivo, la moneda, un enlace directo y la información de cancelación — ya normalizada, así que nunca parseas HTML. Puedes referenciar un hotel de tres formas: tu propio alojamiento configurado por slug, un código de entidad de Google Hotel Ads, o (para llamadas específicas de Booking) la entidad de Booking. Si el alojamiento aún no está configurado, Veetal lo autocrea en el primer uso.
Para forzar datos frescos en lugar de una respuesta cacheada, añade el parámetro global no_cache=true.
Caché y créditos: coste previsible
Las llamadas Real Time consumen créditos, así que Veetal ofrece una caché configurable (0–24 h por API, desde el dashboard). Con la caché activa y una respuesta válida dentro de la ventana, la API devuelve el valor cacheado sin consulta extra — ideal para una página de comparación donde muchos usuarios ven el mismo hotel y fechas en pocos minutos. Cuando necesitas precio fresco garantizado (una confirmación de compra), no_cache=true salta la caché.
Un patrón de coste práctico:
- Sirve la mayor parte del tráfico desde una caché corta (p. ej. 1–3 h) para absorber vistas repetidas.
- Salta la caché solo en momentos de alta intención (confirmación de precio final).
- Para paneles y gráficos de tendencia, lee de la capa Feed en vez de pagar por llamada en vivo.
Las cuentas nuevas reciben 1.000 créditos gratis para prototipar esto antes de comprometerse.
Casos de uso
- Comparadores / metabuscadores — muestra una tabla en vivo "desde 90 € en Booking, 95 € en Expedia" por alojamiento con el endpoint de paridad, e incorpora Airbnb con el endpoint de listing.
- Revenue management — controla cómo se posiciona tu tarifa frente al compset y entre canales; combina consultas en vivo con el feed diario almacenado de tarifas de hotel. La receta de parrilla de tarifas de la competencia monta exactamente esa comparación —tu hotel contra su compset— en una sola llamada.
- Monitorización de paridad / disparidad — detecta cuándo una OTA baja de tu precio directo o contratado. Consulta el dataset de disparidades de hotel.
- Agencias de viaje y motores de reserva — muestra el canal en vivo más barato para una estancia en el momento de la búsqueda.
Ejemplo: un widget de comparación
Una startup de metabúsqueda quiere un módulo de "mejor precio entre canales". En cada ficha de hotel llama al endpoint de paridad con las fechas del usuario, cachea el resultado durante dos horas y pinta una fila por OTA con enlace directo. El inventario de Airbnb de la misma ciudad se añade con el endpoint de listing de Airbnb. Sin flota de scrapers ni incidencias por cambios de maqueta — una respuesta normalizada por alojamiento, y el coste se mantiene plano porque las vistas repetidas llegan a la caché.
Si prefieres ver la respuesta antes de escribir nada de esto, la receta rate-shopper en vivo trae una tarifa de Booking.com en vivo bajo demanda, y lanza tu primera llamada real-time desde el playground explica cómo leerla y copiar esa misma petición a tu código.
¿Por qué no scrapear los precios?
Muchos equipos empiezan scrapeando las páginas de búsqueda de las OTAs. En la práctica es frágil: el precio vive dentro de HTML renderizado por JavaScript que cambia sin avisar, las medidas anti-bot frenan o bloquean las peticiones, y obtienes marcado crudo en lugar de campos estructurados como régimen o política de cancelación. Una API devuelve datos estables y normalizados que sobreviven a los rediseños y escalan de forma previsible. El mercado premia hacerlo bien: Statista situó los ingresos globales de viajes online por encima de los 600.000 millones de dólares en 2024, y un precio fiable y estructurado es la base para competir en él. Si empiezas en la categoría, arranca por Qué es una API de datos de hotel.
Preguntas frecuentes
¿Qué es una API de precios de hotel en tiempo real?
Es una API que devuelve la tarifa en vivo actual de un hotel, normalmente en varias OTAs, con una sola petición. Veetal Connect API devuelve una tarifa normalizada por OTA (Booking, Expedia, Google Hotels, Hotels.com, Airbnb) con enlace de reserva y detalles de cancelación.
¿Qué OTAs se soportan para precio en vivo?
Booking.com, Expedia, Google Hotels, Hotels.com y Airbnb. El endpoint de paridad devuelve todas las OTAs listadas en Google Hotel Ads para la estancia en una sola llamada.
¿Cómo de rápida es una petición de precio en vivo?
Una consulta de paridad suele devolver en 4–14 segundos porque consulta en vivo a los canales. Las respuestas cacheadas (dentro de la ventana configurada de 0–24 h) devuelven al instante.
¿Cómo controlo el coste?
Las llamadas en vivo consumen créditos. Usa la caché configurable por API para servir vistas repetidas gratis, lee el histórico desde la capa Feed en lugar de llamadas en vivo, y añade no_cache=true solo cuando realmente necesitas datos frescos. Las cuentas empiezan con 1.000 créditos gratis.
¿Puedo obtener también precios históricos?
Sí. La Feed API almacena tarifas diarias de tus hoteles y tu competitor set, así que obtienes histórico y tendencias sin pagar por llamada en vivo.
¿Tengo que configurar el hotel primero?
No. Puedes referenciar un alojamiento configurado por slug, o pasar una entidad de Google Hotel Ads o de Booking; Veetal autocrea el alojamiento si aún no existe.
Empieza ahora
¿Listo para traer precios multi-OTA en vivo? Empieza con 1.000 créditos gratis, sin tarjeta → connect-api.veetal.app/es/funnel. Explora el dataset de tarifas de hotel o consulta los precios.