Koşullu fiyatlar; kullanıcının cihazı, ülkesi veya kullanıcının Google'da oturum açıp açmadığı gibi kriterlere göre seyahat planları için farklı fiyatlar sunmanıza olanak tanıyan bir ücret kuralı türüdür.
Bir seyahat planı veya Oda Paketi için birden fazla herkese açık ya da koşullu fiyatınız varsa kullanıcıya en düşük fiyat gösterilir. Google her zaman kullanıcı için uygun olan en düşük ücreti seçer.
Genel bakış
Koşullu fiyatlar, standart fiyatlandırma alanlarında görünür ve yalnızca aramaları ilişkili koşullu fiyat ölçütlerini karşılayan kullanıcılara gösterilir. Bu ölçütler aşağıdakilere dayalı olabilir:
- Son kullanıcının cihazı
- Son kullanıcının ülkesi
- Son kullanıcının dil tercihi
- Tüm kullanıcıların örnek boyutu azaltılmış alt kümesi
- Son kullanıcının oturum açıp açmadığı
Koşullu fiyatları etkinleştirmek için aşağıdakileri değiştirin:
Ücret kuralları XML dosyası: Koşullu fiyatların uygulanacağı koşulları tanımlayın.
Fiyat feed'i: Fiyatları ayarlamak için bir Transaction mesajında
<Rate>
öğesini kullanın.Açılış Sayfası dosyası: Derin bağlantılarınıza ücret kuralına özel değerler ekleyin.
Cihaza özgü koşullu fiyatlar
Cihaza özel fiyatlar, kullanıcıların yalnızca cep telefonu, tablet veya masaüstü gibi belirli bir cihazda görebildiği ve rezervasyon yapabileceği otel fiyatlarıdır. Fiyatlar Google'ın iş ortakları tarafından sağlanır ve son kullanıcılar iş ortağının sitesinde aynı cihaza özel fiyatları görüp rezervasyon yapabilir.
Ülkeye özgü koşullu fiyatlar
Ülkelere özgü fiyatlar, yalnızca belirli bir ülkeden otel arayan kullanıcılar tarafından görülebilen ve rezervasyon yapılabilen otel fiyatlarıdır. Google, ülkeyi son kullanıcının IP adresini kullanarak belirler. Fiyatlar Google'ın iş ortakları tarafından sağlanır ve son kullanıcılar iş ortağının kendi ülkeye özgü sitesinde aynı ülkeye özgü ücretleri görüp rezervasyon yapabilir.
Dile özgü koşullu fiyatlar
Dile özgü fiyatlar, yalnızca Google'da belirli bir dil ayarını kullanarak otel arayan kullanıcılara gösterilir. Dile özgü koşullar <LanguageCode>
öğesi kullanılarak tanımlanır.
Örnek boyutuna göre koşullu fiyatlar
Örnek boyutuna göre koşullu fiyatlar, tüm uygun kullanıcıların yalnızca rastgele bir alt grubuna gösterilir. Örnekleme hızı, <MaxUsersPercent>
öğesi kullanılarak tanımlanır ve aşağıdakiler kullanılarak hesaplanır:
MaxUsersPercent = (number of users selected to view rate)/(total eligible users)
Oturum açıkken koşullu fiyatlar
Oturum açma ücretleri, yalnızca Google Hesabı ile oturum açan kullanıcılara gösterilir. Google'ın iş ortakları fiyatları sunar. Kullanıcılar da fiyatları iş ortağının kendi sitesinde görebilir ve rezerve edebilir. Oturum açma ücretleri, <UserSignedIn>
öğesi kullanılarak tanımlanır.
Google her zaman en düşük uygun fiyatı seçtiğinden, koşullu fiyat <Result>
düzeyinde ayarlanan fiyattan daha yüksekse koşullu fiyat hiçbir zaman seçilmez. Bunu önlemek için <Result>
düzeyinde ücreti kaldırın ve tüm fiyatları koşullandırın. Alternatif olarak, Teknik Hesap Yöneticinizden <Result>
düzeyinde ayarlanan fiyatlar için varsayılan bir ücret kuralı kullanmayı isteyebilirsiniz.
Ücret kuralları XML dosyası oluşturma
Koşullu fiyatlar için ücret kuralları, ücret kuralları XML dosyası kullanılarak tanımlanır. Daha fazla bilgi için Ücret Kuralları XML Referansı'na bakın.
Fiyat feed'inizi güncelleme
Koşullu fiyatlar, bir Transaction mesajındaki öğe kullanılarak ayarlanır.
<Rate>
öğesi, <RoomBundle>
veya <Result>
öğeleri içinde <Rates>
birden fazla alt öğesi olarak da kullanılabilir. Koşullu ücret olarak kullanmak için rate_rule_id
özelliğinin değerini, ücret kuralları XML dosyasında tanımladığınız ücret kuralı kimliğiyle eşleşecek şekilde ayarlamanız gerekir.
Varsayılan olarak herkese açık çift kişilik oda fiyatınız yoksa <Result>
mesajının <Baserate>
alt öğesini -1
olarak ayarlayın. Bu durumda Google'a gönderilen tüm koşullu <Rates>
öğeleri geçerli olarak kabul edilir.
Örnekler
Temel + koşullu
Aşağıdaki örnekte taban ücret ve koşullu fiyat içeren bir Transaction mesajı gösterilmektedir:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">200.00</Baserate>
<Tax currency="USD">20.00</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<Rates>
<!-- The rate_rule_id is required when using conditional rates -->
<Rate rate_rule_id="mobile">
<!-- Override base rate and taxes for conditional rates -->
<Baserate currency="USD">180.00</Baserate>
<Tax currency="USD">18.00</Tax>
<!-- NOTE: OtherFees is inherited from the above setting -->
<Custom1>ratecode123</Custom1>
</Rate>
</Rates>
</Result>
</Transaction>
Tek kişilik oda grubu
Aşağıdaki örnekte, <RoomBundle>
altında tek bir ücret içeren bir Transaction mesajı gösterilmektedir:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">300.00</Baserate>
<Tax currency="USD">30.00</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RoomBundle>
<RoomID>single</RoomID>
<Baserate currency="USD">300.00</Baserate>
<Tax currency="USD">30.00</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</RoomBundle>
<RoomBundle>
<RoomID>3</RoomID> <!-- Links to data in metadata -->
<RatePlanID>basic</RatePlanID>
<Baserate currency="USD">275.00</Baserate>
<Tax currency="USD">27.50</Tax>
<ChargeCurrency>web</ChargeCurrency>
<BreakfastIncluded>1</BreakfastIncluded>
<Rates>
<Rate rate_rule_id="mobile">
<Baserate currency="USD">269.00</Baserate>
<Tax currency="USD">2.69</Tax>
<OtherFees currency="USD">1.00</OtherFees>
</Rates>
</Rates>
</RoomBundle>
</Result>
</Transaction>
Birden çok oda grubu
Aşağıdaki örnekte, <RoomBundle>
altında birden fazla ücret içeren bir Transaction mesajı gösterilmektedir:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>2</Nights>
<!-- When Google receives new room bundle information for an itinerary, all
previous room bundle pricing is dropped from Google's cache. Thus, if you
want to delete a specific room bundle from Google's cache, you may do so
by simply not providing that specific room bundle in subsequent transaction
messages. -->
<RoomBundle>
...
<!-- RoomID is required, PackageID is recommended. -->
<RoomID>5</RoomID>
<PackageID>ABC</PackageID>
<!-- Baserate is required. -->
<Baserate currency="USD">275.00</Baserate>
<Tax currency="USD">27.50</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<!-- RatePlanID is optional and represents the unique identifier for a
room and package data combination. We strongly recommend using RatePlanID
as a variable to build your dynamic landing page (formerly Point of Sale)
URL. For details, see Using Variables and Conditions. -->
<RatePlanID>5-ABC</RatePlanID>
<!-- Occupancy is mandatory for RoomBundle elements. -->
<!-- Elements below will get inherited to nested rate elements. -->
<Occupancy>2</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
</OccupancyDetails>
<InternetIncluded>1</InternetIncluded>
<!-- Rate rule "mobile" overrides chargeCurrency, "us_or_gb" doesn't. -->
<ChargeCurrency>web</ChargeCurrency>
<Custom1>ratebasic</Custom1>
<!-- Neither rate overrides Custom2. -->
<Custom2>ratebasic</Custom2>
<Rates>
<Rate rate_rule_id="mobile">
<Baserate currency="USD">258.33</Baserate>
<Tax currency="USD">25.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<!-- The value below overrides ChargeCurrency from roombundle. -->
<ChargeCurrency>hotel</ChargeCurrency>
<!-- The value below overrides Custom1 from roombundle. -->
<Custom1>ratecode321</Custom1>
<!-- Custom2 is inherited from roombundle. -->
</Rate>
<Rate rate_rule_id="us_or_gb">
<Baserate currency="USD">268.33</Baserate>
<Tax currency="USD">26.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<!-- The value below overrides Custom1 from roombundle. -->
<Custom1>ratecode432</Custom1>
<!-- Custom2 is inherited from roombundle. -->
</Rate>
</Rates>
</RoomBundle>
</Result>
</Transaction>
Herkese açık çift kişilik oda yok
Aşağıdaki örnekte, herkese açık çift kişilik oda fiyatı olmadan koşullu fiyat içeren bir Transaction mesajı gösterilmektedir:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>1</Nights>
<!-- <Unavailable/> should not be specified when available nested rates
exist. -->
<Baserate currency="USD">-1</Baserate>
<Tax currency="USD">0</Tax>
<OtherFees currency="USD">0</OtherFees>
<Rates>
<!-- The rate_rule_id is required when using conditional rates. -->
<Rate rate_rule_id="mobile">
<Baserate currency="USD">180.00</Baserate>
<Tax currency="USD">18.00</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<Custom1>ratecode123</Custom1>
</Rate>
</Rates>
</Result>
</Transaction>
Açılış sayfası dosyanızı güncelleme
Uygun son kullanıcıların derin bağlantı aracılığıyla indirimli fiyattan rezervasyon yapabilmesi için Açılış Sayfası dosyanızı değiştirin. İndirimli fiyatların doğru şekilde gösterilmesi ve sunulması için rezervasyon web sitesinde ek uygulama gerekebilir.
İş ortaklarının koşullu fiyat derin bağlantısında gösterilen fiyatı dikkate almasını bekleriz.
Dinamik bir derin bağlantılara ücret kuralını, adıyla ve <RateRule>
öğesinin id
özelliğiyle RATE-RULE-ID
değişkeniyle ekleyebilirsiniz.
Aşağıdaki örnekte ücret kuralı kimliği eklenmiştir:
https://bookingsite.com/landing.do?id=(PARTNER-HOTEL-ID)&arrival=(CHECKINDAY)-(CHECKINMONTH)-(CHECKINYEAR)&departure=(CHECKOUTDAY)-(CHECKOUTMONTH)-(CHECKOUTYEAR)&lang=(USER-LANGUAGE)¤cy=(USER-CURRENCY)&prid=(RATE-RULE-ID)
Açılış Sayfası dosyası, ücret kuralının mevcut olup olmadığına bağlı olarak URL'nin bölümlerini koşullu olarak tanımlamanıza olanak tanıyan IF-RATE-RULE-ID
yönergesini de destekler:
https://bookingsite.com/(IF-RATE-RULE-ID)privatelanding.do(RATE-RULE-ID)(ELSE)landing.do(ENDIF)?id=(PARTNER-HOTEL-ID)&arrival=(CHECKINDAY)-(CHECKINMONTH)-(CHECKINYEAR)&departure=(CHECKOUTDAY)-(CHECKOUTMONTH)-(CHECKOUTYEAR)&lang=(USER-LANGUAGE)¤cy=(USER-CURRENCY)
Bu örnek, ücret kuralı kimliğinin ayarlanıp ayarlanmadığına bağlı olarak iki açılış sayfası arasında seçim yapar.
Daha fazla bilgi için Değişkenleri ve Koşulları Kullanma bölümüne bakın.