Transaction messages are the primary means by which you update your hotel data. You send a Transaction message as a response to a Query message from Google. Google caches the contents of your Transaction messages so that the prices are available at all times. In some cases, Google determines that the values in its cache are not up to date, so it might send additional Queries (or in some cases, Live Queries) to get updated prices.
You use Transaction messages to define the following types of data:
- Itinerary Data: Define Room Bundle and itinerary-related data
- Hotel prices and inventory: Set the minimum price for an itinerary that meets certain requirements. For more information, see Updating Prices. You can also remove a room from inventory. For more information, see Removing Inventory.
- Room Bundles: Set the itinerary prices for a combination of a physical room and a package of additional services. For more information, see Using Room Bundles.
- Room and Package Metadata: Define room descriptions and package descriptions that are independent of itineraries. For more information, see Defining Room and Package Metadata.
The type and frequency with which you send Transaction messages depends on your delivery mode:
- For the Pull delivery mode, you send Transaction messages when you receive a Query message from Google.
- For the Pull with Hints delivery mode, you send a Transaction message after receiving and responding to a HintRequest and Query message.
For more information, see Choosing a Delivery Mode.
Regardless of your delivery mode, Google might also send you requests known as Live Queries. These Query messages seek prices in response to a current search. If you respond within the specified timeframe (usually a few hundred milliseconds), then your ad can appear in the auction. For more information, see Live Queries.
You can include any combination of data updates in a single Transaction message, but there is a 100MB limit on the size of each message. Set the time-out appropriately if you are transferring large amounts of data. Google recommends that you set the time-out to 10 minutes for very large messages. To greatly reduce message size and potentially avoid issues with message sizes and time-outs, use Transaction messages to pre-define your room and package metadata.
The Transaction Message Schema defines the structure and constraints of a Transaction message.