İstekler
Söz dizimi
OTA_HotelRateAmountNotifRQ
mesajında aşağıdaki söz dizimi kullanılır:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="message_ID"
TimeStamp="timestamp"
Version="3.0"
NotifType="[Overlay|Delta|Remove]"
NotifScopeType="[ProductRate]">
<POS>
<Source>
<RequestorID ID="partner_key"/>
</Source>
</POS>
<RateAmountMessages HotelCode="HotelID">
<RateAmountMessage>
<StatusApplicationControl Start="YYYY-MM-DD"
End="YYYY-MM-DD"
Mon="boolean_value"
Tue="boolean_value"
Weds="boolean_value"
Thur="boolean_value"
Fri="boolean_value"
Sat="boolean_value"
Sun="boolean_value"
InvTypeCode="RoomID"
RatePlanCode="PackageID"
RatePlanType="[26]" />
<Rates>
<Rate>
<BaseByGuestAmts>
<BaseByGuestAmt AmountBeforeTax="float"
AmountAfterTax="float"
CurrencyCode="currency"
NumberOfGuests="integer"/>
</BaseByGuestAmts>
<AdditionalGuestAmounts>
<AdditionalGuestAmount Amount="float"
AgeQualifyingCode="[10|8]"
MaxAge="integer"/>
</AdditionalGuestAmounts>
</Rate>
</Rates>
</RateAmountMessage>
</RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>
Öğeler ve özellikler
OTA_HotelRateAmountNotifRQ
mesajı aşağıdaki öğelere sahiptir ve
özellikler:
Öğe / @Özellik | Yineleme sayısı | Tür | Açıklama |
---|---|---|---|
OTA_HotelRateAmountNotifRQ | 1 | Complex element | Ücret mesajının kök öğesidir. |
OTA_HotelRateAmountNotifRQ / @xmlns | 0..1 | string (URI) | XML ad alanıdır. |
OTA_HotelRateAmountNotifRQ / @EchoToken | 1 | string | Bu istek mesajının benzersiz tanımlayıcısıdır. Bu değer döndürülür
bu mesajdan yararlanabilirsiniz. a-z , A-Z , 0-9 , _ (underscore) ve - (dash) karakterlerine izin verilir. |
OTA_HotelRateAmountNotifRQ / @TimeStamp | 1 | DateTime | Bu mesajın oluşturulma tarihi ve saati. |
OTA_HotelRateAmountNotifRQ / @Version | 1 | decimal | OpenTravel mesaj sürümüdür. |
OTA_HotelRateAmountNotifRQ / @NotifType | 0..1 | enum | Her bir
Geçerli değerler şunlardır: Bu özelliklerin işleyiş şeklini öğrenmek için örnekler.
|
OTA_HotelRateAmountNotifRQ / @NotifScopeType | 0..1 | enum | Her bir anahtar kelime için Geçerli değerler şunlardır:
|
OTA_HotelRateAmountNotifRQ / POS | 0..1 | POS | Bu mesaj için iş ortağı hesabını belirten bir kapsayıcı (genellikle arka ucunuz aşağıdakiler için fiyat feed'leri sağlıyorsa kullanılır: birden fazla iş ortağı hesabı) açabilirsiniz. |
OTA_HotelRateAmountNotifRQ / POS / Source | 1 | Source | <POS> varsa gereklidir. Şunun için bir kapsayıcı:
<RequestorID> |
OTA_HotelRateAmountNotifRQ / POS / RequestorID | 1 | RequestorID | <POS> varsa gereklidir. İş ortağını tanımlar
hesap. |
OTA_HotelRateAmountNotifRQ / POS / RequestorID / @ID | 1 | string | Bu mesajın iş ortağı hesabıdır. Bu dize değeri
"İş ortağı anahtarı" değeri şurada listelenir:
Hotel Center'daki hesap ayarları sayfası.
Not: Birden fazla cihaz için feed sağlayan bir arka ucunuz varsa
bu değerin |
OTA_HotelRateAmountNotifRQ / RateAmountMessages | 1 | RateAmountMessages | Şu özelliklere sahip <RateAmountMessage> öğelerinden oluşan bir koleksiyon:
Ücretleri tanımlayabileceksiniz. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / @HotelCode | 1 | string | Tesisin benzersiz tanımlayıcısıdır. Bu değer, <id> kullanılarak belirtilen otel kimliği inç Otel'deki <listing> öğesi Feed Listele. Otel Kimliği, Hotel Center'da da listelenir. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage | 1..n | RateAmountMessage | Oda fiyatı (oda türü ve ücreti) için fiyat belirlemek üzere kullanılan kapsayıcıdır. farklı plan kombinasyonunda) belirir. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl | 1 | StatusApplicationControl | Oda türü tanımlayıcılarının yanı sıra tarih aralığını tanımlar
(InvTypeCode ) ve ücret planı (RatePlanCode ). |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Start | 1 | Date | Başlangıç tarihi (tesisin bulunduğu saat dilimine göre), seçin. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @End | 1 | Date | Tesisin bulunduğu saat dilimine göre, bitiş tarihi
seçin. start değerine eşit veya değerden büyük olmalıdır.
start ve end eşitse güncelleme geçerli olur
15.000 oldu. Google'ın üç yıla kadar verileri desteklediğini unutmayın. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Mon | 0..1 | boolean | Açıkça dahil etmek için true veya 1 olarak ayarlayın
Pazartesi günleri.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Tue | 0..1 | boolean | Açıkça dahil etmek için true veya 1 olarak ayarlayın
Salı günleri.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Weds | 0..1 | boolean | Açıkça dahil etmek için true veya 1 olarak ayarlayın
Çarşamba günleri.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Thur | 0..1 | boolean | Açıkça dahil etmek için true veya 1 olarak ayarlayın
Perşembe günleri.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Fri | 0..1 | boolean | Açıkça dahil etmek için true veya 1 olarak ayarlayın
Cuma günleri.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sat | 0..1 | boolean | Açıkça dahil etmek için true veya 1 olarak ayarlayın
Cumartesi günleri.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sun | 0..1 | boolean | Açıkça dahil etmek için true veya 1 olarak ayarlayın
Pazar günleri.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @InvTypeCode | 1 | string | Envanterin benzersiz tanımlayıcısıdır (oda türü). Bu değer,
Transaction (Tesis Verileri) mesajında <RoomID> adresine. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanCode | 1 | string | Ücret planının benzersiz tanımlayıcısıdır. Bu tanımlayıcı,
İşlemde <PackageID> (Tesis Verileri)
mesajını alırsınız. Ücret planı daha ayrıntılı şekilde tanımlanır ve
<StatusApplicationControl> içinde her ikisinde de
<OTA_HotelRateAmountNotifRQ> ve
<OTA_HotelAvailNotifRQ> ileti. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanType | 0..1 | string | Geçerli olan ARI fiyatlandırma modelinin türünü belirten tanımlayıcı.
bu fiyatlandırma güncellemesinde geçerlidir. Bu, yalnızca
KS tabanlı fiyatlandırma modeli kullanılırken 26 değerine ayarlanır. Hariç tutulanlar
tarih başına fiyatlandırma olduğunu gösterir.
güncelleyin. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates | 0..1 | Rates | <Rate> öğesi koleksiyonunun kapsayıcısıdır. Eğer
NotifType , "Remove" değerindedir, bu öğe şunları içermemelidir
belirtilmelidir. Aksi takdirde, bu öğe tam olarak bir kez belirtilmelidir. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate | 1 | Rate | <BaseByGuestAmts> koleksiyonunun kapsayıcısı
öğeler. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @RateTimeUnit | 0..1 | String | Konaklama süresinin belirtildiği birimdir. Desteklenen tek
değeri "Day" olduğu için konaklama süresi şu şekilde olacak:
gün olarak belirtilir.
KS tabanlı fiyatlandırmayı kullanmak için:
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @UnitMultiplier | 0..1 | Integer | Şunun uzunluğunu oluşturan RateTimeUnits sayısı:
bu ücretle kalın.
Örneğin, Bu KS tabanlı fiyatlandırmayı kullanmak için:
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts | 1 | BaseByGuestAmts | Taban ücret koleksiyonunun kapsayıcısıdır. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt | 1..n | BaseByGuestAmt | Belirtilen para biriminde oda fiyatlarını belirtir. Fiyat,
birden fazla <BaseByGuestAmt> kullanarak kişi başına kişi sayısı
öğeleri (her biri NumberOfGuests için farklı değere sahip olmalıdır).
Aksi takdirde maksimum kişi sayısı için bu fiyat geçerli olur.
NumberOfGuests tarafından tanımlanıyor. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountBeforeTax | 0..1 | float |
Vergiler ve ücretler hariç oda fiyatının günlük fiyatıdır. Hem Promosyonları kullanıyorsanız
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountAfterTax | 0..1 | float | Geçerli vergiler ve
daha fazla bilgi edineceksiniz. AmountAfterTax belirtilirse mülk başına ayırın
<TaxFeeInfo> mesajın gönderilmesi gerekmiyor. Bu
özelliği, AmountBeforeTax ile birlikte kullanılabilir.
Böylece belirli bir bölgedeki kullanıcılara gösterilebilecek taban ve toplam
belirli bölgelerde geçerli olur.
Uyarı: Promosyon kullanıyorsanız
Not: |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @CurrencyCode | 1 | enum | Belirli bir para biriminin ISO 4217 (3) alfa karakter kodudur.
Desteklenenler listesine para birimleri için geçerli değildir. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @NumberOfGuests | 0..1 | integer | Bu ücretle konaklayabilecek maksimum konuk sayısıdır.
Sağlanmazsa varsayılan olarak 2 konuk kabul edilir.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts | 0..1 | AdditionalGuestAmounts | Ek konuklar için alınan ücretlerin bulunduğu kapsayıcıdır.
Ek konuk veya çocuk ücretleri varsa bu söz dizimi yararlıdır
değişiklik gösterebilir. Daha verimli
Örneğin, 1 ve 2 için taban ücretlerin belirtildiğini varsayalım kullanılabilir.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount | 0..n | AdditionalGuestAmount | Konuk türüne göre fiyatları belirtir.
AgeQualifyingCode ve varsa konuğun yaşı
MaxAge ile belirtilir.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @AgeQualifyingCode | 1 | enum | Yetişkin veya çocuk olmak üzere ek konuk türünü tanımlar. Geçerli
şunlardır:
Aşağıdaki durumlarda |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @MaxAge | 0..1 | integer | Aşağıdaki durumlarda MaxAge belirtilmelidir
AgeQualifyingCode 8 . Farklı bir değer olmalıdır
AgeQualifyingCode değeri 10 olduğunda belirtilir.
Birden çok çocuk yaş grubu, ayrı
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @Amount | 1 | float | Her bir öğe için taban fiyata eklenen vergi ve ücretlerden önceki tutar
ek konuk.
Yolcu sayısına göre belirlenen vergiler ve ücretler yaşlar;
|
Örnekler
Bu bölümde, aşağıdakilerin nasıl yapılacağını vurgulayan kod örnekleri sunulmaktadır:
- Taban ücretler ve toplam ücretleri ayarlama
- Fiyat ekleme, yer paylaşımlı fiyatlar ve kaldırma
- Ek davetli tutarları ekleme, yer paylaşımlı gösterimler ve kaldırma işlemleri
- KS tabanlı fiyatlar ayarlama
- KS tabanlı fiyatlar ekleme, yer paylaşımlı fiyatlar ve kaldırma
add
, overlay
veya remove
değerlerini ayarladığınızda tarih aralıkları
aynı ya da farklı olanları ifade eder. Örneğin,
olarak, Aralık tatilleri için yalnızca birkaç hafta olarak ayarlamak üzere overlay
"Ücret ekleme" için ayarlanan aralığın tamamı mesajını alırsınız. Bu işlemle, doluluk oranı
yalnızca bu dönem için geçerlidir.
Tarihe göre fiyatlandırma
Belirli bir oda ve ücret planı için kişi başı en fazla 50 doluluk ücreti olabilir. Tüm doluluk değerleri için fiyatlar aynıysa fiyatı zorunlu olan maksimum doluluk değeri. Bu şekilde Google, daha düşük doluluk oranı için de aynı taban ücret alınır.
Taban ücretler ve toplam ücretleri ayarlama
1. Örnek
Varsayılan kişi sayısı (çift) için taban ücrettir (vergi veya ücret hariç). Burada
tesise ilişkin vergi ve ücretler,
<TaxFeeInfo>
mesaj. Taban ücret daha yüksek
belirli bölgelerden arama yapan kullanıcılar için
daha belirgin
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-23" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" CurrencyCode="USD"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
2. Örnek
Varsayılan kişi sayısı (çift) için taban ve toplam ücrettir. Bu modelde vergiler
ve ücretler <TaxFeeInfo>
kullanılarak ayrı olarak tanımlanmamalıdır.
mesaj. Taban ücret, şuradan arama yapan kullanıcılar için daha belirgin olacak:
belirli bölgelerde geçerli olur.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-23" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" AmountAfterTax="110.00" CurrencyCode="USD"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
3. Örnek
Birden fazla kişi için toplam ücret (vergi ve ücretler dahil). Bu modelde
vergiler ve ücretler, <TaxFeeInfo>
kullanılarak ayrı olarak tanımlanmamalıdır
mesaj.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-23" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountAfterTax="100.00" CurrencyCode="USD" NumberOfGuests="1"/> <BaseByGuestAmt AmountAfterTax="110.00" CurrencyCode="USD" NumberOfGuests="2"/> <BaseByGuestAmt AmountAfterTax="120.00" CurrencyCode="USD" NumberOfGuests="3"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
4. Örnek
Şu kapsamlarda birden fazla oda türü ve ücret planı için taban ve toplam ücret: kullanabilirsiniz.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-23" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" AmountAfterTax="110.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> <RateAmountMessage> <StatusApplicationControl Start="2020-05-01" End="2020-05-31" InvTypeCode="RoomID_2" RatePlanCode="PackageID_2"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="200.00" AmountAfterTax="220.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
Fiyat ekleme, yer paylaşımlı fiyatlar ve kaldırma
Oda türü ve paket olmak üzere 5.000 ürün sınırı vardır
kombinasyonlar halinde sıralanabilir. Overlay
veya Remove
bildirimini kullanma
farklı türlerde yapılır.
Ücret ekleme
Şu tarihler için kişi başı ücret eklemek üzere NotifType
değerini Delta
olarak ayarlayın:
20.10.2021 ile 31.12.2021 tarihleri arasında RoomID_1 ve PackageID_1. Lütfen
Google, üç yıla kadar verileri destekler.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Delta" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" CurrencyCode="USD" NumberOfGuests="1"/> <BaseByGuestAmt AmountBeforeTax="110.00" CurrencyCode="USD" NumberOfGuests="2"/> <BaseByGuestAmt AmountBeforeTax="120.00" CurrencyCode="USD" NumberOfGuests="3"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
Ücretlerin üstüne yazma
Kişi başı tüm kişileri silmek için NotifType
değerini Overlay
olarak ayarlayın
2021-10-20 ile 31.12.2021 tarihleri arasında RoomID_1 ve PackageID_1 ücretleri
ve bunları yeni belirtilen kişi başı ücretlerle değiştirin.
Örneğin, bu mesaj "Fiyat ekle" seçeneğinden sonra gönderilmişse mesajın, 1, 2 ve 3 numaralı doluluk oranı silinir ve yalnızca 1 numaralı yeni kişi için fiyat silinir. saklanacağını gösterir. Daha kısa bir tarih aralığı da ayarlayabilirsiniz. (ör. 2021.12.2021 ve 31.12.2021) için nüfusun yalnızca bir kısmını belirli tarihlerdeki (örneğin, tatiller) fiyatlar.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Overlay" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="200.00" CurrencyCode="USD" NumberOfGuests="1"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
Fiyatları kaldırma
Kişi başı tüm kişileri silmek için NotifType
değerini Remove
olarak ayarlayın
2021-10-20 ile 31.12.2021 tarihleri arasında RoomID_1 ve PackageID_1 ücretleri.
Örneğin, bu mesaj diğer örnekteki ikisinden sonra gönderilmişse kişi başı ücret bilgileri kaydedilmez.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Remove" NotifScopeType="ProductRate">> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
Ek davetli tutarları ekleme, yer paylaşımlı olarak ödeme yapma ve bu tutarları kaldırma
Tutar ekle
Şuna taban ücretler eklemek için NotifType
değerini Delta
olarak ayarlayın:
RoomID_1 ve oda kimliği için ek konuk tutarları
20.10.2021 ile 31.12.2021 tarihleri arasında ID_1 numaralı paket.
Ek konuk tutarları, taban ücrete ek olarak uygulanır. Bu tutar, kullanıcı aramasındaki doluluğa göre belirlenir. Belirtilen kullanıcı doluluk, RoomID_1 kapasitesinin üzerinde olmalıdır.
Bu örnekte, ek davetlilerin tutarları şu şekilde uygulanacaktır:
- 0-10 yaş aralığındaki çocuklar için (her biri dahil) 5 ABD doları.
- 11-17 yaş aralığındaki çocuklar için 10 ABD doları (dahil).
- Yetişkinler için 20 ABD doları.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Delta" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" CurrencyCode="USD" NumberOfGuests="1"/> <BaseByGuestAmt AmountBeforeTax="110.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> <AdditionalGuestAmounts> <AdditionalGuestAmount Amount="5.00" AgeQualifyingCode="8" MaxAge="10" /> <AdditionalGuestAmount Amount="10.00" AgeQualifyingCode="8" MaxAge="17" /> <AdditionalGuestAmount Amount="20.00" AgeQualifyingCode="10" /> </AdditionalGuestAmounts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
Yer paylaşımlı tutarlar
Kişi başı tüm kişileri silmek için NotifType
değerini Overlay
olarak ayarlayın
RoomID_1 ve PackageID_1 için ücretler ve tüm ek konuk tutarları
2021-10-20-31.2021 tarihleri arasında değişen
kişi başı ücretleri ve ek tutarları belirtmenizi sağlar.
Örneğin, bu mesaj "Fiyat ekle" seçeneğinden sonra gönderilmişse mesajın, 1. ve 2. taban doluluk silinecek ve yalnızca yeni taban fiyat silinecek. doluluk 1 fiyatı saklanır. Önceki ek davetli grubu tutar silinir ve yalnızca yeni tutarlar grubu saklanır. Ek konuk miktarlarında artık taban ücret. Bu güncellemeden sonra başka davetli olmadığını unutmayın çocuklar için belirlenen ücretler.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Overlay" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="200.00" CurrencyCode="USD" NumberOfGuests="1"/> </BaseByGuestAmts> <AdditionalGuestAmounts> <AdditionalGuestAmount Amount="30.00" AgeQualifyingCode="10" /> </AdditionalGuestAmounts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
Tutarları kaldır
Kişi başı tüm kişileri silmek için NotifType
değerini Delete
olarak ayarlayın
RoomID_1 ve PackageID_1 için taban ücretler ve tüm ek konuk tutarları
geçmiş 2021.
Örneğin, bu mesaj diğer örnekteki ikisinden sonra gönderilmişse konuklara özel taban ücret veya ek konuk tutarları dahil olmak üzere saklanabilir.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Remove" NotifScopeType="ProductRate">> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
Yalnızca ek davetli tutarlarını kaldır
NotifType
değerini, boş bir değer olacak şekilde Delta
olarak ayarlayın
Tümünü silmek için <AdditionalGuestAmounts>
öğesi
RoomID_1 ve PackageID_1 için ek konuk tutarları
2021-10-20 ve 31.12.2021 tarihleri arasında taban fiyatlar.
Örneğin, bu mesaj diğer örnekteki ikisinden sonra gönderilmişse yalnızca taban tutarlar depolanır.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Delta" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <AdditionalGuestAmounts/> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
KS tabanlı fiyatlandırma
KS tabanlı ücretler ayarlama
1. Örnek
18.05.2020 tarihinden itibaren 1, 2 ve 3 gecelik konaklama için ücretleri ayarlayın. İlgili içeriği oluşturmak için kullanılan Bu örnekte 1, 2 ve 3 gecelik konaklamaların toplam ücreti 100 TL olur. Sırasıyla 180 ABD doları ve 240 ABD doları.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-18" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1" RatePlanType="26"/> <Rates> <Rate UnitMultiplier="1" RateTimeUnit="Day"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> <Rate UnitMultiplier="2" RateTimeUnit="Day"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="90.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> <Rate UnitMultiplier="3" RateTimeUnit="Day"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="80.00" CurrencyCode="USD" NumberOfGuests="2" /> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
KS tabanlı fiyatlar ekleme, yer paylaşımlı fiyatlar ve kaldırma
Konaklama süresi ekleyin
KS tabanlı fiyatlandırmada Delta
işlemi, ücretlerin
aşağıda belirtilen check-in tarih aralıkları için kademeli olarak güncellenir
<StatusApplicationControl>
ve tüm konaklama süreleri için
her alt Rate
öğesinin
UnitMultiplier
.
Geçerli her giriş tarihi ve konaklama süresi için doluluk oranı ücretler belirtilmelidir.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0" NotifType="Delta" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-18" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1" RatePlanType="26"/> <Rates> <Rate UnitMultiplier="3" RateTimeUnit="Day"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="80.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
Bindirme konaklama süreleri
KS tabanlı fiyatlandırmayla Overlay
işlemi
ürünün tüm konaklama süreleri ve giriş tarihleri için fiyatların yerine geçer.
<StatusApplicationControl>
olarak belirtilen aralık.
Bu mesaj, tesisteki tüm konaklama süreleri için kişi başı ücretlerin Belirtilen varış tarihleri kaldırılacak ve yerine çift kişilik yer alacak yalnızca konaklama süresi 3 için tanımlanan ücrettir.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0" NotifType="Overlay" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-18" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1" RatePlanType="26"/> <Rates> <Rate UnitMultiplier="3" RateTimeUnit="Day"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="80.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
Konaklama sürelerini kaldırma
KS tabanlı fiyatlandırmada Remove
işlemi, ücretleri kaldırır
konaklama süresi ve check-in tarihi aralığı için
<StatusApplicationControl>
.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Remove" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1" RatePlanType="26"/> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
Yanıtlar
Söz dizimi
OTA_HotelRateAmountNotifRS
mesajında aşağıdaki söz dizimi kullanılır:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
TimeStamp="timestamp"
EchoToken="echo_token"
Version="3.0">
<!-- Either Success or Errors will be populated. -->
<Success/>
<Errors>
<Error Type="12" Status="NotProcessed" ShortText="issue_code">issue_description</Error>
</Errors>
</OTA_HotelRateAmountNotifRS>
Öğeler ve özellikler
OTA_HotelRateAmountNotifRS
mesajında şunlar var:
öğeler ve özellikler:
Öğe / @Özellik | Yineleme sayısı | Tür | Açıklama |
---|---|---|---|
OTA_HotelRateAmountNotifRS | 1 | Complex element | Müsaitlik durumu mesajı yanıtının kök öğesidir. |
OTA_HotelRateAmountNotifRS / @TimeStamp | 1 | DateTime | Bu mesajın oluşturulma tarihi ve saati. |
OTA_HotelRateAmountNotifRS / @EchoToken | 1 | string | İlişkilendirilmiş öğedeki benzersiz tanımlayıcı
OTA_HotelRateAmountNotifRQ mesaj. |
OTA_HotelRateAmountNotifRS / Success | 0..1 | Success | OTA_HotelRateAmountNotifRQ mesajının şu olduğunu belirtir:
başarıyla işlendi.
|
OTA_HotelRateAmountNotifRS / Errors | 0..1 | Errors | işlenirken karşılaşılan bir veya daha fazla sorun için bir kapsayıcı
OTA_HotelRateAmountNotifRQ mesaj.
|
OTA_HotelRateAmountNotifRS / Errors / Error | 1..n | Error | Dosya işlenirken karşılaşılan hatanın açıklaması
OTA_HotelRateAmountNotifRQ mesaj. Bunlarla ilgili ayrıntılar
hataları Feed Durumu Hata Mesajları'nda bulunabilir. |
OTA_HotelRateAmountNotifRS / Errors / Error / @Type | 1 | integer |
hatası. Yalnızca 12 (Processing exception) değeri kullanılır. |
OTA_HotelRateAmountNotifRS / Errors / Error / @Code | 1 | integer | Hatayla ilişkili OpenTravel Alliance ERR (Hata Kodu).
Yalnızca 450 (Unable to process) değeri kullanılır. |
OTA_HotelRateAmountNotifRS / Errors / Error / @Code | 1 | enum | Orijinal isteğin durumu. Yalnızca
NotProcessed kullanılıyor. |
OTA_HotelRateAmountNotifRS / Errors / Error / @ShortText | 1 | string | Sorunun Google tanımlayıcısı. Bu hatalarla ilgili ayrıntılar Feed Durumu Hata Mesajları'nda bulabilirsiniz. |
Örnekler
Başarılı
Aşağıda başarıyla işlenmiş bir OTA_HotelRateAmountNotifRQ mesajı.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0"> <Success/> </OTA_HotelRateAmountNotifRS>
Hatalar
Aşağıda, bir OTA_HotelRateAmountNotifRQ iletisine yanıt olarak işlendi.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0"> <Errors> <Error Type="12" Code="450" Status="NotProcessed" ShortText="8001">Example</Error> </Errors> </OTA_HotelRateAmountNotifRS>