Wiadomość promocyjna

Opis

Komunikat o promocjach określa reguły dotyczące rabatów za pomocą atrybutu OTA_HotelRateAmountNotifRQ. W przypadku każdej stawki oceniane są określone promocje i stosowany jest do nich największy dozwolony rabat. Ten typ wiadomości jest opcjonalny i musisz zdefiniować promocje tylko wtedy, gdy są używane w Twoim systemie do zastosowania zniżek na ceny.

Możesz łączyć promocje i stosować je do różnych atrybutów użytkownika, np. typów urządzeń (komórka, tablet, komputer) i kodów krajów.

Przykłady różnych scenariuszy związanych z promocją znajdziesz w instrukcji.

Sekcje poniżej zawierają ogólne wytyczne, podstawowe przykłady i instrukcje ułatwiające dodawanie i aktualizowanie promocji.

Wytyczne

W tej sekcji znajdziesz typowe wytyczne i specjalne instrukcje dotyczące ustawiania promocji.

Przestrzegaj tych wskazówek:

Działania

Usuń
Użyj działania delete w elemencie <Promotion>, aby usunąć pojedynczą promocję według jej identyfikatora.
Nakładka
Użyj działania overlay w elemencie <HotelPromotions>, aby zastąpić wszystkie wyniki promowane danej usługi.
Delta
Jeśli nie określisz żadnej czynności, wszystkie promocje określone w elemencie <HotelPromotions> zostaną dodane lub zastąpione. Jeśli promocja z tym identyfikatorem nigdy nie została dodana lub usunięta, zostaje dodana. Jeśli istnieje promocja o takim identyfikatorze, zostanie ona zastąpiona nową definicją.

Ogólne

  • Dla każdej usługi może istnieć 1 promocja lub zestaw promocji, a każda promocja ma zestaw warunków. Z promocji można skorzystać tylko wtedy, gdy są spełnione warunki.

  • Jeśli chcesz, aby promocja miała zastosowanie tylko do określonej daty, typu pokoju lub abonamentu, określ to w warunkach danej promocji. Jeśli promocja nie ma zastosowania do określonej daty, typu pokoju lub abonamentu, nie musisz ich ustawiać.

  • Każda promocja jest powiązana z określoną usługą. Jeśli korzystasz z tej samej promocji w wielu usługach, musisz wysłać ją osobno dla każdej z nich. Aby podać identyfikator usługi, użyj atrybutu hotel_id elementu <HotelPromotions>.

  • Możesz dodać maksymalnie 99 promocji. Jeśli musisz podać ich więcej, skontaktuj się z TAM Google.

  • Użyj elementu <Stacking>, aby określić sposób łączenia promocji. Domyślnie Google używa typu grupowania base, co oznacza, że najlepsza kwalifikująca się promocja podstawowa jest wybierana i stosowana jako pierwsza, przed innymi promocjami. Pamiętaj, że właściwości base można łączyć tylko z elementami second lub any i nie można ich łączyć z innymi elementami base ani none.

  • Nawet jeśli istnieje stos różnych promocji, które można zastosować razem, ten stos może nie być używany, jeśli istnieje inna pojedyncza promocja lub stos promocji, który oferuje dłuższy rabat. Promocja (kombinacja) z największym rabatem ma zastosowanie do rezerwacji, gdy kwalifikuje się wiele promocji (kombinacji).

  • Wysyłaj powiadomienie o zmianach, które mają wpływ na promocje.

Najlepsza promocja (lub stos promocji) jest stosowana do kwoty AmountAfterTax. Jeśli określisz tylko AmountBeforeTax, promocje zostaną zastosowane do elementu AmountBeforeTax.

Przykład

W tej sekcji znajdziesz podstawowy przykład wiadomości o promocjach, która zawiera elementy wymagane i opcjonalne. Gdy przygotujesz plik, wyślij go do Google za pomocą wiadomości POST do tego punktu końcowego:

https://www.google.com/travel/hotels/uploads/promotions

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

W przypadku atrybutu hotel_id obiektu <HotelPromotions> użyj unikalnego identyfikatora hotelu użytego w systemie do identyfikacji miejsca zakwaterowania. Ta wartość musi być zgodna z identyfikatorem hotelu określonym za pomocą atrybutu <id> w elemencie <listing> w pliku danych z listą hoteli. Spójność z systemem jest niezbędna do prawidłowego wyświetlania danych przez Google.

UserCountry służy do podawania lokalizacji użytkowników (krajów), które kwalifikują się do promocji. Jeśli określisz rabat, tylko użytkownicy z wymienionych krajów będą mogli skorzystać ze zniżki.

Ten przykład pokazuje, jak ustawić 15% rabatu na dłuższy pobyt w przypadku użytkowników w Stanach Zjednoczonych i Włochach:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123_abc"
            timestamp="2022-05-30T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <Discount percentage="15"/>
      <UserCountries>
        <Country code="US"/>
        <Country code="IT"/>
      </UserCountries>
    </Promotion>
  </HotelPromotions>
</Promotions>

Więcej przykładów znajdziesz w przykładach promocji.

Instrukcje

Ta sekcja przedstawia rozwiązania problemów, z jakimi możesz mieć do czynienia przy ustawianiu promocji.

Scenariusz 1. Jak dodać promocję z rabatem w przypadku dłuższego pobytu

Opis

Chcesz oferować zniżki w określone dni w przypadku dłuższego pobytu.

Rozwiązanie

Użyj ustawienia FreeNights, aby dostosować typ rabatu w zależności od liczby noclegów.

Przykład

