OTA_HotelRateAmountNotifRQ

İ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 <RateAmountMessage>

Geçerli değerler şunlardır:

Bu özelliklerin işleyiş şeklini öğrenmek için örnekler.

  • Overlay: Tümünü sil Oda türü, ücret planı ve tarihler için kişi başı fiyatlar <StatusApplicationControl> ve bunları yeni oranlarla değiştirin.
  • Remove: Mevcut tüm öğeleri sil Oda türü, ücret planı ve tarihler için kişi başı fiyatlar <StatusApplicationControl> içinde belirtilir.
  • Delta: (NotifType ise varsayılandır) bir fiyat belirtilmediyse) Şu tarih için kişi başı ücret sayısını ekleyin veya güncelleyin: belirtilen oda türünü, ücret planını ve tarihlere <StatusApplicationControl>.
OTA_HotelRateAmountNotifRQ / @NotifScopeType 0..1 enum

Her bir anahtar kelime için NotifType <RateAmountMessage>.

Geçerli değerler şunlardır:

  • ProductRate: (NotifScopeType ise varsayılandır) belirtilmedi) NotifType, şunlar için geçerlidir: ürünler: oda türü kombinasyonları (InvTypeCode) ve ücret planı (RatePlanCode) hakkında daha fazla bilgi edinin.
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 partner ile eşleşmesi gerekir Transaction (Tesis Verileri) mesajınızın ve ID özellik değeri <RequestorID> öğesi Aynı için <OTA_HotelAvailNotifRQ> mesaj hesap.

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.

true olarak ayarlanırsa haftanın diğer günleri açıkça true olarak ayarlanırsa hariç tutulur (geçerlilik durumunda Start ve End).

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.

true olarak ayarlanırsa haftanın diğer günleri açıkça true olarak ayarlanırsa hariç tutulur (geçerlilik durumunda Start ve End).

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.

true olarak ayarlanırsa haftanın diğer günleri açıkça true olarak ayarlanırsa hariç tutulur (geçerlilik durumunda Start ve End).

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.

true olarak ayarlanırsa haftanın diğer günleri açıkça true olarak ayarlanırsa hariç tutulur (geçerlilik durumunda Start ve End).

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.

true olarak ayarlanırsa haftanın diğer günleri açıkça true olarak ayarlanırsa hariç tutulur (geçerlilik durumunda Start ve End).

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.

true olarak ayarlanırsa haftanın diğer günleri açıkça true olarak ayarlanırsa hariç tutulur (geçerlilik durumunda Start ve End).

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.

true olarak ayarlanırsa haftanın diğer günleri açıkça true olarak ayarlanırsa hariç tutulur (geçerlilik durumunda Start ve End).

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: RateTimeUnit ve UnitMultiplier olmalıdır belirtiliyor. Aksi takdirde her ikisi de belirtilmemelidir.

OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @UnitMultiplier 0..1 Integer Şunun uzunluğunu oluşturan RateTimeUnits sayısı: bu ücretle kalın.

Örneğin, RateTimeUnits değeri "Day" ise UnitMultiplier/5, belirtilen ücretleri gösterir bu Rate nesnesinin altındaki değer, 5 gecelik konaklamanın her gecesi için geçerlidir.

Bu Rate kapsamında belirtilen doluluk oranları nesne UnitMultiplier ile çarpılır (konaklama süresi) değerini girin.

KS tabanlı fiyatlandırmayı kullanmak için: RateTimeUnit ve UnitMultiplier olmalıdır belirtiliyor. Aksi takdirde her ikisi de belirtilmemelidir.

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 AmountBeforeTax hem de AmountAfterTax belirtilebilir. Eğer AmountBeforeTax belirtilmemiş, AmountAfterTax belirtilmelidir. Eğer AmountBeforeTax belirtilmiş ve AmountAfterTax belirtilmezse vergiler ve ücretler <TaxFeeInfo> mesajında belirtilmelidir.

