If a property or itinerary combination is unavailable, you can remove it with a
[Transaction message](https://developers.google.com/hotels/hotel-prices/dev-guide/transaction-overview).
You typically use this option when a hotel is fully booked for a given night
or series of nights.

## Remove inventory with a Transaction message

To remove specific property or itineraries from inventory, use a Transaction
message in the root element [`<Transaction>`](https://developers.google.com/hotels/hotel-prices/xml-reference/transaction-messages#Transaction).

In the Transaction message, specify the following settings for each itinerary
you want to remove in the `<Result>` element:

1. Set `<Unavailable>` with the reason child element, for example,`<NoVacancy>`.
2. Set `<Taxes>` to "0"
3. Set `<OtherFees>` to "0"

**Optional:** Set `<Baserate>` to "-1"

The following example removes several itineraries, for example, remove 1-night
stays for several different dates for hotel "1123581321" from inventory:

    <?xml version="1.0" encoding="UTF-8"?>
    <Transaction timestamp="2023-05-23T16:20:00-04:00" id="42">
      <Result>
        <Property>1123581321</Property>
        <Checkin>2023-05-23</Checkin>
        <Nights>1</Nights>
        <Unavailable>
          <NoVacancy/>
        </Unavailable>
        <Tax currency="USD">0</Tax>
        <OtherFees currency="USD">0</OtherFees>
      </Result>
      <Result>
        <Property>1123581321</Property>
        <Checkin>2023-05-24</Checkin>
        <Nights>1</Nights>
        <Unavailable>
          <NoVacancy/>
        </Unavailable>
        <Tax currency="USD">0</Tax>
        <OtherFees currency="USD">0</OtherFees>
      </Result>
      <!---Sending <Baserate> is optional with <Unavailable> -->
      <Result>
        <Property>1123581321</Property>
        <Checkin>2023-05-25</Checkin>
        <Nights>1</Nights>
        <Baserate currency="USD">-1</Baserate>
        <Unavailable>
          <NoVacancy/>
        </Unavailable>
        <Tax currency="USD">0</Tax>
        <OtherFees currency="USD">0</OtherFees>
      </Result>
    </Transaction>

As this example shows, you must explicitly set the `<Unavailable>` with the
reason for *each itinerary* (combinations of check-in dates and number of
nights) for which the room is unavailable. In addition, you must set the
`<Taxes>` and `<OtherFees>` to 0. Setting `<Baserate>` to -1 is optional.

To remove a Room Bundle, delete the `<RoomBundle>` element from the
`<Result>`.

For more information, see
[Room Bundle removal](https://developers.google.com/hotels/hotel-prices/dev-guide/room-bundles#removing).