Z tego przykładu dowiesz się, jak dodać 20% zniżki na 2 noce na każde 7 nocy za pobyt w wybranym zakresie dat rezerwacji. W przypadku podróży złożonej z 15 nocy obowiązuje zniżka 20% na łącznie 4 noce.

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-05T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <BookingDates>
        <DateRange start="2022-02-01" end="2022-06-30"/>
      </BookingDates>
      <Discount>
        <FreeNights stay_nights="7"
                    discount_nights="2"
                    discount_percentage="20"
                    night_selection="cheapest"
                    repeats="true"/>
      </Discount>
    </Promotion>
  </HotelPromotions>
</Promotions>

Scenariusz 2. Jak ustawić typy urządzeń

Ustaw devices, aby wskazać urządzenia użytkowników, które mogą być objęte promocją. Jeśli określisz cenę, rabat będą mogli uzyskać tylko użytkownicy wymienionych urządzeń.

Opis

Chcesz określić, na jakim typie urządzenia można skorzystać z promocji.

Rozwiązanie

Ustaw typ urządzenia na co najmniej jedną z tych wartości: desktop, tablet lub mobile.

Przykład

Z przykładu poniżej dowiesz się, jak określić 25% zniżki dla użytkowników urządzeń mobilnych i tabletów:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <Discount percentage="25"/>
        <Devices>
          <Device type="mobile"/>
          <Device type="tablet"/>
        </Devices>
    </Promotion>
  </HotelPromotions>
</Promotions>

Scenariusz 3: jak zastąpić starą promocję nowymi

Opis

Obecny zestaw promocji dotyczących usługi jest nieaktualny lub nieprawidłowy i trzeba go zastąpić całkowicie nowym zestawem.

Rozwiązanie

Aby zastąpić promocje, wykonaj działanie overlay.

Przykład

Przykład poniżej pokazuje 2 pierwotne rabaty w wysokości 20% i 30% obowiązujące w usłudze.

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <BookingDates>
        <DateRange start="2022-06-01" end="2022-07-31"/>
      </BookingDates>
      <Discount percentage="20"/>
    </Promotion>
    <Promotion id="2">
      <BookingDates>
        <DateRange start="2022-08-01" end="2022-08-31"/>
      </BookingDates>
      <Discount percentage="30"/>
    </Promotion>
  </HotelPromotions>
</Promotions>

Następnie pokazujemy, jak za pomocą atrybutu overlay zastąpić 2 dotychczasowe promocje pojedynczą promocją w wysokości 15% zniżki na miejsce zakwaterowania.

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-25T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1" action="overlay">
    <Promotion id="1">
      <BookingDates>
        <DateRange start="2022-06-01" end="2022-07-31"/>
      </BookingDates>
      <Discount percentage="15"/>
    </Promotion>
  </HotelPromotions>
</Promotions>

Scenariusz 4. Jak usunąć jedną lub wszystkie promocje

Opis

Chcesz usunąć jedną lub wszystkie promocje (bez wymiany), ponieważ usługa usunęła wszystkie promocje, nie ustawiając na nich nowych, albo popełniono błąd i trzeba go poprawić.

Rozwiązanie

Działanie delete pozwala usunąć tylko określone promocje związane z danym miejscem, a działanie overlay (nie delete) pozwala usunąć wszystkie istniejące promocje bez ich zastępowania.

Szczegółowe informacje o zastępowaniu promocji z użyciem metody overlay znajdziesz w scenariuszu 3.

Sample

Z przykładu poniżej dowiesz się, jak usunąć tylko jedną promocję z miejsca zakwaterowania:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1" action="delete"/>
  </HotelPromotions>
</Promotions>

Ten przykład pokazuje, jak usunąć wszystkie promocje bez zastępowania usługi:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1" action="overlay"/>
</Promotions>

Scenariusz 5. Jak łączyć promocje w stos

Stos określa sposób łączenia promocji. Jeśli nie podasz żadnej wartości, przyjmuje się, że type ma wartość base, co oznacza, że najlepsza kwalifikująca się promocja podstawowa jest wybierana i stosowana jako pierwsza, przed innymi promocjami. Gdy atrybut type Stacking ma wartość any, można go łączyć z dowolną inną promocją.

Opis

Chcesz, aby użytkownik mógł skorzystać z wielu promocji dotyczących tej samej usługi jednocześnie.

Rozwiązanie

Aby ustawić wiele rabatów na usługę, użyj funkcji grupowania. Stos może zawierać maksymalnie 1 element base i 1 element second, ale nieograniczoną liczbę any. any można łączyć z innymi typami z wyjątkiem none.

Przykład

Ten przykład pokazuje, jak nakładać typy base, second i any. W przypadku zniżki 15%, 25% i 10% cena 100 zł daje łącznie 57,38 zł (100 × 0,85 × 0,75 × 0).

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <Discount percentage="15"/>
      <Stacking type="base"/>
    </Promotion>
    <Promotion id="2">
      <Discount percentage="25"/>
      <Stacking type="second"/>
    </Promotion>
    <Promotion id="3">
      <Discount percentage="10"/>
      <Stacking type="any"/>
    </Promotion>
    <Promotion id="4">
      <Discount percentage="40"/>
      <Stacking type="none"/>
    </Promotion>
  </HotelPromotions>
</Promotions>

Pamiętaj, że połączony rabat dla promocji skumulowanych 1–3 jest korzystniejszy niż rabat dla promocji 4. Promocji 4 nie można łączyć z innymi promocjami ze względu na typ łączenia (none). Jeśli promocja 4 obejmuje rabat w wysokości co najmniej 43%, zostanie użyta zamiast kombinacji promocji 1–3.