Сообщение о транзакции (данные о собственности)

Обзор

Сообщение ARI Transaction (Data Property) определяет информацию о типах номеров и пакетах (или тарифных планах) каждого объекта размещения. Данные о каждом типе номера включают уникальный идентификатор ( RoomID ), локализованное имя, описание и URL-адреса фотографий номеров. Данные каждого пакета включают уникальный идентификатор ( PackageID ), локализованное имя, описание, занятость и дополнительные сведения.

Вы можете использовать сообщение транзакции, чтобы сделать следующее:

  • Определите данные для одного или нескольких свойств.
  • Определите тип номера и информацию о пакете для каждого объекта недвижимости.
  • Контролируйте предложение продуктов.

Кроме того, вы можете настроить действия для выполнения следующих действий:

  • Добавьте тип номера и пакет услуг в объект размещения.
  • Удалите тип номера и пакет из объекта размещения.

Примеры сообщений о транзакциях см. в разделе Примеры транзакций (данные о свойствах) .

Обязательные и дополнительные элементы

Справочник XML содержит описания обязательных и необязательных элементов. Подробную информацию об атрибутах и ​​дочерних элементах см. в разделе «Элементы и атрибуты транзакции (данные о свойствах)» .

Синтаксис и схемы

Используйте пример синтаксиса транзакции (данные свойства) в качестве справочного материала при создании сообщения транзакции, чтобы убедиться, что вы используете правильный формат.

Вы можете использовать сторонний инструмент XML, например xmllint, чтобы проверить свои каналы на соответствие опубликованным схемам перед отправкой их в Google. Схему сообщения о транзакциях см. в разделе Схемы рекламы отелей .

Методические рекомендации

Используйте следующие рекомендации для сообщения о транзакции:

Действия:

delta : используйте для добавления или обновления новых типов номеров и пакетов (тарифных планов).

overlay : используется для замены всех типов номеров и пакетов объекта новым набором. Должна включать информацию обо всех типах номеров и тарифных планах, которые вы все еще хотите продать.

Языковая поддержка:

Укажите один-два языка (английский и местный язык свойства, если необходимо) в полях «Имя», «Описание» и «Заголовок». При необходимости вы можете добавить более двух языков.

Типы номеров и пакеты:

При обновлении типа номера или пакета вы должны отправить всю соответствующую информацию для этого типа номера или пакета. Например, когда вы добавляете фотографию, вы также должны указать имя и описание.

<AllowablePackageIDs> и <AllowableRoomIDs> являются необязательными, и если они не установлены, можно создать любую комбинацию типа номера и тарифного плана. Вам все равно придется отправлять информацию о наличии мест и тарифах вместе с идентификаторами типа номера и тарифного плана. Эти элементы позволяют вам контролировать продукты, а также деактивировать комбинации, которые ваша система больше не поддерживает.

Отправляйте Google сообщение о транзакции всякий раз, когда происходят изменения в типах номеров или пакетах или важные сведения о типах номеров или пакетах, которые необходимо добавить.

Пример

В этом разделе представлен базовый пример сообщения транзакции ARI с использованием обязательных и дополнительных элементов. Чтобы добавить или обновить типы номеров и пакеты, вы используете действие либо для delta , чтобы добавить или обновить типы номеров и пакеты, либо overlay , чтобы заменить все типы номеров и определения пакетов (удаляет старые записи).

Вам необходимо указать один-два языка (английский и местный язык свойства, если необходимо) в полях «Имя», «Описание» и «Заголовок». Затем добавьте информацию о недвижимости, включая ссылки на фотографии.

Для <PropertyID> и <RoomID> используйте те же идентификаторы, которые вы используете в своей системе для тарифных планов и типов номеров (соответственно). Согласованность с вашей системой имеет решающее значение для обеспечения правильного отображения ваших цен и данных Google.

Подготовив файл, вы должны отправить его в Google через POST-сообщение на следующую конечную точку: https://www.google.com/travel/hotels/uploads/property_data .

Дополнительные сведения о том, как отправить/POST сообщение, см. в разделе Отправка сообщений .

В следующем примере показано, как установить сообщение транзакции с помощью delta действия:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="202X-XX-XXT00:00:00-0X:00" id="12345678" partner="partner_key">
  <PropertyDataSet action="delta">
    <Property>PROPERTYID</Property>
      <RoomData>
        <RoomID>ROOMID</RoomID>
        <Name><Text text="ROOM NAME" language="en"/></Name>
        <Description>
          <Text text="ROOM DESCRIPTION TEXT" language="en"/>
        </Description>
        <Capacity>4</Capacity>
        <PhotoURL>
          <Caption><Text text="ROOM PHOTO CAPTION TEXT" language="en"/></Caption>
          <URL>https://LINK TO PHOTO</URL>
        </PhotoURL>
      </RoomData>
      <PackageData>
        <PackageID>BASE</PackageID>
        <Name><Text text="Internet Special" language="en"/></Name>
        <Description><Text text="Direct Booking through Hotel Website" language="en"/></Description>
        <Refundable available="true" refundable_until_days="2" refundable_until_time="12:00"/>
      </PackageData>
  </PropertyDataSet>
</Transaction>

Дополнительные примеры, например, как использовать действие overlay , добавить тип номера и пакет к существующим данным объекта недвижимости, а также удалить существующие типы номеров и пакеты, см. в разделе Примеры транзакций (данные объекта недвижимости) .

