Los mensajes de transacción envían datos sobre habitaciones, precios y paquetes a Google. Hay dos tipos principales de mensajes de Transaction:
Datos de itinerarios: Define los datos de itinerarios y paquetes de habitaciones, incluidos los siguientes:
Inventario y precios de hoteles: Establece el precio mínimo para un itinerario que cumpla con ciertos requisitos. Para obtener más información, consulta Actualiza los precios. También puedes quitar una sala del inventario. Para obtener más información, consulta Quita inventario.
Paquetes de habitaciones: Establece los precios del itinerario para una combinación de una habitación física y un paquete de servicios adicionales. Para obtener más información, consulta Paquetes de habitaciones. Google almacena en caché el contenido de tus mensajes de transacción para que los precios estén disponibles en todo momento. En algunos casos, Google determina que los valores de su caché no están actualizados, por lo que podría enviar mensajes
<Query>
adicionales (o, en algunos casos, consultas de precios en tiempo real) para obtener los precios actualizados. Por lo general, estos datos cambian con mucha frecuencia. Para definir el precio y la disponibilidad de los mensajes de transacción, usa<Result>
.
Metadatos de la habitación y los paquetes: Especifican los detalles de las habitaciones y los paquetes, como descripciones, fotos y ocupación máxima. Estos datos no cambian con mucha frecuencia. Para definir los mensajes de transacción de metadatos, usa
<PropertyDataSet>
. Google almacena estos metadatos para que puedas hacer referencia a ellos en tus mensajes de precios en lugar de incluir información repetitiva sobre las habitaciones y paquetes en cada uno. Para obtener más información, consulta Define metadatos de habitaciones y paquetes.
El elemento raíz de un mensaje de transacción es <Transaction>
. Los mensajes que usan el elemento <Transaction>
como raíz requieren al menos uno de los elementos secundarios. Los mensajes de transacción pueden tener cualquier cantidad de elementos secundarios, siempre que el tamaño total del mensaje no supere los 100 MB.
Para ver ejemplos de mensajes de Transaction que responden a las solicitudes de Google, consulta la Referencia de XML para el inventario de habitaciones y precios (transacciones).
Modos de entrega
El tipo y la frecuencia con los que envías mensajes de transacción dependen del modo de entrega:
- Para el modo de entrega de extracción, debes enviar mensajes de transacción cuando recibes un
<Query>
de Google. - Para el modo de entrega de precios modificados, debes enviar un mensaje de transacción después de recibir y responder
<HintRequest>
y<Query>
.
Para obtener más información, consulta Modos de entrega de precios.
Consultas de precios en tiempo real
Sin importar el modo de entrega, es posible que Google también te envíe solicitudes conocidas como consultas de precios en tiempo real. Estos mensajes de consulta buscan precios en respuesta a una búsqueda actual. Si respondes dentro del período especificado que suele ser de unos pocos cientos de milisegundos, tu anuncio puede aparecer en la subasta. Los resultados también pueden coincidir mejor con el cliente, lo que incluye su país, tipo de dispositivo y la cantidad de invitados que especificó. Para obtener más información, revisa Consultas de precios en tiempo real.
Tamaño del mensaje
Puedes incluir cualquier combinación de actualizaciones de datos en un solo mensaje de transacción, pero hay un límite de 100 MB para el tamaño de cada mensaje. Por lo general, todas las solicitudes de extracción y sugerencia tienen un límite de tiempo de respuesta de 100 segundos. El tiempo de espera es un campo configurable que Google puede ajustar según se solicite. Google recomienda establecer el tiempo de espera en 10 minutos para los mensajes muy grandes.
Para reducir en gran medida el tamaño de los mensajes y evitar potencialmente problemas con el tamaño de los mensajes y los tiempos de espera, usa mensajes de transacción para predefinir tus metadatos de salas y paquetes.
También puedes agregar contenido comprimido de GNU a los mensajes agregando Content-Encoding: gzip
a los encabezados del mensaje.