Permintaan
Sintaksis
Pesan OTA_HotelRateAmountNotifRQ
menggunakan sintaksis berikut:
<?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>
Elemen dan atribut
Pesan OTA_HotelRateAmountNotifRQ
memiliki elemen dan
atribut:
Element / @Attribute | Kejadian | Jenis | Deskripsi |
---|---|---|---|
OTA_HotelRateAmountNotifRQ | 1 | Complex element | Elemen root untuk pesan tarif. |
OTA_HotelRateAmountNotifRQ / @xmlns | 0..1 | string (URI) | Namespace XML. |
OTA_HotelRateAmountNotifRQ / @EchoToken | 1 | string | ID unik untuk pesan permintaan ini. Nilai ini ditampilkan
dalam pesan respons. Karakter yang diizinkan adalah a-z , A-Z , 0-9 , _ (underscore) , dan - (dash) . |
OTA_HotelRateAmountNotifRQ / @TimeStamp | 1 | DateTime | Tanggal dan waktu pembuatan pesan ini. |
OTA_HotelRateAmountNotifRQ / @Version | 1 | decimal | Versi pesan OpenTravel. |
OTA_HotelRateAmountNotifRQ / @NotifType | 0..1 | enum | Jenis notifikasi yang akan diterapkan ke setiap
Nilai yang valid adalah: Untuk memahami cara kerja atribut ini, lihat contoh.
|
OTA_HotelRateAmountNotifRQ / @NotifScopeType | 0..1 | enum | Cakupan Nilai yang valid adalah:
|
OTA_HotelRateAmountNotifRQ / POS | 0..1 | POS | Penampung untuk menentukan akun partner untuk pesan ini (biasanya digunakan jika backend Anda menyediakan feed harga untuk beberapa akun partner). |
OTA_HotelRateAmountNotifRQ / POS / Source | 1 | Source | Wajib diisi jika <POS> ada. Container untuk
<RequestorID> . |
OTA_HotelRateAmountNotifRQ / POS / RequestorID | 1 | RequestorID | Wajib diisi jika <POS> ada. Menentukan partner
menggunakan akun layanan. |
OTA_HotelRateAmountNotifRQ / POS / RequestorID / @ID | 1 | string | Akun partner untuk pesan ini. Nilai string ini adalah
"Kunci partner" nilai yang tercantum di
Halaman setelan akun di Pusat Pengelolaan Hotel.
Catatan: Jika Anda memiliki backend yang menyediakan feed untuk beberapa
akun, nilai ini harus cocok dengan |
OTA_HotelRateAmountNotifRQ / RateAmountMessages | 1 | RateAmountMessages | Kumpulan elemen <RateAmountMessage> yang
menentukan tarif. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / @HotelCode | 1 | string | ID unik untuk properti. Nilai ini harus cocok dengan ID hotel yang ditentukan menggunakan <id> inci elemen <listing> di Hotel Mencantumkan Feed. ID Hotel juga tercantum di Pusat Pengelolaan Hotel. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage | 1..n | RateAmountMessage | Container untuk menetapkan harga berdasarkan tarif kamar (jenis dan tarif kamar kombinasi rencana di seluruh rentang tanggal). |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl | 1 | StatusApplicationControl | Menentukan rentang tanggal, serta ID jenis kamar
(InvTypeCode ) dan paket tarif (RatePlanCode ). |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Start | 1 | Date | Tanggal mulai (berdasarkan zona waktu properti), inklusif, dari rentang tanggal. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @End | 1 | Date | Tanggal akhir (berdasarkan zona waktu properti), inklusif, dari
rentang tanggal tertentu. Harus sama atau lebih besar dari nilai start .
Jika start dan end sama, update akan diterapkan
hingga tanggal tersebut. Perhatikan bahwa Google mendukung data hingga tiga tahun. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Mon | 0..1 | boolean | Tetapkan ke true atau 1 untuk menyertakan secara eksplisit
Senin.
Jika ditetapkan ke |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Tue | 0..1 | boolean | Tetapkan ke true atau 1 untuk menyertakan secara eksplisit
Selasa.
Jika ditetapkan ke |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Weds | 0..1 | boolean | Tetapkan ke true atau 1 untuk menyertakan secara eksplisit
Rabu.
Jika ditetapkan ke |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Thur | 0..1 | boolean | Tetapkan ke true atau 1 untuk menyertakan secara eksplisit
Kamis.
Jika ditetapkan ke |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Fri | 0..1 | boolean | Tetapkan ke true atau 1 untuk menyertakan secara eksplisit
Jumat.
Jika ditetapkan ke |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sat | 0..1 | boolean | Tetapkan ke true atau 1 untuk menyertakan secara eksplisit
Setiap hari Sabtu.
Jika ditetapkan ke |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sun | 0..1 | boolean | Tetapkan ke true atau 1 untuk menyertakan secara eksplisit
Minggu.
Jika ditetapkan ke |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @InvTypeCode | 1 | string | ID unik untuk inventaris (jenis kamar). Nilai ini memetakan
ke <RoomID> di pesan Transaksi (Data Properti). |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanCode | 1 | string | ID unik untuk paket tarif. ID ini dipetakan ke
<PackageID> dalam Transaksi (Data Properti)
untuk membuat pesan email baru. Paket tarif didefinisikan dan dirujuk lebih lanjut
di <StatusApplicationControl> di keduanya
<OTA_HotelRateAmountNotifRQ> dan
<OTA_HotelAvailNotifRQ> pesan. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanType | 0..1 | string | ID yang menunjukkan jenis model penetapan harga ARI yang
berlaku untuk pembaruan harga ini. Ini hanya boleh ditentukan, menggunakan atribut
nilai 26 , jika menggunakan model penetapan harga berbasis LOS. Pengecualian
atribut ini menunjukkan bahwa ini adalah harga per tanggal
memperbarui. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates | 0..1 | Rates | Container untuk kumpulan elemen <Rate> . Jika
NotifType adalah "Remove" , elemen ini tidak boleh
ditentukan. Jika tidak, elemen ini harus ditentukan tepat satu kali. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate | 1 | Rate | Container untuk kumpulan <BaseByGuestAmts>
yang kurang penting. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @RateTimeUnit | 0..1 | String | Unit yang ditentukan untuk panjang masa inap. Satu-satunya yang didukung
nilainya adalah "Day" , yang berarti lama menginap akan
yang ditentukan dalam hari.
Untuk menggunakan harga berdasarkan LOS,
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @UnitMultiplier | 0..1 | Integer | Jumlah RateTimeUnits yang menyusun panjang
menginap untuk tarif ini.
Misalnya, jika nilai Tarif jumlah tamu yang ditentukan dalam Untuk menggunakan harga berdasarkan LOS,
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts | 1 | BaseByGuestAmts | Container untuk kumpulan biaya dasar. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt | 1..n | BaseByGuestAmt | Menentukan harga kamar dalam mata uang yang ditentukan. Harganya bisa
per jumlah tamu menggunakan beberapa <BaseByGuestAmt>
masing-masing dengan nilai berbeda untuk NumberOfGuests .
Jika tidak, harga berlaku untuk jumlah maksimum tamu
ditentukan oleh NumberOfGuests . |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountBeforeTax | 0..1 | float |
Harga harian tarif kamar sebelum pajak dan biaya. Jika Anda menggunakan promosi,
diskon diterapkan ke |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountAfterTax | 0..1 | float | Harga harian tarif kamar setelah menyertakan pajak yang berlaku dan
biaya. Jika AmountAfterTax ditentukan, pisahkan per properti
<TaxFeeInfo> pesan tidak perlu dikirim. Ini
dapat digunakan bersama dengan AmountBeforeTax
untuk memberikan tarif dasar dan total yang dapat ditampilkan kepada pengguna di
wilayah tertentu.
Peringatan: Jika Anda menggunakan promosi, kami sangat
sarankan untuk tidak menggunakan Catatan: Jika |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @CurrencyCode | 1 | enum | Kode karakter alfa ISO 4217 (3) untuk unit uang tertentu.
Lihat daftar yang didukung mata uang. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @NumberOfGuests | 0..1 | integer | Jumlah maksimum tamu yang dapat diakomodasi dengan tarif ini.
Jika tidak disediakan, setelan defaultnya adalah 2 tamu.
Perlu diketahui bahwa jika |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts | 0..1 | AdditionalGuestAmounts | Container untuk kumpulan biaya bagi tamu tambahan.
Sintaksis ini berguna jika ada tarif tamu atau anak tambahan
berubah berdasarkan tanggal. Pertimbangkan untuk menggunakan model
Misalnya, tarif dasar ditentukan untuk 1 dan 2 orang dewasa.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount | 0..n | AdditionalGuestAmount | Menentukan harga berdasarkan jenis tamu, yang ditentukan melalui
AgeQualifyingCode dan, jika berlaku, usia tamu
yang ditentukan melalui MaxAge .
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @AgeQualifyingCode | 1 | enum | Mendefinisikan jenis tamu tambahan, baik dewasa atau anak-anak. Berlaku
pilihannya adalah:
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @MaxAge | 0..1 | integer | MaxAge harus ditentukan saat
AgeQualifyingCode adalah 8 . Tidak boleh berupa
ditetapkan saat AgeQualifyingCode adalah 10 .
Menentukan nilai Nilai yang lebih besar dari Beberapa rentang usia anak dapat
ditentukan melalui saluran terpisah
Elemen |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @Amount | 1 | float | Jumlah sebelum pajak dan biaya ditambahkan ke tarif dasar untuk masing-masing
tamu tambahan.
Pajak dan biaya yang bergantung pada penghuni usia harus ditentukan melalui
elemen |
Contoh
Bagian ini memberikan contoh kode yang menyoroti cara:
- Menyiapkan tarif dasar dan tarif total
- Menambahkan, menempatkan, dan menghapus tarif
- Menambahkan, menempatkan, dan menghapus jumlah tamu tambahan
- Menyiapkan tarif berbasis LOS
- Menambahkan, menempatkan, dan menghapus tarif berbasis LOS
Jika Anda menetapkan nilai add
, overlay
, atau remove
, rentang tanggal dapat
sama atau berbeda tergantung
pada tujuan Anda. Misalnya, Anda dapat menggunakan
overlay
untuk menetapkan hanya beberapa minggu untuk hari libur bulan Desember, bukan
seluruh rentang yang ditetapkan untuk "Tambahkan tarif" untuk membuat pesan email baru. Ini akan menggantikan jumlah tamu
tarif hanya untuk periode ini.
Harga per tanggal
Untuk paket tarif dan kamar tertentu, dapat terdapat maksimal 50 tarif jumlah tamu per saat ini. Jika tarifnya sama untuk semua jumlah tamu, Anda cukup mengirimkan jumlah tamu maksimum dengan harga yang diperlukan. Dengan demikian, Google menyimpulkan bahwa hunian yang lebih rendah juga menerima tarif dasar yang sama.
Menyiapkan tarif dasar dan tarif total
Contoh 1
Tarif dasar (tanpa pajak atau biaya) untuk jumlah tamu default (dua). Di sini
pajak, dan biaya untuk properti harus ditentukan menggunakan
<TaxFeeInfo>
pesan. Tarif dasar akan lebih besar
terlihat bagi pengguna yang menelusuri
dari wilayah tertentu.
<?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>
Contoh 2
Tarif dasar dan total untuk jumlah tamu default (dua). Dalam model ini, pajak
dan biaya tidak boleh ditentukan secara terpisah menggunakan <TaxFeeInfo>
membuat pesan teks. Tarif dasar akan lebih terlihat bagi pengguna yang menelusuri dari
wilayah tertentu.
<?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>
Contoh 3
Tarif total (termasuk pajak dan biaya) untuk beberapa jumlah tamu. Pada model ini,
pajak dan biaya tidak boleh ditentukan secara terpisah menggunakan <TaxFeeInfo>
membuat pesan teks.
<?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>
Contoh 4
Tarif dasar dan total untuk beberapa jenis kamar dan paket tarif di seluruh rentang tanggal yang berbeda-beda.
<?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>
Menambahkan, menempatkan, dan menghapus tarif
Ada batas 5.000 produk—jenis kamar dan paket
kombinasi — per properti. Menggunakan notifikasi Overlay
atau Remove
untuk menghapus produk yang telah ditentukan sebelumnya.
Tambahkan tarif
Tetapkan NotifType
ke Delta
untuk menambahkan tarif per jumlah tamu untuk
RoomID_1 dan PackageID_1 antara 20-10-2021 dan 31-12-2021. Perlu diketahui bahwa
Google mendukung data hingga tiga tahun.
<?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>
Tarif overlay
Tetapkan NotifType
ke Overlay
untuk menghapus semua per jumlah tamu
tarif untuk RoomID_1 dan PackageID_1 antara 20-10-2021 dan 31-12-2021
dan menggantinya dengan tarif per jumlah tamu yang baru ditetapkan.
Misalnya, jika pesan ini dikirim setelah "Tambahkan tarif" Anda, tarif untuk jumlah tamu 1, 2, dan 3 yang akan dihapus, dan hanya jumlah tamu baru 1 kecepatan penyimpanan data akan disimpan. Anda juga dapat menetapkan rentang tanggal yang lebih pendek (misalnya: 20-12-2021 dan 31-12-2021) untuk menggantikan hanya sebagian jumlah tamu tarif pada tanggal tertentu, seperti hari libur.
<?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>
Hapus tarif
Tetapkan NotifType
ke Remove
untuk menghapus semua per jumlah tamu
tarif untuk RoomID_1 dan PackageID_1 antara 20-10-2021 dan 31-12-2021.
Misalnya, jika pesan ini dikirim setelah salah satu contoh lainnya pesan, tidak ada tarif per jumlah tamu yang akan disimpan.
<?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>
Menambahkan, menempatkan, dan menghapus jumlah tamu tambahan
Tambahkan jumlah
Tetapkan NotifType
ke Delta
untuk menambahkan tarif dasar untuk
jumlah tamu 1 dan 2, serta jumlah tamu tambahan, untuk RoomID_1 dan
PackageID_1 antara 20-10-2021 dan 31-12-2021.
Jumlah tamu tambahan akan diterapkan di atas tarif dasar yang akan ditentukan oleh jumlah tamu di penelusuran pengguna. Pengguna menentukan jumlah tamu harus dalam batas kapasitas RoomID_1.
Dalam contoh ini, jumlah tamu tambahan akan diterapkan sebagai:
- $5 untuk anak-anak dalam rentang usia 0 hingga 10 tahun (inklusif).
- $10 untuk anak-anak dalam rentang usia 11 hingga 17 tahun (termasuk).
- $20 untuk dewasa.
<?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>
Jumlah overlay
Tetapkan NotifType
ke Overlay
untuk menghapus semua per jumlah tamu
tarif dan semua jumlah tamu tambahan untuk RoomID_1 dan PackageID_1
antara 20-10-2021 dan 31-12-2021 dan menggantinya dengan
tarif per jumlah tamu yang ditentukan dan jumlah tambahan.
Misalnya, jika pesan ini dikirim setelah "Tambahkan tarif" Anda, tarif untuk jumlah tamu dasar 1 dan 2 akan dihapus, dan hanya tarif dasar baru jumlah tamu 1 akan disimpan. Kumpulan tamu tambahan sebelumnya jumlah akan dihapus, dan hanya rangkaian jumlah baru yang akan disimpan. Jumlah tamu tambahan sekarang akan menggunakan tarif jumlah tamu 1 baru sebagai tarif dasar. Perlu diketahui bahwa setelah pembaruan ini, tidak ada tamu tambahan biaya yang ditetapkan untuk anak-anak.
<?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>
Hapus jumlah
Tetapkan NotifType
ke Delete
untuk menghapus semua per jumlah tamu
tarif dasar, dan semua jumlah tamu tambahan untuk RoomID_1 dan PackageID_1
antara 20-10-2021 hingga 31-12-2021.
Misalnya, jika pesan ini dikirim setelah salah satu contoh lainnya pesan, tidak ada tarif dasar per jumlah tamu, atau jumlah tamu tambahan disimpan.
<?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>
Hapus hanya jumlah tamu tambahan
Tetapkan NotifType
ke Delta
dengan kolom kosong
<AdditionalGuestAmounts>
elemen untuk menghapus semua
jumlah tamu tambahan untuk RoomID_1 dan PackageID_1 tanpa memengaruhi
tarif dasar antara 20-10-2021 hingga 31-12-2021.
Misalnya, jika pesan ini dikirim setelah salah satu contoh lainnya pesan, hanya jumlah dasar yang akan disimpan.
<?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>
Harga berdasarkan LOS
Menyiapkan tarif berbasis LOS
Contoh 1
Tetapkan tarif untuk masa inap 1, 2, dan 3 malam mulai 18-05-2020. Tujuan tarif total untuk menginap 1, 2 dan 3 malam dalam contoh ini adalah $100, $180 dan $240.
<?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>
Menambahkan, menempatkan, dan menghapus tarif berbasis LOS
Tambahkan lama menginap
Dengan harga berdasarkan LOS, operasi Delta
memungkinkan tarif
diperbarui secara bertahap untuk rentang tanggal check-in yang tercantum di
<StatusApplicationControl>
dan untuk semua panjang masa inap
yang ditunjukkan oleh setiap elemen Rate
turunan
UnitMultiplier
.
Untuk setiap tanggal check-in dan lama menginap yang berlaku, semua jumlah tamu tarif harus ditentukan.
<?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>
Lama menginap overlay
Dengan harga berdasarkan LOS, operasi Overlay
mengganti tarif untuk semua lama menginap produk dan tanggal check-in
rentang yang ditunjukkan dalam <StatusApplicationControl>
.
Dengan pesan ini, tarif per jumlah tamu untuk semua panjang masa inap di tanggal kedatangan yang ditentukan akan dihapus dan diganti dengan jumlah tamu dua orang tarif yang hanya ditentukan untuk panjang masa inap 3.
<?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>
Hapus lama menginap
Dengan harga berdasarkan LOS, operasi Remove
menghapus tarif
untuk semua panjang masa inap produk dan rentang tanggal check-in yang ditunjukkan dalam
<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>
Respons
Sintaksis
Pesan OTA_HotelRateAmountNotifRS
menggunakan sintaksis berikut:
<?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>
Elemen dan atribut
Pesan OTA_HotelRateAmountNotifRS
memiliki hal berikut
elemen dan atribut:
Element / @Attribute | Kejadian | Jenis | Deskripsi |
---|---|---|---|
OTA_HotelRateAmountNotifRS | 1 | Complex element | Elemen root untuk respons terhadap pesan ketersediaan. |
OTA_HotelRateAmountNotifRS / @TimeStamp | 1 | DateTime | Tanggal dan waktu pembuatan pesan ini. |
OTA_HotelRateAmountNotifRS / @EchoToken | 1 | string | ID unik dari ID terkait
OTA_HotelRateAmountNotifRQ pesan. |
OTA_HotelRateAmountNotifRS / Success | 0..1 | Success | Menunjukkan bahwa pesan OTA_HotelRateAmountNotifRQ
berhasil diproses.
|
OTA_HotelRateAmountNotifRS / Errors | 0..1 | Errors | Container untuk satu atau beberapa masalah yang dialami saat memproses
OTA_HotelRateAmountNotifRQ pesan.
|
OTA_HotelRateAmountNotifRS / Errors / Error | 1..n | Error | Deskripsi error yang dialami saat memproses
OTA_HotelRateAmountNotifRQ pesan. Detail tentang
dapat ditemukan di Pesan Error Status Feed. |
OTA_HotelRateAmountNotifRS / Errors / Error / @Type | 1 | integer | EWT OpenTravel Alliance (Jenis Peringatan Error) yang terkait dengan
{i>error<i}. Hanya nilai 12 (Processing exception) yang digunakan. |
OTA_HotelRateAmountNotifRS / Errors / Error / @Code | 1 | integer | OpenTravel Alliance ERR (Kode Error) yang terkait dengan error.
Hanya nilai 450 (Unable to process) yang digunakan. |
OTA_HotelRateAmountNotifRS / Errors / Error / @Code | 1 | enum | Status permintaan asli. Hanya nilai
NotProcessed digunakan. |
OTA_HotelRateAmountNotifRS / Errors / Error / @ShortText | 1 | string | ID Google untuk masalah. Detail tentang {i>error<i} ini dapat ditemukan di Pesan Error Status Feed. |
Contoh
Berhasil
Berikut adalah respons terhadap permintaan yang berhasil diproses Pesan OTA_HotelRateAmountNotifRQ.
<?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>
Error
Berikut adalah respons terhadap pesan OTA_HotelRateAmountNotifRQ yang tidak diproses karena error.
<?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>