Инструкции

В этом разделе представлены решения для сценариев, с которыми вы можете столкнуться при отправке сообщений о транзакциях.

Сценарий 1: Как удалить данные о типе номера

Как удалить существующие данные о типе номера и/или пакете услуг?

Описание

Вы отправили объекту размещения несколько типов номеров, включая номера с кроватью размера «king-size» и «queen-size». Во время реконструкции будут недоступны все типы номеров с кроватью размера «queen-size». В настоящее время доступны только номера с кроватью размера «king-size».

Решение

  • Вам не нужно обновлять информацию о наличии мест, тарифах или инвентаре за ночь для типа номера и идентификаторов пакетов, которые были удалены или деактивированы.
  • Если тип номера или пакет был удален или деактивирован, отправьте новое сообщение транзакции с action="overlay" , которое включает только те типы номеров и пакеты, которые все еще активны, и исключает удаленный тип номера или пакет.

Образец

В этом фрагменте XML показано, как использовать действие overlay для удаления типа номера.

Вот исходное delta действие, включающее типы номеров с кроватью размера «king-size» и «queen-size»:

  <PropertyDataSet action="delta">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>King</RoomID>
      <Name>
        <Text text="King" language="en"/>
      </Name>
      <Capacity>2</Capacity>
    </RoomData>
    <PackageData>
      <PackageID>Standard</PackageID>
      <Name>
        <Text text="Standard" language="en"/>
      </Name>
      <Description>
        <Text text="Standard rate" language="en"/>
      </Description>
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>0</BreakfastIncluded>
      </PackageData>
    <RoomData>
      <RoomID>Queen</RoomID>
      <Name>
        <Text text="Queen" language="en"/>
      </Name>
      <Capacity>2</Capacity>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
  </PropertyDataSet>

Затем вы можете настроить overlay , чтобы удалить тип номера с кроватью размера «queen-size» и сохранить тип номера с кроватью размера «king-size»:

  <PropertyDataSet action="overlay">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>King</RoomID>
      <Name>
        <Text text="King" language="en"/>
      </Name>
      <Capacity>2</Capacity>
    </RoomData>
    <PackageData>
      <PackageID>Standard</PackageID>
      <Name>
        <Text text="Standard" language="en"/>
      </Name>
      <Description>
        <Text text="Standard rate" language="en"/>
      </Description>
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>0</BreakfastIncluded>
    </PackageData>
  </PropertyDataSet>

Сценарий 2. Как контролировать продукты с помощью AllowablePackageIDs

Как управлять продуктами (комбинациями типов номеров и пакетов), если пакеты сгруппированы по типам номеров?

Описание

У вас есть определенные пакеты, которые доступны только для определенных типов номеров. Например, если в вашем объекте размещения есть четыре типа номеров (включая президентский люкс) и шесть различных пакетов, но только несколько пакетов подходят для президентского люкса, вы можете указать право на участие.

Решение

Отправьте обновленное сообщение транзакции, в котором указано, какие продукты включены в пакет, используя <AllowablePackageIDs> .

Образец

В этом фрагменте XML показано, как использовать <AllowablePackageIDs> для указания пакетов, используемых с определенным типом номера. Здесь для номеров люкс «Пентхаус» разрешен только пакет «Пентхаус «все включено»» или пакет «Бесплатный завтрак», а для номеров типа «люкс с кроватью размера «king-size» разрешен только пакет «Все включено» с кроватью размера «king-size» или пакет, в котором разрешено размещение с домашними животными.

<RoomData>
  <RoomID>penthouse_suite</RoomID>
  <AllowablePackageIDs>
    <AllowablePackageID>penthouse_all_inclusive</AllowablePackageID>
    <AllowablePackageID>free_breakfast</AllowablePackageID>
  </AllowablePackageIDs>
  <!-- Additional child elements omitted. -->
</RoomData>
<RoomData>
  <RoomID>king_suite</RoomID>
  <AllowablePackageIDs>
    <AllowablePackageID>king_all_inclusive</AllowablePackageID>
    <AllowablePackageID>pet_friendly</AllowablePackageID>
  </AllowablePackageIDs>
  <!-- Additional child elements omitted. -->
</RoomData>
<PackageData>
  <PackageID>penthouse_all_inclusive</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
  <PackageID>free_breakfast</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
  <PackageID>king_all_inclusive</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
  <PackageID>pet_friendly</PackageID>
</PackageData>

Сценарий 3. Как контролировать продукты с помощью AllowableRoomIDs

Как управлять продуктами (комбинациями типов номеров и пакетов), если типы номеров сгруппированы по пакетам?

Описание

Комбинация типа номера и пакета больше не продается как продукт, или вы хотите сами контролировать, что входит в новый пакет. Например, вы хотите указать в пакете только определенные типы номеров, например номера с кроватью размера «king-size» и «queen-size» и видом на океан.

Решение

Отправьте обновленное сообщение транзакции, в котором указаны точные продукты, включенные в пакет, с помощью элемента <AllowableRoomIDs> .

Образец

В этом фрагменте XML показано, как использовать <AllowableRoomID> для указания типов номеров с кроватью размера «king-size» и «queen-size» в пакете.

<PackageID>RO</PackageID>
<AllowableRoomIDs>
  <AllowableRoomID>king_oceanview</AllowableRoomID>
  <AllowableRoomID>queen_oceanview</AllowableRoomID>
</AllowableRoomIDs>