Komunikat transakcji (danych usługi)

Opis

Komunikat ARI Transaction (Property Data) zawiera informacje o typach pokojów i pakietach (lub planach stawek) poszczególnych obiektów. Dane każdego rodzaju pokoju obejmują unikalny identyfikator (RoomID), zlokalizowaną nazwę, opis i adresy URL zdjęć pokoju. Wszystkie dane pakietu obejmują unikalny identyfikator (PackageID), zlokalizowaną nazwę, opis, liczbę osób i dodatkowe korzyści.

Korzystając z wiadomości dotyczącej transakcji, możesz:

  • Zdefiniuj dane dla co najmniej jednej usługi.
  • Dla każdego obiektu podaj typ pokoju i informacje o pakiecie.
  • Kontroluj oferty produktów.

Możesz też skonfigurować następujące działania:

  • Dodaj rodzaj pokoju i pakiet do nieruchomości.
  • Usuń typ pokoju i pakiet z nieruchomości.

Przykłady komunikatów o transakcjach znajdziesz w sekcji Przykłady transakcji (dane usługi).

Elementy wymagane i opcjonalne

Plik XML Reference zawiera opisy elementów wymaganych i opcjonalnych. Szczegółowe informacje o atrybutach i elementach podrzędnych znajdziesz w artykule Elementy i atrybuty transakcji (dane usługi).

Składnia i schematy

Podczas tworzenia wiadomości o transakcji użyj przykładowej składni danych transakcji, aby mieć pewność, że używasz prawidłowego formatu.

Aby zweryfikować pliki danych z opublikowanymi schematami przed przesłaniem ich do Google, możesz użyć narzędzia XML innej firmy, np. xmllint. Schemat wiadomości o transakcji znajdziesz w sekcji Schematy Reklam hoteli.

Wytyczne

W przypadku wiadomości o transakcji postępuj zgodnie z tymi wskazówkami:

Działania:

delta: służy do dodawania lub aktualizowania nowych rodzajów pokojów i pakietów (abonamentów).

overlay: służy do zastępowania wszystkich typów pomieszczeń i pakietów w usłudze nowym zestawem. Musisz uwzględnić informacje o wszystkich typach pokojów i abonamentach, które nadal chcesz sprzedawać.

Obsługa języków:

W polach Nazwa, Opis i Napisy określ jeden lub dwa języki (angielski i lokalny język właściwości, jeśli jest to potrzebne). W razie potrzeby możesz dodać więcej niż 2 języki.

Rodzaje pomieszczeń i pakiety:

Zmieniając rodzaj pokoju lub pakiet, musisz przesłać wszystkie informacje dotyczące tego typu pokoju lub pakietu. Jeśli na przykład dodajesz zdjęcie, musisz też podać jego nazwę i opis.

<AllowablePackageIDs> i <AllowableRoomIDs> są opcjonalne. Jeśli nie są ustawione, możesz utworzyć dowolną kombinację typu pokoju i abonamentu. Nadal musisz przesłać informacje o dostępności i stawkach zawierające typ pokoju i identyfikatory abonamentu. Te elementy pozwalają kontrolować produkty oraz dezaktywować te, których system już nie obsługuje.

Wysyłaj do Google aktualne informacje o transakcjach, gdy nastąpi zmiana rodzajów pokojów lub pakietów albo otrzymasz ważne informacje o typach pokojów i pakietach, które należy dodać.

Przykład

Ta sekcja zawiera podstawowy przykład wiadomości o transakcji ARI zawierającej elementy wymagane i opcjonalne. Aby dodać lub zaktualizować typy sal i pakietów, użyj działania, które delta dodaje lub aktualizuje typy pomieszczeń i pakietów, lub overlay, aby zastąpić wszystkie definicje typów sal i pakietów (usuwa stare wpisy).

Musisz określić jeden lub dwa języki (angielski i lokalny dla właściwości, jeśli jest to potrzebne) w polach Nazwa, Opis i Podpis. Następnie dodaj informacje o obiektach, w tym linki do zdjęć.

W przypadku usług <PropertyID> i <RoomID> używaj tych samych identyfikatorów co w swoim systemie na potrzeby planów stawek i typów pomieszczeń. Systematyczność z systemem jest niezbędna do prawidłowego wyświetlania cen i danych przez Google.

