Oda Paketleri, tek bir tesis için birden fazla oda türü tanımlamanıza veya bir odanın seyahat planını kullanıcılarınıza sunulan standart bir fiyatın ötesindeki ücret özellikleriyle (ücret ve satış koşullarıyla birlikte gelen ek hizmetler) birleştirmenize olanak tanır.
Temel kavramlar ve iş akışı
Oda Paketleri ile farklı hizmet paketlerine sahip ek fiziksel oda kombinasyonları sunabilirsiniz.
Örnekler
Aşağıdaki resimlerde, masaüstü ve mobil cihazlardaki oda paketi örnekleri gösterilmektedir:
Resimli oda paketleri
Bu örnek, Oda paketlerinin gerekli sayıda kişi için tüm farklı oda türlerini ve bu kişilerin ilgili oda resimlerini içeren mobil sürümüdür.
Not: Resmi olmayan oda paketleri, bir yatak yer tutucu resmiyle değiştirilir.
Fiyat özellikleri
Aşağıdaki resimlerde ücret özelliklerinin örnekleri gösterilmektedir:
Arama sonuçlarında Oda Paketlerinin ve ücret özelliklerinin gösterilmesi, standart oda fiyatlarıyla aynı seçim sürecine tabidir.
Oda Paketleri
Oda Paketlerini ve ücret özelliklerini Transaction mesajlarında tanımlarsınız. Bir Transaction mesajının kök öğesi <Transaction>
şeklindedir.
Transaction mesajının yapısı, yürüttüğünüz işleme bağlıdır: Oda Paketi veya ücret özelliğiyle ilgili meta verileri tanımlama veya Oda Paketinin fiyatlandırmasını ya da müsaitlik durumunu güncelleme.
- Meta veri
- Oda Paketini ve özellik meta verilerini bir
<PropertyDataSet>
öğesinde<PackageData>
ile tanımlayın. Daha fazla bilgi için Oda ve paket meta verilerini tanımlama konusuna bakın. Oda Paketleri, fiziksel oda açıklamaları için mevcut<RoomData>
öğelerini kullanır. - Fiyatlandırma ve müsaitlik
- Her paket/seyahat planı kombinasyonu için Oda Paketi fiyatlandırmasını ve müsaitliğini bir
<Result>
öğesinde<RoomBundle>
öğesiyle tanımlayın. Daha fazla bilgi için Fiyatlandırmayı ve müsaitliği tanımlama konusuna bakın.
Temel odanın ücreti, vergileri ve diğer ücretleri, Oda Paketleri ile kullanılmadığında <Result>
kapsamında zorunludur ve Oda Paketleri ile birlikte kullanıldığında kaldırılabilir. Oda paketlerini canlı bir hesap kullanarak uyguluyorsanız aşağıdaki adımları uygulayın:
<Result>
altında taban odanın ücretini, vergilerini ve diğer ücretleri dahil edip temel Oda Paketi ile eşleşen bir Oda Paketi ekleyin.Gerekirse ilgili tesisteki diğer oda türleri veya farklı hizmet paketleri için aynı
<Result>
blokunda ek Oda Paketleri tanımlayın.Oda paketi kullanıma sunulduktan sonra taban odanın fiyatını, vergilerini ve diğer ücretlerini kaldırın.
Oda Paketi meta verileri
Oda Paketleri ve ücret özelliklerini tanımlarken genellikle açıklamayı, ücretin parçası olan ek hizmetleri ve Oda Paketi ile ilgili diğer bilgileri önceden tanımlarsınız. Bu bilgiler Oda Paketi meta verileri olarak bilinir. Daha sonra fiyatlandırma güncellemelerinizde bu meta verilere başvurursunuz ancak meta verileri fiyatlandırma güncelleme mesajlarına dahil etmezsiniz.
Oda Paketlerini tanımlarken fiziksel oda açıklamaları için mevcut <RoomData>
öğelerini ve fiziksel oda açıklamasında yer almayan ücret özellikleri ve şartlar için <PackageData>
öğelerini kullanın.
<RoomData>
ve <PackageData>
öğelerinin kullanılması, Transaction mesajlarında gönderilen tekrar eden veri miktarını azaltacağı için Otel Listenizin ve Otel Fiyatı Feed'inizin boyutunu önemli ölçüde azaltabilir.
Örneğin, oda adı ve açıklama gibi veriler genellikle her seyahat planı için tekrarlanır. Bu tür verileri bir kez tanımlamak için <RoomData>
ve <PackageData>
öğelerini kullanabilirsiniz. Seyahat planına özgü Oda Paketi verileri daha sonra son kullanıcıya gösterilmek üzere depolanan oda ve paket tanımlarıyla birleştirilir.
Google, reklamlarınızın içeriğini oluşturmak için meta verilerinizi seyahat planınıza özgü verilerle eşleştirir. <RoomData>
ve <PackageData>
öğelerindeki ad ve açıklamaların birleştirilmesi için özel işlem mevcuttur. Fiziksel oda <RoomData>
içinde; ücret özellikleri ve paket ayrıntıları ise <PackageData>
içinde açıklanır.
Tek bir oda veya Oda Paketi için hem oda verileri hem de paket verileri tanımlarsanız Google bunları kısa çizgiyle ayrılmış olarak reklama ekler.
Fotoğraf yönergeleri
Oda fotoğraflarını gönderirken fotoğraflarınızın kullanıcılara gösterilmesini sağlamak için uymanız gereken bazı kurallar aşağıda verilmiştir:
Engellilere uygun odaların fotoğrafları da dahil olmak üzere her oda türü için fotoğraf gönderin. Örneğin, duşakabin gibi çeşitli banyo armatürleri bulunan erişilebilir odalara özel olarak yararlanabilirsiniz.
Odanın en az dört, banyonun ise en az bir fotoğrafını ekleyin.
Fotoğraflar tesisin değil, odanın kendisinden çekilmelidir. En önemli fotoğraflar yatak, odanın tamamı, banyo, yaşam alanı ve odadan görünen manzara (odanın geri kalanı aynı fotoğrafta olmalıdır) ve varsa balkon, veranda veya terastır.
Masa, mutfak, kahve/çay makineleri ve odanın farklı özelliklerinin fotoğraflarını çekmek de faydalı olur.
İnsanların ve tesisin (ör. tesisin dış cephesi veya tesis olanakları) fotoğraflarını, turistik yerleri/turizmi ve yemekleri paylaşmayın.
Bardak gibi nesnelerin yakın çekimlerinden kaçının.
Marka ve markalı ürünlerden kaçının. Ancak banyo alanının tamamını gösteren bir fotoğrafa etiketli veya markalı tuvalet malzemelerini ekleyebilirsiniz. Fotoğraflarda büyük metin blokları, logolar veya filigranlar bulunmamalıdır.
Geniş bir görüş alanına sahip standart, yatay (landscape) fotoğraflar sağlayın. Balık gözü ve bozuk fotoğraflardan kaçının. Sıralamayı yükseltmek için fotoğrafları en yüksek çözünürlükte çekin. Aynı fotoğrafı farklı çözünürlüklerde göndermeniz gerekmez.
Veri önceliği
Oda Paketi verileri tüm kaynaklardan toplanır ve belirli bir otel, seyahat planı ve Oda Paketi için nihai verileri üretmek amacıyla öncelik kurallarından yararlanılarak birleştirilir. Sıralama, en düşük öncelikten en yüksek önceliğe doğru aşağıdaki gibidir:
- (En düşük) İş ortağı verileri
- Tesis verileri
<RoomID>
öğesinin<RoomBundle>
blokundaki<RoomID>
öğesiyle eşleştiği<RoomData>
<PackageID>
öğesinin<RoomBundle>
blokundaki<PackageID>
öğesiyle eşleştiği<PackageData>
- (En Yüksek)
<RoomBundle>
Fiyatlandırmayı ve müsaitliği tanımlayın
Oda Paketi fiyatlandırmasını ve müsaitliğini tanımlamak için her paket veya seyahat planı kombinasyonunda bir Transaction mesajı içinde bir <RoomBundle>
öğesi kullanın. <RoomBundle>
öğesi, <Result>
öğesinin içinde olmalıdır. İki <RoomBundle>
öğesi için örnek kod aşağıda gösterilmiştir. Bu örnekte, iki <RoomBundle>
öğesinin <RoomID>
ve <PackageID>
kullanarak oda ve paket meta verilerine başvurduğunu unutmayın.
Her <Result>
için Oda Paketi grubu, söz konusu tesis veya seyahat planı kombinasyonuna ait mevcut grubun üzerine yazar. <Result>
öğesinde herhangi bir Oda Paketi veya ücret özelliği tanımlamazsanız tüm Oda Paketleri kaldırılır ve arama sonuçlarında bu otel veya seyahat planı için yalnızca temel oda gösterilir.
Oda Paketlerinizi potansiyel müşteriler için daha çekici hale getirmek ve otelin açılış sayfasıyla eşleştiklerinden emin olmak için <Name>
gibi öğeleri kullanın. Bu örnekte, meta verilerde adlar ve diğer açıklayıcı bilgiler tanımlanır.
<RatePlanID>
isteğe bağlıdır ve bir oda-paket kombinasyonu için benzersiz tanımlayıcıyı temsil eder. Dinamik açılış sayfanızın (eski adıyla Satış Noktası) URL'sini oluşturmak için RatePlanID değişkenini kullanmanızı kesinlikle öneririz. Ayrıntılar için Değişkenleri ve Koşulları Kullanma bölümüne bakın.
Oda Paketlerinde aşağıdaki öğeler isteğe bağlıdır:
<Baserate>
<Tax>
<OtherFees>
<RoomID>
<PackageID>
<Occupancy>
<OccupancyDetails>
Oda paketini etkin bir hesaba uyguladığınızda, oda paketi etkinleştirildikten sonra <Baserate>
öğesini kaldırın.
<Result>
<!-- Note: When using Room Bundles, the top level result price is no
longer necessary. -->
<Property>180054</Property>
<Checkin>2017-10-07</Checkin>
<Nights>2</Nights>
<!-- Base Room Bundle -->
<RoomBundle>
<RoomID>060773</RoomID>
<PackageID>P54321</PackageID>
<Baserate currency="USD">199.99</Baserate>
<Tax currency="USD">25.12</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>060773-P54321</RatePlanID>
</RoomBundle>
<!-- Premium Room Bundle -->
<RoomBundle>
<RoomID>436233</RoomID>
<PackageID>P12345</PackageID>
<!-- Price for 4 ("occupancy") -->
<Baserate currency="USD">298.88</Baserate>
<Tax currency="USD">42.12</Tax>
<OtherFees currency="USD">10.00</OtherFees>
<RatePlanID>436233-P12345</RatePlanID>
</RoomBundle>
</Result>
Oda ve paket meta verilerini tanımlama
Oda Paketi meta verilerini tanımlamak için bir Transaction mesajının <PropertyDataSet>
öğesinin içinde <PackageData>
ve <RoomData>
öğelerini kullanın.
Oda ve paket meta verilerini fiyatlandırma ve müsaitlik verilerinden ayrı bir Transaction mesajında tanımlarsınız. Bu verileri önceden tanımladığınızda, fiyatlandırma güncellemelerinizde açıklamalar, fotoğraf URL'leri, imkanlar ve her seyahat planı için her bir oda veya paketle ilgili diğer veriler gibi tekrar eden bilgiler bulunması gerekmez.
Google, meta verileri sizin için depolar ve gösterilen reklamlarınıza ekler. Oda ve paket meta verilerini istediğiniz zaman yeni bir Transaction mesajıyla güncelleyebilirsiniz.
Transaction mesajında, her blok için bir paket kimliği ve oda kimliği ayarlarsınız. Daha sonra bunlara fiyatlandırma güncellemelerinizin <Result>
bloklarında referans verirsiniz.
Oda ve paket verileri değişirse (örneğin, bir tesise yeni bir oda türü eklerseniz) güncellenmiş oda ve paket verilerini içeren yeni bir Transaction mesajı gönderin. Google, bir oda veya paketle ilgili mevcut meta verileri yeni verilerle değiştirir.
Google, ilk kurulum sırasında meta verileri tanımlamanızı önerir. Meta verileri önceden tanımladıktan sonra, fiyatlandırma güncellemelerinizde tüm bu bilgileri tekrar eklemek yerine <RoomID>
ve <PackageID>
değerlerine referans vermeniz yeterlidir. Google, bu kimlikleri kullanarak odaları ve Oda Paketlerini depolanan meta verilerle eşleştirir. Bu, Transaction mesajlarınızın genel boyutunu önemli ölçüde azaltabilir.
Oda veya seyahat planı kombinasyonlarının fiyatları, oda veya paket açıklamalarından çok daha sık değiştiğinden, meta verileri bir kez tanımlamak ve ardından bunlara referans vermek Transaction mesajlarının çok daha verimli bir kullanım şeklidir. Ek olarak, oda açıklamalarının uyuşmaması gibi hatalar, verileri satır içi tanımlamak yerine meta veriler kullanılarak ortadan kaldırılabilir.
Meta verileri ve fiyatlandırmayı ayrı olarak tanımlamak için en verimli olan önerilen yöntem aşağıda gösterilmiştir:
<!-- Efficient method of defining Room Bundles -->
<!----- Occupancy of 2 and 4 example ------>
<Transaction timestamp="2019-04-18T16:20:00-04:00" id="12345678">
<!-- Part1: Define RoomData and PackageData in PropertyDataSet -->
<!-- Note: Once defined it does not have to be repeated for future Transaction Messages. -->
<!-- PropertyDataSets can also be defined and sent in their own Transaction Message -->
<!-- separately from pricing. Google can be configured to pull just PropertyDataSets -->
<!-- once per day (or on a predefined frequency). -->
<PropertyDataSet>
<Property>180054</Property>
<!-- Can be reused by multiple Room Bundles -->
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Queen Room - Non-Smoking" language="en"/>
<Text text="Chambre de la Roi Premium - Pas de Fumeurs" language="fr"/>
</Name>
<!-- Room can accommodate 4, but bundle is for 2 -->
<Capacity>4</Capacity>
<PhotoURL>
<URL>http://www.foo.com/static/bar/imageQueen.jpg</URL>
<Caption>
<Text text="A bright and breezy way to enjoy your mornin'
cuppa tea." language="en"/>
<Text text="Une façon lumineuse et aérée pour profiter
de votre journée tasse de thé." language="fr"/>
</Caption>
</PhotoURL>
</RoomData>
<RoomData>
<RoomID>436233</RoomID>
<Name>
<Text text="Premium King Room - Non-Smoking" language="en"/>
<Text text="Chambre de le Roi Premium - Pas de Fumeurs" language="fr"/>
</Name>
<!-- Room can accommodate 4 and bundle is for 4 -->
<Capacity>4</Capacity>
<PhotoURL>
<URL>http://www.foo.com/static/bar/imageKing.jpg</URL>
<Caption>
<Text text="A bright and breezy way to enjoy your mornin'
cuppa tea." language="en"/>
<Text text="Une façon lumineuse et aérée pour profiter
de votre journée tasse de thé." language="fr"/>
</Caption>
</PhotoURL>
</RoomData>
<!-- Can be reused by multiple Room Bundles -->
<PackageData>
<PackageID>P54321</PackageID>
<Occupancy>2</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="7"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
<PackageData>
<PackageID>P12345</PackageID>
<Occupancy>4</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="1"
refundable_until_time="18:00:00"/>
<BreakfastIncluded/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
</PropertyDataSet>
<!-- Efficient method of defining Room Bundles -->
<!-- Part 2: Reference RoomData and PackageData through ID -->
<Result>
<Property>180054</Property>
<Checkin>2017-10-07</Checkin>
<Nights>2</Nights>
<!-- Base Room Bundle -->
<RoomBundle>
<RoomID>060773</RoomID>
<PackageID>P54321</PackageID>
<Baserate currency="USD">199.99</Baserate>
<Tax currency="USD">25.12</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>060773-P54321</RatePlanID>
</RoomBundle>
<!-- Premium Room Bundle -->
<RoomBundle>
<RoomID>436233</RoomID>
<PackageID>P12345</PackageID>
<!-- Price for 4 ("occupancy") -->
<Baserate currency="USD">298.88</Baserate>
<Tax currency="USD">42.12</Tax>
<OtherFees currency="USD">10.00</OtherFees>
<RatePlanID>060773-P12345</RatePlanID>
</RoomBundle>
<!-- Continue providing all available RoomBundle rates under matched
property for any other occupancies -->
</Result>
</Transaction>
Doluluk ve kapasite
Oda paketlerini tanımlarken doluluk ve kapasite arasındaki farkı anlamanız gerekir:
- Doluluk
- Bir Oda Paketinin uygulanması amaçlanan konuk sayısıdır. Örneğin, "Balayı Paketi" için doluluk 2'dir. Bir paketin doluluk değerini,
<PackageData>
veya<RoomBundle>
öğelerinin<Occupancy>
alt öğesini kullanarak ayarlarsınız. - Kapasite
- Bir odada fiziksel olarak konaklayabilecek kişilerin maksimum sayısıdır. Bir odanın kapasitesi her zaman doluluk değerine eşit veya bundan yüksektir. Örneğin, otelinizdeki "Balayı Süiti" odasının maksimum kapasitesi altı kişi olabilir ancak paket fiyatını iki konuk için belirlersiniz. Paket kapasitesinin değerini,
<RoomData>
öğesinin<Capacity>
alt öğesini kullanarak ayarlarsınız.
Bir Oda Paketi için fiyat belirlerken, pakette amaçlanan konuk sayısı (paketin <Occupancy>
öğesinde belirtilen değer) için fiyat vermeniz gerekir. <Occupancy>
değeri 2 olarak ayarlanırsa bu paketteki fiyat 2 kişi için geçerli olmalıdır. <Occupancy>
öğesini dört konuk olarak ayarlayıp paketin fiyatını iki konuk için ayarlayamazsınız.
Paylaşılan odalar
Oda Paketleri'nde Doluluk ve Kapasite değerlerini ortak oda konaklamalarında (ör. hostel) fiyat belirlemek için de kullanırsınız. Örneğin, 8 yataklı bir yatakhanenin kişi başı fiyatını ayarlamak için Doluluk değerini1
ve Kapasite değerini 8
olarak belirlemeli ve <RoomData>
adında bu şekilde tanımlamalısınız. Örneğe bakın.
Oda Paketlerini Güncelle
Bu bölümde, artık kullanılmayan bir Oda Paketinin nasıl kaldırılacağı ve mevcut bir Oda Paketinin fiyatının nasıl güncelleneceği açıklanmaktadır.
Oda paketini kaldırma
Oda Paketlerini kaldırma şekli, otel fiyatlarından farklıdır.
Bir oda veya seyahat planı kombinasyonunu envanterden kaldırmak için <Result>
öğesinin <Baserate>
değerini -1
olarak ayarlayın. Belirli bir oda veya seyahat planının Oda Paketini kaldırmak için Transaction mesajında <Result>
blokundan <RoomBundle>
öğesini kaldırın.
Veri feed'lerinizdeki Oda Paketleri bir grup olarak kabul edilir. Bu paketler, 0 ila onlarca pakettir. Oda Paketlerini Google'a gönderdiğinizde geçerli ve eksiksiz grubu gönderirsiniz. Önceden kullanılabilen bir paketi kullanılamaz olarak işaretlemek için tek bir Oda Paketinin değerlerini değiştirmezsiniz. En son Transaction mesajında bulunan paket grubu, geçerli grubun yerini alır.
Örneğin, A, B, C ve D paketleri olsun. Önce A, B, C ve D oda paketleri grubunu tanımlayan bir mesaj gönderirsiniz. Daha sonra, B paketi tükenirse tüm grubu yalnızca A, C ve D paketleriyle yeniden gönderirsiniz. Tüm Oda Paketleri tükenirse boş bir Oda Paketi grubu gönderin.
Fiyat düzenlemeleri
Bir oda paketinin fiyatını değiştirmek için <Result>
öğesinde yeni <Baserate>
değerini ayarlayın.
Transaction mesajlarınızda <Result>
blokunda bir odayı/seyahat planını her güncellediğinizde, her <Result>
için mevcut Oda Paketlerini içeren tam bir grup dahil etmeniz gerekir. Google, mevcut Oda Paketleri grubunu yeni grupla değiştirir. <Result>
öğesine herhangi bir Oda Paketi dahil etmezseniz Google, ilgili oda veya seyahat planı için tüm Oda Paketlerini kaldırır.
Meta veri güncellemeleri
Oda Paketi meta verilerini Google'dan gelen bir <Query>
mesajına yanıt vererek güncellersiniz.
Bir Sorgu mesajına, belirtilen oteller için oda ve paket meta verilerini tanımlayan bir Transaction mesajıyla yanıt verirsiniz. Daha fazla bilgi için Sorgu Mesajları bölümüne bakın.