Promosyonları kullanıyorsanız AmountBeforeTax öğesine indirim uygulanır; yüzde AmountAfterTax ürününe de indirimler uygulanır. Bu tarihten itibaren bazı vergi yapılarıyla uyumlu olmadığından, yalnızca AmountBeforeTax değerini burada belirtip Vergi ve ücretleri belirtmek için <TaxFeeInfo>.

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 AmountAfterTax kullanmanızı önerme tutar. İndirimleri kullanmak istiyorsanız vergi ve ücretleri şu tarihe kadar belirtin: <TaxFeeInfo> mesajı kullanılıyor. İndirimleriniz: daha sonra AmountBeforeTax tutarlarına uygulanır.

Not: AmountBeforeTax ise belirtilmemişse AmountAfterTax belirtilmelidir.

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.

<AdditionalGuestAmounts> çocuklar için yapılan ödemeleri içerir, NumberOfGuests yalnızca şunu belirtir: yetişkinlere uygun Eğer <AdditionalGuestAmounts> ise belirtilmemişse veya çocuklar için ücret içermiyorsa NumberOfGuests, toplam kişi sayısını gösterir dahil olması gerekir.

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 ExtraGuestCharges. Bu tutarlar mülkte statik olarak tanımlanabiliyorsa bir mesaj görürsünüz. seviyesinde olmalıdır.

Ek davetlilerin tutarları şu şekilde uygulanır:
  • Fiyat, taban doluluk oranına ek olarak uygulanır. Temel doluluk oranı, içinde belirtilen en yüksek doluluk oranıdır <BaseByGuestAmts>, şundan küçük veya şuna eşit: Kullanıcı aramasındaki yetişkin sayısı.
  • Bu boyutları, kullanıcı aramasındaki doluluk oranı kapasitesine kadar uzatılır.
  • <AdditionalGuestAmounts> daima değiştir yeni tutarlar için belirlenen ek tutarların NotifType, Delta veya Yer Paylaşımı'dır.
  • <AdditionalGuestAmounts> gönderilebilir yalnızca NotifType olduğunda taban ücretlerden bağımsız olarak Delta. <BaseByGuestAmts>belirtilmelidir NotifType Overlay olduğunda.
  • Şunu içeren boş bir <AdditionalGuestAmounts> öğesi: Delta olarak ayarlanan NotifType, mevcut öğeleri kaldırır ek tutar ödemeye başlayabilirsiniz.
  • Şu para birimi kullanılarak uygulanır: <BaseByGuestAmt>

Örneğin, 1 ve 2 için taban ücretlerin belirtildiğini varsayalım kullanılabilir.

  • Bir kullanıcı 3 yetişkin için arama yaptığında çift kişilik fiyat Taban ücret ve 1 konuk için ek konuk tutarı olarak seçilmelidir bir yetişkin içeriği uygulanır.
  • Kullanıcı 1 yetişkin ve 2 çocuk için arama yapıyorsa, Doluluk oranı, taban ücret olarak seçilir ve ayrıca iki alt öğe için de uygulanır.
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:
  • 10: Yetişkin.
  • 8: Çocuk.

AgeQualifyingCode, şu değer için 10 olarak ayarlanabilir: en fazla bir AdditionalGuestAmount öğesi seçin.

Aşağıdaki durumlarda MaxAge belirtilmelidir AgeQualifyingCode 8.

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.

MaxAge, 0 ile arasında bir tam sayı olmalıdır 17.

0 değeri belirtildiğinde çocuklar devre dışı bırakılır.

17 değerinden büyük değerler maksimum olarak kabul edilir kabul edilen 17 değeri.

Birden çok çocuk yaş grubu, ayrı AdditionalGuestAmount öğeleri. Yaş aralıkları: olması gerektiğini unutmayın.

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; <AgeBrackets> öğesi <TaxFeeInfo> mesaj.

Örnekler

Bu bölümde, aşağıdakilerin nasıl yapılacağını vurgulayan kod örnekleri sunulmaktadır:

ziyaret edin.

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.

<Success> veya <Errors> her iletide yer alır.

OTA_HotelRateAmountNotifRS / Errors 0..1 Errors işlenirken karşılaşılan bir veya daha fazla sorun için bir kapsayıcı OTA_HotelRateAmountNotifRQ mesaj.

<Success> veya <Errors> her iletide yer alır.

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>