Po przygotowaniu pliku musisz wysłać go do Google za pomocą wiadomości POST do tego punktu końcowego: https://www.google.com/travel/hotels/uploads/property_data

Więcej informacji o przekazywaniu wiadomości w trybie push/OPUBLIKUJ znajdziesz w sekcji o wysyłaniu wiadomości.

Z przykładu poniżej dowiesz się, jak ustawić wiadomość o transakcji za pomocą działania 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>

Więcej przykładów, takich jak użycie działania overlay, dodanie rodzaju pokoju i pakietu do istniejących danych o nieruchomościach oraz usunięcie dotychczasowych typów i pakietów pokojów, znajdziesz w sekcji Przykłady transakcji (dane o obiekcie).

Instrukcje

Ta sekcja przedstawia rozwiązania problemów, które mogą wystąpić podczas wysyłania wiadomości o transakcjach.

Scenariusz 1. Jak usunąć dane dotyczące rodzaju pokoju

Jak usunąć obecny rodzaj pokoju lub dane pakietu?

Opis

W tym hotelu wysłano kilka typów pokojów, w tym typu king-size i typu queen size. Pokoje typu queen size nie są dostępne podczas remontu. Obecnie są dostępne tylko pokoje typu king size.

Rozwiązanie

  • Nie musisz aktualizować dostępności, stawek ani asortymentu za noc w przypadku typu pokoju ani identyfikatorów pakietów, które zostały usunięte lub dezaktywowane.
  • Jeśli rodzaj pokoju lub pakiet został usunięty lub zdezaktywowany, wyślij do: action="overlay" nową wiadomość o transakcji. Będzie ona zawierać tylko aktywne typy pokojów i pakiety, a poza tym nie zawiera usuniętego typu pokoju lub pakietu.

Przykład

Ten fragment kodu XML pokazuje, jak za pomocą działania overlay usunąć typ pomieszczenia.

Oto oryginalne działanie delta, które obejmuje pokoje typu king size i typu 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>

Następnie możesz ustawić pokój overlay tak, aby usunąć pokój typu queen size i pozostawić pokój typu 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>

Scenariusz 2. Jak kontrolować produkty za pomocą identyfikatorów dozwolonych pakietów

Jak zarządzać produktami (kombinacjami rodzajów pokojów i pakietów), gdy pakiety są grupowane według typu pokoju?

Opis

Niektóre pakiety są dostępne tylko dla określonych rodzajów pokojów. Jeśli na przykład obiekt obejmuje 4 rodzaje pomieszczeń (w tym apartament prezydencki) i sześć pakietów, ale tylko kilka z nich kwalifikuje się do apartamentu prezydenckiego, możesz określić, jakie to ma miejsce.

Rozwiązanie

Wyślij zaktualizowaną wiadomość dotyczącą transakcji zawierającą informacje o tym, które produkty znajdują się w pakiecie z użyciem atrybutu <AllowablePackageIDs>.

Przykład

Ten fragment kodu XML pokazuje, jak za pomocą atrybutu <AllowablePackageIDs> określać pakiety używane z określonym typem pomieszczenia. W przypadku apartamentu typu penthouse dozwolony jest tylko pakiet all inclusive Penthouse lub pakiet śniadaniowy w cenie, a w apartamencie typu king-size możliwy jest tylko pakiet all inclusive typu king-size lub pakiet dla zwierząt.

<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>

Scenariusz 3. Jak zarządzać produktami za pomocą identyfikatorów allowableRoomID

Jak kontrolować produkty (kombinacje rodzajów pokojów i pakietów), gdy typy pomieszczeń są pogrupowane według pakietu?

Opis

Połączenie typu pokoju i pakietu nie jest już sprzedawane jako produkt lub chcesz kontrolować zawartość nowego pakietu. W pakiecie wybierz np. tylko niektóre rodzaje pokoi, takie jak pokoje typu king-size i typu queen size z widokiem na ocean.

Rozwiązanie

Wyślij zaktualizowaną wiadomość dotyczącą transakcji zawierającą za pomocą elementu <AllowableRoomIDs> konkretne produkty zawarte w pakiecie.

Przykład

Ten fragment kodu XML pokazuje, jak za pomocą operatora <AllowableRoomID> określić w pakiecie pokoje typu king-size i z widokiem na ocean.

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