Przegląd
Wiadomość o promocjach określa reguły dotyczące stawek rabatów za pomocą elementu OTA_HotelRateAmountNotifRQ. W przypadku każdej stawki oceniane są zdefiniowane promocje i do stawki stosowana jest największa dozwolona zniżka. Ten typ wiadomości jest opcjonalny. Promocje musisz zdefiniować tylko wtedy, gdy są one używane w Twoim systemie do stosowania rabatów na ceny.
Możesz łączyć promocje i stosować je do różnych atrybutów użytkowników, takich jak typy urządzeń (komórki, tablety, komputery) i kody krajów.
Przykłady różnych scenariuszy związanych z promocjami znajdziesz w sekcji Instrukcje.
W sekcjach poniżej znajdziesz ogólne wskazówki, podstawowy przykład i scenariusze, które pomogą Ci zacząć dodawać i aktualizować promocje.
Wytyczne
W tej sekcji znajdziesz ogólne wytyczne i specjalne instrukcje dotyczące konfigurowania promocji.
Skorzystaj z tych wskazówek dotyczących promocji:
Działania
- Usuń
- Użyj działania
deletew elemencie<Promotion>, aby usunąć pojedynczą promocję według jej identyfikatora. - Nakładka
- Użyj działania
overlayw elemencie<HotelPromotions>, aby zastąpić wszystkie promocje usługi. - Delta
- Jeśli nie określono żadnego działania, wszystkie promocje określone w
<HotelPromotions>zostaną dodane lub zastąpione. Jeśli promocja o tym identyfikatorze nigdy nie została dodana lub została usunięta, zostanie dodana. Jeśli istnieje promocja o tym identyfikatorze, zostanie ona zastąpiona nową definicją.
Ogólne
Każda usługa może mieć jedną lub kilka promocji, a każda promocja ma zestaw warunków. Promocję można zastosować tylko wtedy, gdy warunki są spełnione.
Promocje dotyczą ceny za plan podróży. Nie można ustawić maksymalnego rabatu na osobę.
Jeśli chcesz, aby promocja obowiązywała tylko w określonym terminie, w przypadku określonego typu pokoju lub planu cenowego, podaj te informacje w warunkach promocji. Jeśli promocja nie dotyczy konkretnej daty, typu pokoju lub planu cenowego, nie musisz ich ustawiać.
Każda promocja jest powiązana z określoną usługą. Jeśli używasz tej samej promocji w przypadku wielu usług, musisz wysłać ją osobno dla każdej z nich. Aby określić identyfikator usługi, użyj atrybutu
hotel_idelementu<HotelPromotions>.Możesz uwzględnić maksymalnie 99 promocji. Jeśli chcesz uwzględnić więcej informacji, skontaktuj się z TAM-em Google.
Użyj elementu
<Stacking>, aby określić, jak można łączyć promocje. Domyślnie Google używabasetypu łączenia, co oznacza, że najpierw wybierana i stosowana jest najlepsza kwalifikująca się promocja podstawowa, a dopiero potem inne promocje. Uwaga:basemożna łączyć tylko zsecondlubany, a nie z innymbaselubnone.Nawet jeśli istnieje kilka promocji, które można zastosować razem, niekoniecznie zostaną one użyte, jeśli jest inna pojedyncza promocja lub zestaw promocji, które oferują większy rabat. Jeśli kwalifikuje się kilka promocji (kombinacji), do rezerwacji zostanie zastosowana promocja (kombinacja) z największym rabatem.
Wysyłaj aktualizację wiadomości o promocjach za każdym razem, gdy wystąpią zmiany wpływające na Twoje promocje.
Związane z podatkami
Do kwoty AmountAfterTax zostanie zastosowana najlepsza promocja (lub kombinacja promocji). Jeśli określono tylko parametr AmountBeforeTax, promocje są stosowane do AmountBeforeTax.
Przykład
Ta sekcja zawiera podstawowy przykład wiadomości o promocjach z wykorzystaniem elementów wymaganych i opcjonalnych. Po przygotowaniu pliku wyślij go do Google za pomocą wiadomości POST na ten punkt końcowy:
https://www.google.com/travel/hotels/uploads/promotions
Więcej informacji o wysyłaniu wiadomości metodą push/POST znajdziesz w artykule Wysyłanie wiadomości.
W przypadku atrybutu hotel_id elementu <HotelPromotions> użyj unikalnego identyfikatora hotelu, którego używasz w systemie do identyfikowania obiektu. Ta wartość musi być zgodna z identyfikatorem hotelu określonym za pomocą elementu <id> w elemencie <listing> w pliku danych z listą hoteli. Spójność z Twoim systemem jest kluczowa, aby Google prawidłowo wyświetlało Twoje dane.
UserCountry służy do wyświetlania lokalizacji użytkowników (krajów), które kwalifikują się do promocji. Jeśli to określisz, tylko użytkownicy z wymienionych krajów będą mogli skorzystać z obniżonej ceny.
Ten przykład pokazuje, jak ustawić 15% rabat na dłuższy pobyt dla użytkowników w Stanach Zjednoczonych i we Włoszech:
<?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 artykule Przykłady promocji.
Instrukcje
W tej sekcji znajdziesz rozwiązania problemów, które mogą wystąpić podczas konfigurowania promocji.
Scenariusz 1. Jak dodać promocję rabatową na dłuższy pobyt
Opis
Chcesz zaoferować zniżkę na noclegi w określone dni dłuższego pobytu.
Rozwiązanie
Użyj ustawienia FreeNights, aby dostosować typ rabatu w zależności od liczby nocy pobytu.
Przykład
Ten przykład pokazuje, jak dodać 20% rabatu na 2 noce w przypadku każdego 7-nocnego pobytu w określonym zakresie dat rezerwacji. W przypadku 15-nocnego planu podróży 20-procentowy rabat obowiązuje w sumie przez 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 wartość devices, aby określić urządzenia użytkowników, które kwalifikują się do promocji. Jeśli ta opcja jest włączona, zniżka jest oferowana tylko użytkownikom na wymienionych urządzeniach.
Opis
Chcesz określić, które typy urządzeń użytkowników kwalifikują się do promocji.
Rozwiązanie
Ustaw typ urządzenia na jedną z tych wartości: desktop, tablet lub mobile.
Przykład
Poniższy przykład pokazuje, jak określić 25% rabat 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ć stare promocje nowymi
Opis
Obecny zestaw promocji dotyczących usługi jest nieaktualny lub nieprawidłowy i należy go zastąpić całkowicie nowym zestawem.
Rozwiązanie
Aby zastąpić promocje, użyj działania overlay.
Przykład
Poniższy przykład pokazuje 2 pierwotne rabaty w wysokości 20% i 30% dla danej 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">
<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>
Ten przykład pokazuje, jak za pomocą overlay zastąpić 2 dotychczasowe promocje jedną promocją z 15-procentowym rabatem na usługę.
<?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 zastępowania ich innymi), ponieważ obiekt usunął wszystkie promocje bez ustawiania nowych lub popełniłeś(-aś) błąd i musisz go poprawić.
Rozwiązanie
Użyj działania delete, jeśli chcesz usunąć tylko konkretne promocje dla usługi, a działania overlay (nie delete), aby usunąć wszystkie dotychczasowe promocje bez zastępowania ich innymi.
Szczegółowe informacje o tym, jak zastąpić promocje za pomocą overlay, znajdziesz w scenariuszu 3.
Przykłady
Poniższy przykład pokazuje, jak usunąć tylko jedną promocję 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">
<Promotion id="1" action="delete"/>
</HotelPromotions>
</Promotions>
Ten przykład pokazuje, jak usunąć wszystkie promocje bez zastępowania ich w przypadku 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
Łączenie określa, w jaki sposób można łączyć promocje. Jeśli nie zostanie określony, 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 elementu Stacking ma wartość any, można go łączyć z dowolną inną promocją.
Opis
Chcesz, aby użytkownik miał możliwość korzystania z kilku promocji jednocześnie w przypadku tej samej usługi.
Rozwiązanie
Użyj łączenia, aby ustawić wiele rabatów na jedną nieruchomość. Stos może zawierać co najwyżej 1 element base i 1 element second, ale nieograniczoną liczbę elementów any. Elementy any można łączyć z innymi typami z wyjątkiem none.
Przykład
Ten przykład pokazuje, jak układać w stos typy base, second i any. W przypadku łącznego rabatu w wysokości 15%, 25% i 10% cena 100 zł wynosi łącznie 57,38 zł (100 zł × 0,85 × 0,75 × 0,9).
<?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 łączny rabat w przypadku promocji 1–3 jest większy niż rabat w przypadku promocji 4. Promocji 4 nie można łączyć z innymi promocjami ze względu na jej typ łączenia (none). Jeśli promocja 4 miałaby rabat w wysokości co najmniej 43%, zostałaby użyta zamiast kombinacji promocji 1–3.