अनुरोध
सिंटैक्स
OTA_HotelRateAmountNotifRQ मैसेज में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?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>
एलिमेंट और एट्रिब्यूट
OTA_HotelRateAmountNotifRQ मैसेज में ये एलिमेंट और एट्रिब्यूट शामिल होते हैं:
| Element / @Attribute | आवृत्तियां | टाइप | ब्यौरा |
|---|---|---|---|
| OTA_HotelRateAmountNotifRQ | 1 | Complex element | किराये की जानकारी देने वाले मैसेज का रूट एलिमेंट. |
| OTA_HotelRateAmountNotifRQ / @xmlns | 0..1 | string (URI) | एक्सएमएल नेमस्पेस. |
| OTA_HotelRateAmountNotifRQ / @EchoToken | 1 | string | इस अनुरोध मैसेज के लिए यूनीक आइडेंटिफ़ायर. यह वैल्यू, जवाब वाले मैसेज में दिखती है. a-z, A-Z, 0-9, _ (underscore), और - (dash) वर्णों का इस्तेमाल किया जा सकता है. |
| OTA_HotelRateAmountNotifRQ / @TimeStamp | 1 | DateTime | इस मैसेज को बनाने की तारीख और समय. |
| OTA_HotelRateAmountNotifRQ / @Version | 1 | decimal | OpenTravel मैसेज का वर्शन. |
| OTA_HotelRateAmountNotifRQ / @NotifType | 0..1 | enum | हर मान्य मान हैं: इन एट्रिब्यूट के काम करने के तरीके को समझने के लिए, उदाहरण देखें.
|
| OTA_HotelRateAmountNotifRQ / @NotifScopeType | 0..1 | enum | हर मान्य मान हैं:
|
| OTA_HotelRateAmountNotifRQ / POS | 0..1 | POS | यह कंटेनर, इस मैसेज के लिए पार्टनर खाता तय करता है (आम तौर पर इसका इस्तेमाल तब किया जाता है, जब आपका बैकएंड कई पार्टनर खातों के लिए किराये की जानकारी वाले फ़ीड उपलब्ध कराता है). |
| OTA_HotelRateAmountNotifRQ / POS / Source | 1 | Source | अगर <POS> मौजूद है, तो यह एट्रिब्यूट ज़रूरी है. <RequestorID> के लिए एक कंटेनर. |
| OTA_HotelRateAmountNotifRQ / POS / RequestorID | 1 | RequestorID | अगर <POS> मौजूद है, तो यह एट्रिब्यूट ज़रूरी है. यह पार्टनर खाते के बारे में बताता है. |
| OTA_HotelRateAmountNotifRQ / POS / RequestorID / @ID | 1 | string | यह मैसेज किस पार्टनर खाते के लिए है. यह स्ट्रिंग वैल्यू, Hotel Center के
खाते की सेटिंग वाले पेज पर मौजूद "पार्टनर की" वैल्यू होती है.
ध्यान दें: अगर आपके पास ऐसा बैकएंड है जो एक से ज़्यादा खातों के लिए फ़ीड उपलब्ध कराता है, तो यह वैल्यू आपके लेन-देन (प्रॉपर्टी डेटा) मैसेज के |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages | 1 | RateAmountMessages | <RateAmountMessage> एलिमेंट का एक कलेक्शन, जिसमें किराये की जानकारी दी गई है. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / @HotelCode | 1 | string | प्रॉपर्टी के लिए यूनीक आइडेंटिफ़ायर. यह वैल्यू, होटल सूची फ़ीड में <id> एट्रिब्यूट का इस्तेमाल करके दी गई होटल आईडी वैल्यू से मेल खानी चाहिए. यह वैल्यू, <listing> एलिमेंट में दी गई होटल आईडी वैल्यू से भी मेल खानी चाहिए. होटल आईडी, Hotel Center में भी दिखता है. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage | 1..n | RateAmountMessage | यह कंटेनर, कमरे के किराये के लिए कीमतें सेट करने के लिए होता है. इसमें किसी तारीख की सीमा के लिए, कमरे का टाइप और किराये के प्लान का कॉम्बिनेशन होता है. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl | 1 | StatusApplicationControl | तारीख की सीमा के साथ-साथ, कमरे के टाइप (InvTypeCode) और किराया प्लान (RatePlanCode) के आइडेंटिफ़ायर तय करता है. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Start | 1 | Date | तारीख की सीमा की शुरुआत की तारीख. यह तारीख, प्रॉपर्टी के टाइम ज़ोन के हिसाब से तय होती है. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @End | 1 | Date | तारीख की सीमा के खत्म होने की तारीख. यह तारीख, प्रॉपर्टी के टाइम ज़ोन के हिसाब से तय होती है. यह start वैल्यू के बराबर या इससे ज़्यादा होनी चाहिए.
अगर start और end की वैल्यू एक जैसी है, तो अपडेट उस तारीख पर लागू होगा. ध्यान दें कि Google, तीन साल तक के डेटा को ट्रांसफ़र करने की सुविधा देता है. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Mon | 0..1 | boolean | सोमवार को साफ़ तौर पर शामिल करने के लिए, इसे true या 1 पर सेट करें.
अगर इसे |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Tue | 0..1 | boolean | मंगलवार को साफ़ तौर पर शामिल करने के लिए, इसे true या 1 पर सेट करें.
अगर इसे |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Weds | 0..1 | boolean | बुधवार को साफ़ तौर पर शामिल करने के लिए, इसे true या 1 पर सेट करें.
अगर इसे |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Thur | 0..1 | boolean | true या 1 पर सेट करें, ताकि गुरुवार को साफ़ तौर पर शामिल किया जा सके.
अगर इसे |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Fri | 0..1 | boolean | शुक्रवार को शामिल करने के लिए, इसे true या 1 पर सेट करें.
अगर इसे |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sat | 0..1 | boolean | शनिवार को साफ़ तौर पर शामिल करने के लिए, इसे true या 1 पर सेट करें.
अगर इसे |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sun | 0..1 | boolean | रविवार को साफ़ तौर पर शामिल करने के लिए, इसे true या 1 पर सेट करें.
अगर इसे |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @InvTypeCode | 1 | string | इन्वेंट्री (कमरे का टाइप) के लिए यूनीक आइडेंटिफ़ायर. यह वैल्यू, लेन-देन (प्रॉपर्टी डेटा) मैसेज में <RoomID> पर मैप करती है. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanCode | 1 | string | किराया प्लान के लिए यूनीक आइडेंटिफ़ायर. यह आइडेंटिफ़ायर, लेन-देन (प्रॉपर्टी का डेटा) मैसेज में मौजूद <PackageID> से मैप होता है. रेट प्लान के बारे में ज़्यादा जानकारी दी गई है और <StatusApplicationControl> में इसका रेफ़रंस दिया गया है. यह जानकारी <OTA_HotelRateAmountNotifRQ> और <OTA_HotelAvailNotifRQ>, दोनों तरह के मैसेज में दी गई है. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanType | 0..1 | string | यह एक आइडेंटिफ़ायर है. इससे पता चलता है कि किराये में बदलाव से जुड़ी इस जानकारी पर, एआरआई के किस तरह के प्राइसिंग मॉडल का इस्तेमाल किया गया है. एलओएस के आधार पर किराया तय करने के मॉडल का इस्तेमाल करते समय, 26 की वैल्यू का इस्तेमाल करके ही इसे तय किया जाना चाहिए. इस एट्रिब्यूट को शामिल न करने का मतलब है कि हर तारीख के हिसाब से कीमत अपडेट की जा रही है. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates | 0..1 | Rates | <Rate> एलिमेंट के कलेक्शन के लिए कंटेनर. अगर NotifType, "Remove" है, तो इस एलिमेंट को शामिल नहीं किया जाना चाहिए. ऐसा न होने पर, इस एलिमेंट को सिर्फ़ एक बार तय किया जाना चाहिए. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate | 1 | Rate | <BaseByGuestAmts> एलिमेंट के कलेक्शन के लिए कंटेनर. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @RateTimeUnit | 0..1 | String | वह इकाई जिससे ठहरने की अवधि तय की जाती है. इस एट्रिब्यूट के लिए सिर्फ़ "Day" वैल्यू का इस्तेमाल किया जा सकता है. इसका मतलब है कि ठहरने की अवधि दिनों में बताई जाएगी.
एलओएस के आधार पर कीमत तय करने की सुविधा का इस्तेमाल करने के लिए, |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @UnitMultiplier | 0..1 | Integer | RateTimeUnits की संख्या, जो इस किराये के हिसाब से ठहरने की अवधि तय करती है.
उदाहरण के लिए, अगर इस एलओएस के आधार पर कीमत तय करने की सुविधा का इस्तेमाल करने के लिए, |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts | 1 | BaseByGuestAmts | बेस शुल्क के कलेक्शन के लिए कंटेनर. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt | 1..n | BaseByGuestAmt | इस कुकी से, किसी मुद्रा में कमरे की कीमतें तय की जाती हैं. एक से ज़्यादा <BaseByGuestAmt> एलिमेंट का इस्तेमाल करके, हर व्यक्ति के हिसाब से किराया तय किया जा सकता है. हर एलिमेंट में NumberOfGuests के लिए अलग वैल्यू होती है.
इसके अलावा, NumberOfGuests एट्रिब्यूट की वैल्यू के हिसाब से, ज़्यादा से ज़्यादा लोगों के लिए किराया लागू होता है. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountBeforeTax | 0..1 | float |
टैक्स और शुल्क से पहले, कमरे के रोज़ाना के किराये की कीमत. अगर प्रमोशन का इस्तेमाल किया जा रहा है, तो |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountAfterTax | 0..1 | float | कमरे का रोज़ाना का किराया, जिसमें लागू होने वाले टैक्स और शुल्क शामिल हैं. अगर AmountAfterTax प्रॉपर्टी की वैल्यू दी गई है, तो हर प्रॉपर्टी के लिए अलग-अलग <TaxFeeInfo> मैसेज भेजने की ज़रूरत नहीं है. इस एट्रिब्यूट का इस्तेमाल AmountBeforeTax के साथ किया जा सकता है. इससे, उपयोगकर्ताओं को मूल और कुल, दोनों तरह के किराये की जानकारी दी जा सकती है. यह जानकारी, कुछ देशों/इलाकों में रहने वाले लोगों को दिखाई जा सकती है.
चेतावनी: अगर प्रमोशन का इस्तेमाल किया जा रहा है, तो हमारा सुझाव है कि ध्यान दें: अगर |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @CurrencyCode | 1 | enum | किसी मुद्रा इकाई के लिए, ISO 4217 (3) वर्णमाला कोड.
इस्तेमाल की जा सकने वाली मुद्राओं की सूची देखें. |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @NumberOfGuests | 0..1 | integer | इस किराये में ज़्यादा से ज़्यादा कितने मेहमान ठहर सकते हैं.
अगर वैल्यू नहीं दी जाती है, तो डिफ़ॉल्ट रूप से मेहमानों की संख्या 2 होती है.
ध्यान दें कि अगर |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts | 0..1 | AdditionalGuestAmounts | अतिरिक्त मेहमानों के लिए शुल्क का कलेक्शन.
यह सिंटैक्स तब काम आता है, जब मेहमान या बच्चे के लिए तय किए गए अतिरिक्त शुल्क, तारीख के हिसाब से बदलते हैं. अगर प्रॉपर्टी लेवल पर इन शुल्कों को स्टैटिक तौर पर तय किया जा सकता है, तो ज़्यादा असरदार
उदाहरण के लिए, मान लें कि एक और दो वयस्कों के लिए मूल किराया तय किया गया है.
|
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount | 0..n | AdditionalGuestAmount | इस प्रॉपर्टी की वैल्यू से, मेहमान के टाइप के हिसाब से कीमतें तय की जाती हैं. मेहमान का टाइप, AgeQualifyingCode एट्रिब्यूट के ज़रिए तय किया जाता है. अगर लागू हो, तो मेहमान की उम्र MaxAge एट्रिब्यूट के ज़रिए तय की जाती है.
|
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @AgeQualifyingCode | 1 | enum | इससे पता चलता है कि अतिरिक्त मेहमान वयस्क है या बच्चा. मान्य
विकल्प ये हैं:
|
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @MaxAge | 0..1 | integer | MaxAge की वैल्यू तब सबमिट करें, जब
AgeQualifyingCode की वैल्यू 8 हो. जब AgeQualifyingCode की वैल्यू 10 हो, तब इस एट्रिब्यूट की वैल्यू नहीं दी जानी चाहिए.
अलग-अलग |
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @Amount | 1 | float | हर अतिरिक्त मेहमान के लिए, मूल किराये में टैक्स और शुल्क जोड़े जाने से पहले की रकम.
कमरे में रहने वाले लोगों की उम्र के हिसाब से लगने वाले टैक्स और शुल्क की जानकारी, |
उदाहरण
इस सेक्शन में, कोड के ऐसे उदाहरण दिए गए हैं जिनसे यह पता चलता है कि:
- मूल किराये और कुल किराये को सेट अप करना
- किराये जोड़ना, ओवरले करना, और हटाना
- मेहमानों के लिए तय किए गए अतिरिक्त शुल्क को जोड़ना, ओवरले करना, और हटाना
- एलओएस के आधार पर दरें सेट अप करना
- एलओएस के आधार पर तय किए गए किराये जोड़ना, ओवरले करना, और हटाना
add, overlay या remove वैल्यू सेट करते समय, तारीख की सीमाएं आपके लक्ष्यों के हिसाब से एक जैसी या अलग-अलग हो सकती हैं. उदाहरण के लिए, "ऐड रेट" मैसेज के लिए सेट की गई पूरी सीमा के बजाय, दिसंबर की छुट्टियों के लिए सिर्फ़ कुछ हफ़्ते सेट करने के लिए overlay का इस्तेमाल किया जा सकता है. इससे, सिर्फ़ इस अवधि के लिए ऑक्यूपेंसी रेट बदल जाएंगे.
तारीख के हिसाब से कीमत
किसी कमरे और किराये के प्लान के लिए, हर प्रॉपर्टी के हिसाब से ऑक्यूपेंसी रेट ज़्यादा से ज़्यादा 50 हो सकते हैं. अगर सभी लोगों के लिए किराये एक जैसे हैं, तो आपको सिर्फ़ ज़्यादा से ज़्यादा लोगों की संख्या और उसके लिए ज़रूरी किराया भेजना चाहिए. इससे Google को यह पता चलता है कि कम ऑक्यूपेंसी वाले कमरों का बेस रेट भी यही है.
मूल दरें और कुल दरें सेट अप करना
उदाहरण 1
डिफ़ॉल्ट तौर पर दो लोगों के लिए, मूल किराया (इसमें टैक्स या शुल्क शामिल नहीं है). इस मॉडल में, प्रॉपर्टी के लिए टैक्स और शुल्क की जानकारी, <TaxFeeInfo> मैसेज का इस्तेमाल करके देनी होगी. कुछ देशों/इलाकों में खोज करने वाले लोगों को, मूल किराया ज़्यादा प्रमुखता से दिखेगा.
<?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
डिफ़ॉल्ट तौर पर दो लोगों के रहने के लिए, बेसिक और कुल किराया. इस मॉडल में, टैक्स और शुल्क को <TaxFeeInfo> मैसेज का इस्तेमाल करके अलग से तय नहीं किया जाना चाहिए. कुछ देशों/इलाकों में खोज करने वाले लोगों को, मूल किराया ज़्यादा प्रमुखता से दिखेगा.
<?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
अलग-अलग इस्तेमाल के लिए कुल किराया (इसमें टैक्स और शुल्क शामिल हैं). इस मॉडल में, <TaxFeeInfo> मैसेज का इस्तेमाल करके, टैक्स और शुल्क को अलग-अलग नहीं बताया जाना चाहिए.
<?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>चौथा उदाहरण
अलग-अलग तारीख की सीमाओं के लिए, कमरे के अलग-अलग टाइप और किराया प्लान के हिसाब से मूल और कुल किराया.
<?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>किराये जोड़ना, ओवरले करना, और हटाना
हर प्रॉपर्टी के लिए, 5,000 प्रॉडक्ट—कमरे के टाइप और पैकेज के कॉम्बिनेशन—जोड़ने की सीमा तय की गई है. पहले से तय किए गए प्रॉडक्ट हटाने के लिए, Overlay या Remove सूचना टाइप का इस्तेमाल करें.
किराया जोड़ना
RoomID_1 और PackageID_1 के लिए, 2021-10-20 से 2021-12-31 के बीच, हर व्यक्ति के हिसाब से किराया जोड़ने के लिए, NotifType को Delta पर सेट करें. ध्यान दें कि Google, तीन साल तक के डेटा को ट्रांसफ़र करने की सुविधा देता है.
<?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>ओवरले रेट
RoomID_1 और PackageID_1 के लिए, 2021-10-20 से 2021-12-31 के बीच, हर व्यक्ति के हिसाब से तय की गई सभी दरों को मिटाने के लिए, NotifType को Overlay पर सेट करें. साथ ही, उन्हें हर व्यक्ति के हिसाब से तय की गई नई दरों से बदलें.
उदाहरण के लिए, अगर यह मैसेज "किराये जोड़ें" मैसेज के बाद भेजा गया था, तो एक, दो, और तीन लोगों के हिसाब से तय किया गया किराया मिटा दिया जाएगा. साथ ही, सिर्फ़ एक व्यक्ति के हिसाब से तय किया गया नया किराया सेव किया जाएगा. आपके पास तारीख की छोटी सीमा सेट करने का विकल्प भी है (उदाहरण के लिए: 2021-12-20 और 2021-12-31) का इस्तेमाल करके, कुछ तारीखों के लिए ऑक्यूपेंसी रेट बदलें. जैसे, छुट्टियों के लिए.
<?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>किराया हटाएं
RoomID_1 और PackageID_1 के लिए, 2021-10-20 से 2021-12-31 के बीच, हर व्यक्ति के हिसाब से तय किए गए सभी किराये मिटाने के लिए, NotifType को Remove पर सेट करें.
उदाहरण के लिए, अगर यह मैसेज, अन्य उदाहरण वाले मैसेज के बाद भेजा गया था, तो हर व्यक्ति के हिसाब से किराये की जानकारी सेव नहीं की जाएगी.
<?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>मेहमानों के लिए तय किए गए अतिरिक्त शुल्क जोड़ना, ओवरले करना, और हटाना
रकम जोड़ना
RoomID_1 और PackageID_1 के लिए, 2021-10-20 से 2021-12-31 के बीच, एक और दो लोगों के लिए किराया और अतिरिक्त मेहमानों के लिए शुल्क जोड़ने के लिए, NotifType को Delta पर सेट करें.
अतिरिक्त मेहमानों के लिए, मूल किराये के अलावा शुल्क लिया जाएगा. यह शुल्क, उपयोगकर्ता की खोज के दौरान कमरे में रहने वाले लोगों की संख्या के हिसाब से तय किया जाएगा. उपयोगकर्ता की बताई गई ऑक्यूपेंसी, RoomID_1 की क्षमता के हिसाब से होनी चाहिए.
इस उदाहरण में, मेहमानों के लिए अतिरिक्त शुल्क इस तरह लागू होगा:
- 0 से 10 साल की उम्र के बच्चों के लिए 5 डॉलर.
- 11 से 17 साल के बच्चों के लिए 10 डॉलर.
- वयस्कों के लिए 20 डॉलर.
<?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>ओवरले की रकम
NotifType को Overlay पर सेट करें. इससे, RoomID_1 और PackageID_1 के लिए, 2021-10-20 से 2021-12-31 के बीच, हर व्यक्ति के हिसाब से तय की गई सभी दरें और मेहमानों से लिया जाने वाला अतिरिक्त शुल्क मिट जाएगा. साथ ही, हर व्यक्ति के हिसाब से तय की गई नई दरें और अतिरिक्त शुल्क लागू हो जाएगा.
उदाहरण के लिए, अगर यह मैसेज "किराये जोड़ें" मैसेज के बाद भेजा गया है, तो एक और दो वयस्कों के लिए मूल किराया मिटा दिया जाएगा. साथ ही, सिर्फ़ एक वयस्क के लिए नया मूल किराया सेव किया जाएगा. अतिरिक्त मेहमानों के लिए, शुल्क का पिछला सेट मिटा दिया जाएगा. सिर्फ़ शुल्क का नया सेट सेव किया जाएगा. अतिरिक्त मेहमानों के लिए, अब ऑक्यूपेंसी 1 के नए किराये को मूल किराये के तौर पर इस्तेमाल किया जाएगा. ध्यान दें कि इस अपडेट के बाद, बच्चों के लिए मेहमानों से लिया जाने वाला कोई अतिरिक्त शुल्क नहीं होगा.
<?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>कीमतें हटाना
NotifType को Delete पर सेट करें, ताकि 2021-10-20 से 2021-12-31 के बीच, RoomID_1 और PackageID_1 के लिए, हर व्यक्ति के हिसाब से तय किए गए सभी मूल किराये और मेहमानों से लिए जाने वाले सभी अतिरिक्त शुल्क मिटाए जा सकें.
उदाहरण के लिए, अगर यह मैसेज, उदाहरण के तौर पर दिए गए किसी दूसरे मैसेज के बाद भेजा गया था, तो प्रति व्यक्ति के हिसाब से किराये की मूल दरें या मेहमानों से लिए जाने वाले अतिरिक्त शुल्क की जानकारी सेव नहीं की जाएगी.
<?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>सिर्फ़ मेहमान के लिए तय की गई अतिरिक्त रकम हटाएं
RoomID_1 और PackageID_1 के लिए, मेहमानों से लिए जाने वाले सभी अतिरिक्त शुल्क मिटाने के लिए, NotifType को Delta पर सेट करें. इसके लिए, खाली <AdditionalGuestAmounts> एलिमेंट का इस्तेमाल करें. इससे 2021-10-20 से 2021-12-31 के बीच के मूल किराये पर कोई असर नहीं पड़ेगा.
उदाहरण के लिए, अगर यह मैसेज, उदाहरण के तौर पर दिए गए किसी दूसरे मैसेज के बाद भेजा गया था, तो सिर्फ़ मूल रकम सेव की जाएगी.
<?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>एलओएस के आधार पर कीमत तय करना
एलओएस के आधार पर किराये सेट अप करना
उदाहरण 1
18-05-2020 से, एक, दो, और तीन रात ठहरने के लिए किराये सेट करें. इस उदाहरण में, एक, दो, और तीन रात के लिए ठहरने का कुल किराया क्रमशः 100 डॉलर, 180 डॉलर, और 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>एलओएस के आधार पर तय की गई दरों को जोड़ना, ओवरले करना, और हटाना
ठहरने की अवधि जोड़ना
एलओएस के आधार पर तय की गई कीमत के साथ, Delta ऑपरेशन की मदद से, चेक-इन की तारीखों के उन इंटरवल के लिए किराये को धीरे-धीरे अपडेट किया जा सकता है जिनके बारे में <StatusApplicationControl> में बताया गया है. साथ ही, ठहरने की उन सभी अवधियों के लिए किराये को अपडेट किया जा सकता है जिनके बारे में हर चाइल्ड Rate एलिमेंट के UnitMultiplier में बताया गया है.
चेक-इन की हर तारीख और ठहरने की अवधि के लिए, सभी ऑक्यूपेंसी रेट तय किए जाने चाहिए.
<?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>ओवरले में ठहरने की अवधि
एलओएस के आधार पर तय की गई कीमत के साथ, Overlay ऑपरेशन, प्रॉडक्ट के लिए ठहरने की सभी अवधियों और <StatusApplicationControl> में बताई गई चेक-इन की तारीख की सीमा के लिए, कीमतों को बदल देता है.
इस मैसेज से, ठहरने की सभी अवधियों के लिए, तय की गई तारीखों पर आने वाले मेहमानों के हिसाब से किराये हटा दिए जाएंगे. साथ ही, उनकी जगह दो लोगों के हिसाब से तय किया गया किराया लागू कर दिया जाएगा. यह किराया, सिर्फ़ तीन दिनों के लिए तय किया गया है.
<?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>ठहरने की अवधि हटाएं
एलओएस के आधार पर तय की गई कीमत के साथ, Remove ऑपरेशन से प्रॉडक्ट के लिए, ठहरने की सभी अवधियों और चेक-इन की तारीख की सीमा के लिए कीमतें हट जाती हैं. ये कीमतें, <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>जवाब
सिंटैक्स
OTA_HotelRateAmountNotifRS मैसेज में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?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>
एलिमेंट और एट्रिब्यूट
OTA_HotelRateAmountNotifRS मैसेज में ये एलिमेंट और एट्रिब्यूट शामिल होते हैं:
| Element / @Attribute | आवृत्तियां | टाइप | ब्यौरा |
|---|---|---|---|
| OTA_HotelRateAmountNotifRS | 1 | Complex element | उपलब्धता के बारे में जानकारी देने वाले मैसेज के जवाब का रूट एलिमेंट. |
| OTA_HotelRateAmountNotifRS / @TimeStamp | 1 | DateTime | इस मैसेज को बनाने की तारीख और समय. |
| OTA_HotelRateAmountNotifRS / @EchoToken | 1 | string | यह उस OTA_HotelRateAmountNotifRQ मैसेज का यूनीक आइडेंटिफ़ायर है जिससे यह जुड़ा है. |
| OTA_HotelRateAmountNotifRS / Success | 0..1 | Success | इससे पता चलता है कि OTA_HotelRateAmountNotifRQ मैसेज को प्रोसेस कर लिया गया है.
हर मैसेज में |
| OTA_HotelRateAmountNotifRS / Errors | 0..1 | Errors | यह एक कंटेनर है. इसमें OTA_HotelRateAmountNotifRQ मैसेज को प्रोसेस करते समय हुई एक या उससे ज़्यादा समस्याओं की जानकारी होती है.
हर मैसेज में |
| OTA_HotelRateAmountNotifRS / Errors / Error | 1..n | Error | OTA_HotelRateAmountNotifRQ मैसेज को प्रोसेस करते समय हुई गड़बड़ी की जानकारी. इन गड़बड़ियों के बारे में जानकारी, फ़ीड की स्थिति से जुड़ी गड़बड़ी के मैसेज में देखी जा सकती है. |
| OTA_HotelRateAmountNotifRS / Errors / Error / @Type | 1 | integer | गड़बड़ी से जुड़ा OpenTravel Alliance EWT (Error Warning Type). सिर्फ़ 12 (Processing exception) वैल्यू का इस्तेमाल किया जाता है. |
| OTA_HotelRateAmountNotifRS / Errors / Error / @Code | 1 | integer | गड़बड़ी से जुड़ा OpenTravel Alliance ERR (गड़बड़ी का कोड).
सिर्फ़ 450 (Unable to process) वैल्यू का इस्तेमाल किया जाता है. |
| OTA_HotelRateAmountNotifRS / Errors / Error / @Code | 1 | enum | मूल अनुरोध की स्थिति. सिर्फ़ NotProcessed वैल्यू का इस्तेमाल किया जाता है. |
| OTA_HotelRateAmountNotifRS / Errors / Error / @ShortText | 1 | string | समस्या के लिए Google आइडेंटिफ़ायर. इन गड़बड़ियों के बारे में जानकारी, फ़ीड की स्थिति से जुड़ी गड़बड़ी के मैसेज में देखी जा सकती है. |
उदाहरण
पुष्टि हो गई
यहां, 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>गड़बड़ियां
यहां 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">
<Errors>
<Error Type="12" Code="450" Status="NotProcessed" ShortText="8001">Example</Error>
</Errors>
</OTA_HotelRateAmountNotifRS>