लेन-देन (प्रॉपर्टी डेटा)

अनुरोध

सिंटैक्स

Transaction (Property Data) मैसेज में इस सिंटैक्स का इस्तेमाल किया जाता है:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="timestamp"
             id="message_ID"
             partner="partner_key">
  <PropertyDataSet action="[overlay|delta]">
    <!-- (Required) ID that matches the Hotel List Feed -->
    <Property>HotelID</Property>
    <RoomData>
      <!-- (Required) One room ID per RoomData element -->
      <RoomID>RoomID</RoomID>
      <Name>
        <Text text="room_name" language="language_code"/>
      </Name>
      <Description>
        <Text text="room_description" language="language_code"/>
      </Description>
      <!-- (Optional) Restricts the rate plans allowed for this room type to
        those listed here. If specified, don't specify AllowableRoomIDs. -->
      <AllowablePackageIDs>
        <AllowablePackageID>PackageID</AllowablePackageID>
      </AllowablePackageIDs>
      <Capacity>max_number_of_occupants</Capacity>
      <AdultCapacity>max_number_of_adult_occupants</AdultCapacity>
      <ChildCapacity>max_number_of_child_occupants</ChildCapacity>
      <OccupancySettings>
        <MinOccupancy>min_number_of_occupants</MinOccupancy>
        <MinAge>min_age_of_occupants</MinAge>
      </OccupancySettings>
      <PhotoURL>
        <Caption>
          <Text text="photo_description" language="language_code"/>
        </Caption>
        <URL>photo_location</URL>
      </PhotoURL>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>[western|japanese|japanese_western]</JapaneseHotelRoomStyle>
        <Beds>
           <Bed size="[single|semi_double|double|queen|king]">
             <Width unit="cm" number="bed_width"/>
             <Length unit="cm" number="bed_length"/>
           </Bed>
           <!-- Include with any additional beds. -->
        </Beds>
        <Suite/>
        <Capsule/>
        <Roomsharing>[shared|private]</Roomsharing>
        <Outdoor/>
        <MobilityAccessible/>
        <Smoking>[smoking|non_smoking]</Smoking>
        <BathAndToilet relation="[together|separate]">
          <Bath bathtub="[false|true]" shower="[false|true]"/>
          <Toilet electronic_bidet="[false|true]" mobility_accessible="[false|true]"/>
        </BathAndToilet>
        <OpenAirBath/>
        <AirConditioning/>
        <Balcony/>
        <Views>
          <!-- (Optional) Defines the type of views from the room. -->
          <!-- Example: <OceanView/> -->
        </Views>
      </RoomFeatures>
    </RoomData>
    <PackageData>
      <!-- (Required) One package ID per PackageData element -->
      <PackageID>PackageID</PackageID>
      <Name>
        <Text text="package_name" language="language_code"/>
      </Name>
      <Description>
        <Text text="package_description" language="language_code"/>
      </Description>
      <!-- (Optional) Restricts the room types allowed for this rate plan to
        those listed here. If specified, don't specify AllowablePackageIDs. -->
      <AllowableRoomIDs>
        <AllowableRoomID>RoomID</AllowableRoomID>
      </AllowableRoomIDs>
      <!-- Add Loyalty point information -->
      <MilesIncluded>
        <LoyaltyCampaignID>campaign-ID</LoyaltyCampaignID>
        <!-- (Optional) Use <NumberOfMiles> if the rate plan earns fixed loyalty rewards-->
        <NumberOfMiles>integer</NumberOfMiles>
      </MilesIncluded>
      <Refundable available="[false|true]" refundable_until_days="number_of_days"
        refundable_until_time="time"/>
      <!-- For these next 3 elements, boolean_value can be 0/1 or true/false -->
      <BreakfastIncluded>boolean_value</BreakfastIncluded>
      <InternetIncluded>boolean_value</InternetIncluded>
      <ParkingIncluded>boolean_value</ParkingIncluded>
      <PhotoURL>
        <Caption>
          <Text text="photo_description" language="language_code"/>
          ...
        </Caption>
        <URL>photo_location</URL>
      </PhotoURL>
      ...
      <Meals>
        <Breakfast
          included="[true|false]" buffet="[true|false]"
          in_room="[true|false]" in_private_space="[true|false]"/>
        <Dinner
          included="[true|false]" buffet="[true|false]"
          in_room="[true|false]" in_private_space="[true|false]"/>
      </Meals>
      <CheckinTime>checkin_time</CheckinTime>
      <CheckoutTime>checkout_time</CheckoutTime>
    </PackageData>
  </PropertyDataSet>
</Transaction>

तत्व और एट्रिब्यूट

लेन-देन (प्रॉपर्टी का डेटा) मैसेज में ये एलिमेंट और एट्रिब्यूट होते हैं:

Element / @Attribute आवृत्तियां टाइप ब्यौरा
Transaction 1 Complex element एआरआई लागू करने पर, यह किसी मैसेज का रूट एलिमेंट होता है. यह एक प्रॉपर्टी के लिए, कमरे के टाइप और पैकेज तय करता है.
Transaction / @timestamp 1 DateTime इस मैसेज को बनाने की तारीख और समय.
Transaction / @id 1 string इस अनुरोध मैसेज के लिए यूनीक आइडेंटिफ़ायर. यह वैल्यू, जवाब वाले मैसेज में दिखती है. a-z, A-Z, 0-9, _ (अंडरस्कोर), और - (डैश) का इस्तेमाल किया जा सकता है.
Transaction / @partner 1 string यह मैसेज किस पार्टनर खाते के लिए है. यह स्ट्रिंग वैल्यू, Hotel Center के खाते की सेटिंग वाले पेज पर मौजूद "पार्टनर की" वैल्यू होती है.

ध्यान दें: अगर आपके पास ऐसा बैकएंड है जो कई खातों के लिए फ़ीड उपलब्ध कराता है, तो इस वैल्यू को उसी खाते के लिए <OTA_HotelRateAmountNotifRQ> और <OTA_HotelAvailNotifRQ> मैसेज के <RequestorID> एलिमेंट में दी गई ID एट्रिब्यूट की वैल्यू से मेल खाना चाहिए.

Transaction / PropertyDataSet 1.. PropertyDataSet एक कंटेनर, जिसमें किसी एक प्रॉपर्टी के लिए कमरों के टाइप और पैकेज तय किए जाते हैं.

हमारा सुझाव है कि आप <PropertyDataSet> सिर्फ़ एक बार भेजें. इसे सिर्फ़ तब अपडेट किया जाना चाहिए, जब बदलाव करने की ज़रूरत हो.

Transaction / PropertyDataSet / @action 0..1 enum

कमरे के किराये की परिभाषाओं पर लागू किए जाने वाले अपडेट का टाइप.

मान्य मान हैं:

  • overlay : प्रॉपर्टी के लिए, पहले से तय किए गए सभी <RoomData> और <PackageData> को बदल देता है. मौजूदा मैसेज में सिर्फ़ <RoomData> और <PackageData> मान्य हैं.
  • delta : इससे पहले से तय न किए गए <RoomData> और <PackageData> जुड़ जाते हैं या मौजूदा वैल्यू में बदलाव हो जाता है.

इस एट्रिब्यूट की वैल्यू देना ज़रूरी नहीं है. अगर इसकी वैल्यू नहीं दी जाती है, तो डिफ़ॉल्ट रूप से इसकी वैल्यू delta होती है.

Transaction / PropertyDataSet / Property 1 string प्रॉपर्टी के लिए यूनीक आइडेंटिफ़ायर. यह वैल्यू, होटल सूची फ़ीड में <listing> एलिमेंट में <id> का इस्तेमाल करके तय किए गए होटल आईडी से मेल खानी चाहिए. होटल आईडी, Hotel Center में भी दिखता है.
Transaction / PropertyDataSet / RoomData 0..n RoomData

किसी रूम के बारे में बताता है.

ध्यान दें: <RoomData> या <PackageData> में से, कम से कम एक का होना ज़रूरी है.

Transaction / PropertyDataSet / RoomData / RoomID 1 RoomID कमरे के टाइप के लिए यूनीक आइडेंटिफ़ायर. इस वैल्यू को <OTA_HotelAvailNotifRQ>, <OTA_HotelRateAmountNotifRQ>, और <OTA_HotelInvCountNotifRQ> मैसेज में मौजूद <StatusApplicationControl> एलिमेंट में InvTypeCode एट्रिब्यूट का इस्तेमाल करके रेफ़रंस किया जाता है.
Transaction / PropertyDataSet / RoomData / Name 1 Name एक या इससे ज़्यादा भाषाओं में, चैट रूम की कैटगरी के नाम के लिए कंटेनर.
Transaction / PropertyDataSet / RoomData / Name / Text 1..n Text यह टैग, किसी एक भाषा में रूम की कैटगरी का नाम बताता है.
Transaction / PropertyDataSet / RoomData / Name / Text / @text 1..n string language एट्रिब्यूट में बताई गई भाषा में, कमरे की कैटगरी का नाम.
Transaction / PropertyDataSet / RoomData / Description 1 Name एक या उससे ज़्यादा भाषाओं में कमरे की कैटगरी के ब्यौरे के लिए कंटेनर.
Transaction / PropertyDataSet / RoomData / Description / Text 1..n Text किसी एक भाषा में कमरे की कैटगरी का ब्यौरा देता है.
Transaction / PropertyDataSet / RoomData / Description / Text / @text 1..n string language एट्रिब्यूट में बताई गई भाषा में, कमरे की कैटगरी के बारे में जानकारी.
Transaction / PropertyDataSet / RoomData / Description / Text / @language 1..n string दो अक्षरों वाला भाषा कोड.
Transaction / PropertyDataSet / RoomData / AllowablePackageIDs 0..1 AllowablePackageIDs <AllowablePackageID> एलिमेंट के लिए एक कंटेनर.

अगर <AllowablePackageIDs> एट्रिब्यूट की वैल्यू दी गई है, तो पैरंट <RoomData> एलिमेंट में <RoomID> एट्रिब्यूट से पहचाने गए कमरे के टाइप को सिर्फ़ <AllowablePackageID> एलिमेंट से तय किए गए किराया प्लान के साथ जोड़ा जा सकता है.

अगर <AllowablePackageIDs> एट्रिब्यूट की वैल्यू नहीं दी गई है, तो पैरंट <RoomData> एलिमेंट में <RoomID> एट्रिब्यूट से पहचाने गए कमरे के टाइप को किसी भी रेट प्लान के साथ जोड़ा जा सकता है.

<AllowablePackageIDs> या <AllowableRoomIDs> में से किसी एक का इस्तेमाल करें, दोनों का नहीं.

Transaction / PropertyDataSet / RoomData / AllowablePackageIDs / AllowablePackageID 1..n AllowablePackageID यह उस रेट प्लान का PackageID तय करता है जिसे इस रूम टाइप के साथ जोड़ा जा सकता है. किराया प्लान, पैकेज, किराये, और उपलब्धता के आधार पर तय किया जाता है. PackageID OTA_HotelRateAmountNotifRQ और OTA_HotelAvailNotifRQ मैसेज में मौजूद RatePlanCode से मेल खाता है.
Transaction / PropertyDataSet / RoomData / Capacity 0..1 integer किसी कमरे में ज़्यादा से ज़्यादा कितने वयस्क और बच्चे रह सकते हैं. यह वैल्यू, उन NumberOfGuests वैल्यू से ज़्यादा या उनके बराबर होनी चाहिए जिन्हें आपने किराये के साथ भेजा है.

<Capacity> की वैल्यू, 1 और 99 के बीच की कोई पॉज़िटिव पूर्णांक होनी चाहिए. उदाहरण के लिए, यहां देखें.

ध्यान दें: अगर <Capacity> सेट नहीं किया गया है, तो घर में रहने वाले लोगों की संख्या को असीमित माना जाता है. अगर इस फ़ील्ड को सेट नहीं किया जाता है और ExtraGuestCharges या AdditionalGuestAmounts को तय किया जाता है, तो किसी भी संख्या में रहने वाले लोगों के लिए कीमतें जनरेट की जा सकती हैं. हमारा सुझाव है कि आप <Capacity> if ExtraGuestCharges या AdditionalGuestAmounts को सेट करें, ताकि यह पक्का किया जा सके कि उन लोगों के लिए कीमतें न दिखाई जाएं जो मान्य नहीं हैं.

Transaction / PropertyDataSet / RoomData / AdultCapacity 0..1 integer किसी कमरे में फ़िज़िकली ठहर सकने वाले वयस्कों की ज़्यादा से ज़्यादा संख्या. यह वैल्यू, दर के साथ भेजी गई किसी भी NumberOfGuests वैल्यू से ज़्यादा या उसके बराबर होनी चाहिए.

<AdultCapacity> की वैल्यू, 1 और 99 के बीच की पॉज़िटिव पूर्णांक होनी चाहिए. उदाहरण के लिए, यहां देखें.

Transaction / PropertyDataSet / RoomData / ChildCapacity 0..1 integer कमरे में ज़्यादा से ज़्यादा कितने बच्चे रह सकते हैं.

<ChildCapacity> की वैल्यू, 1 से 99 के बीच का पॉज़िटिव पूर्णांक होना चाहिए. उदाहरण के लिए, यहां देखें.

Transaction / PropertyDataSet / RoomData / OccupancySettings 0..1 OccupancySettings ऐसी सेटिंग जिनसे किसी कमरे में लोगों के रहने की ज़रूरी शर्तों पर पाबंदी लगाई जा सकती है या उनमें बदलाव किया जा सकता है.

<OccupancySettings> एलिमेंट में ये चाइल्ड एलिमेंट होते हैं:

  • <MinOccupancy>: एक कमरे में कम से कम मेहमानों की संख्या. उदाहरण के लिए, अगर इसे 2 पर सेट किया जाता है, तो इस कमरे को सिर्फ़ एक मेहमान के लिए बुक नहीं किया जा सकता.

    <MinOccupancy> की वैल्यू, 1 से 99 के बीच का पॉज़िटिव पूर्णांक होना चाहिए.

  • <MinAge>: एक कमरे में ठहरने वाले सभी मेहमानों की कम से कम उम्र. उदाहरण के लिए, अगर इसे 18 पर सेट किया गया है, तो इस कमरे को सिर्फ़ उन ग्रुप के लिए बुक किया जा सकता है जिनमें सभी मेहमानों की उम्र 18 साल या इससे ज़्यादा है.

    <MinAge> की वैल्यू, 0 से 99 के बीच का कोई पॉज़िटिव पूर्णांक होना चाहिए.

<OccupancySettings>
  <MinOccupancy>2</MinOccupancy>
  <MinAge>16</MinAge>
</OccupancySettings>

सभी चाइल्ड एलिमेंट शामिल करना ज़रूरी नहीं है.

Transaction / PropertyDataSet / RoomData / PhotoURL 0..n PhotoURL कमरे या अलग-अलग सुविधाओं वाले एक तरह के कमरे की फ़ोटो के लिए यूआरएल और कैप्शन (ज़रूरी नहीं). किसी कमरे या रूम बंडल के लिए, एक से ज़्यादा <PhotoURL> की जानकारी दी जा सकती है.

यह एलिमेंट, इन चाइल्ड एलिमेंट को लेता है:

  • <URL>: फ़ोटो की जगह की जानकारी देता है. जगह की जानकारी सार्वजनिक होनी चाहिए (फ़ायरवॉल के पीछे नहीं होनी चाहिए). साथ ही, इसमें प्रोटोकॉल (http://) शामिल होना चाहिए.
  • <Caption>: इससे फ़ोटो के कैप्शन के बारे में पता चलता है. यह एलिमेंट, <Text> नाम का एक चाइल्ड एलिमेंट लेता है. इसमें दो ज़रूरी एट्रिब्यूट, Text और language होते हैं. Text एट्रिब्यूट, कैप्शन है. वहीं, language एट्रिब्यूट, दो वर्णों वाला भाषा कोड बताता है. जैसे, en.
<PhotoURL>
 <URL>http://www.example.com/image1.jpg</URL>
 <Caption>
  <Text text="A bright way to enjoy your
   mornin' cuppa tea." language="en"/>
  <Text text="Une façon lumineuse pour profiter
   de votre tasse de thé." language="fr"/>
 </Caption>
</PhotoURL>
Transaction / PropertyDataSet / RoomData / RoomFeatures 0..1 <RoomFeatures> इसमें रूम की सुविधाओं के बारे में जानकारी होती है.
Transaction / PropertyDataSet / RoomData / RoomFeatures / JapaneseHotelRoomStyle 0..1 enum

इससे जापान के होटल के कमरे की स्टाइल के बारे में पता चलता है.

मान्य मान हैं:

  • western: पश्चिमी शैली का कमरा, जिसमें बेड हैं.
  • japanese: जैपनीज़ स्टाइल का कमरा, जिसमें फ़्यूटॉन बेड हैं.
  • japanese_western: जैपनीज़ वेस्टर्न स्टाइल वाला कमरा. इसमें वेस्टर्न स्टाइल वाले बेड और जैपनीज़ स्टाइल वाले फ़ूटॉन, दोनों हैं.
Transaction / PropertyDataSet / RoomData / RoomFeatures / Beds 0..1 Object इसमें कमरे में मौजूद <Bed> की संख्या शामिल होती है. कृपया ध्यान दें कि यहां जैपनीज़ फ़्यूटॉन को नहीं गिना जाना चाहिए.

हर <Bed> में ये एट्रिब्यूट होते हैं:

  • size (ज़रूरी नहीं है): मान्य वैल्यू single, semi_double, double, queen, और king हैं.
हर <Bed> में ये चाइल्ड एलिमेंट होते हैं:
  • <Width> (ज़रूरी नहीं): इससे बिस्तर की चौड़ाई के बारे में पता चलता है. इसमें unit एट्रिब्यूट होना चाहिए और इसकी वैल्यू cm होनी चाहिए. साथ ही, इसमें number एट्रिब्यूट होना चाहिए और इसकी वैल्यू, बिस्तर की चौड़ाई के हिसाब से पूर्णांक सेंटीमीटर में होनी चाहिए.
  • <Length> (ज़रूरी नहीं): इससे बेड की लंबाई के बारे में पता चलता है. इसमें unit एट्रिब्यूट की वैल्यू cm होनी चाहिए. साथ ही, number एट्रिब्यूट में बिस्तर की लंबाई, पूर्णांक सेंटीमीटर में होनी चाहिए.
उदाहरण:
<Beds>
  <Bed size="double">
    <Width unit="cm" number="140"/>
    <Length unit="cm" number="195"/>
  </Bed>
  <Bed/> <!-- Size unknown -->
</Beds>
Transaction / PropertyDataSet / RoomData / RoomFeatures / Suite 0.. enum अगर यह कमरा सुइट है, तो यह एलिमेंट दें.
Transaction / PropertyDataSet / RoomData / RoomFeatures / Capsule 0..1 enum अगर यह कमरा कैप्सूल रूम है, तो यह एलिमेंट दें.
Transaction / PropertyDataSet / RoomData / RoomFeatures / Roomsharing 0..1 enum यह कमरा, मालिक या अन्य मेहमानों जैसे अन्य लोगों के साथ शेयर किया गया है या नहीं. मान्य वैल्यू shared और private हैं.
Transaction / PropertyDataSet / RoomData / RoomFeatures / Outdoor 0..1 enum इस एलिमेंट की वैल्यू तब दें, जब कमरा बाहर की ओर हो और उसमें दीवारें, प्लंबिंग, और तापमान कंट्रोल करने की सुविधा न हो. उदाहरण के लिए, होटल के कमरे आउटडोर लॉजिंग नहीं हैं. वहीं, कैंपसाइट आउटडोर लॉजिंग हैं, जहां मेहमान टेंट में ठहरते हैं. इसके अलावा, आरवी पार्क भी आउटडोर लॉजिंग हैं, जहां मेहमान अपने आरवी लाते हैं.
Transaction / PropertyDataSet / RoomData / RoomFeatures / MobileAccessible 0..1 enum अगर इस कमरे में व्हीलचेयर से जाया जा सकता है, तो यह एलिमेंट उपलब्ध कराएं.
Transaction / PropertyDataSet / RoomData / RoomFeatures / Smoking 0..1 enum यह कमरा, धूम्रपान करने की अनुमति वाला कमरा है या धूम्रपान करने की अनुमति नहीं वाला कमरा है. मान्य वैल्यू non_smoking और smoking हैं.
Transaction / PropertyDataSet / RoomData / RoomFeatures / BathAndToilet 0..1 Object इस कुकी में, कमरे में मौजूद बाथटब और टॉयलेट के बारे में जानकारी होती है.

यह एट्रिब्यूट:

  • relation (ज़रूरी नहीं): इससे पता चलता है कि बाथटब और टॉयलेट एक-दूसरे के साथ किस तरह रखे गए हैं. इसकी मान्य वैल्यू ये हैं: together. उदाहरण के लिए, ऐसा बाथरूम जिसमें बाथटब और टॉयलेट, दोनों एक ही कमरे में हों. इसके अलावा, separate. इसमें बाथटब और टॉयलेट, दोनों के लिए अलग-अलग जगह होती है. अगर कमरे में बाथटब और टॉयलेट, दोनों नहीं हैं, तो इस एट्रिब्यूट की वैल्यू सेट न करें.

इस एलिमेंट में ये चाइल्ड एलिमेंट शामिल किए जा सकते हैं:

  • <Bath> (ज़रूरी नहीं): इस एलिमेंट के मौजूद होने से पता चलता है कि कमरे में बाथटब है.

    ये एट्रिब्यूट हैं:

    • bathtub (वैकल्पिक): इससे पता चलता है कि बाथरूम में बाथटब है. मान्य वैल्यू 0 (या false) और 1 (या true) हैं.
    • shower (ज़रूरी नहीं): इससे पता चलता है कि बाथरूम में शावर की सुविधा है. मान्य वैल्यू 0 (या false) और 1 (या true) हैं.
  • <Toilet> (ज़रूरी नहीं): इस एलिमेंट के मौजूद होने से पता चलता है कि इस कमरे में टॉयलेट है.

    ये एट्रिब्यूट हैं:

    • electronic_bidet (ज़रूरी नहीं): इससे पता चलता है कि टॉयलेट में इलेक्ट्रॉनिक बिडेट है. मान्य वैल्यू 0 (या false) और 1 (या true) हैं.
    • mobility_accessible (ज़रूरी नहीं): इससे पता चलता है कि टॉयलेट में व्हीलचेयर लाने और ले जाने की सुविधा है. मान्य वैल्यू 0 (या false) और 1 (या true) हैं.

उदाहरण:

<BathAndToilet relation="separate">
  <Bath bathtub="1" shower="1"/>
  <Toilet
    electronic_bidet="1"
    mobility_accessible="1"/>
</BathAndToilet>
Transaction / PropertyDataSet / RoomData / RoomFeatures / OpenAirBath 0..1 enum अगर इस कमरे में खुली जगह में नहाने की सुविधा है, तो यह एलिमेंट शामिल करें.
Transaction / PropertyDataSet / RoomData / RoomFeatures / AirConditioning 0..1 enum अगर इस कमरे में एयर-कंडिशनर है, तो यह एलिमेंट दें.
Transaction / PropertyDataSet / RoomData / RoomFeatures / Balcony 0..1 enum अगर इस कमरे में बालकनी या बरामदा है, तो यह एलिमेंट दें.
Transaction / PropertyDataSet / RoomData / RoomFeatures / Views 0..1 Object मान्य विकल्पों में ये शामिल हैं:

<AirportView/>
<BayView/>
<BeachView>/>
<CastleView/>
<CityView/>
<CountrysideView/>
<CourtyardView/>
<DuneView/>
<ForestView/>
<GardenView/>
<GolfCourseView/>
<HarborView/>
<LagoonView/>
<LakeView/>
<MarinaView/>
<MountainView/>
<NatureView/>
<OceanView/>
<ParkView/>
<PartialOceanView/>
<PisteView/>
<PoolView/>
<PyramidView/>
<RiverView/>
<StreetView/>

Transaction / PropertyDataSet / PackageData 0..n PackageData

यह एक कंटेनर है. इसमें ऐसे एलिमेंट होते हैं जो किराये की सुविधाओं और शर्तों के बारे में बताते हैं. ये शर्तें, कमरे की जानकारी में शामिल नहीं होती हैं.

ध्यान दें: <RoomData> या <PackageData> में से, कम से कम एक का होना ज़रूरी है.

Transaction / PropertyDataSet / PackageData / PackageID 1 string इन मैसेज में मौजूद PackageID, OTA_HotelRateAmountNotifRQ और OTA_HotelAvailNotifRQ मैसेज में मौजूद RatePlanCode से मेल खाता है.
Transaction / PropertyDataSet / PackageData / Name 1 Name एक या इससे ज़्यादा भाषाओं में पैकेज के नाम के लिए कंटेनर.
Transaction / PropertyDataSet / PackageData / Name / Text 1..n Text इससे किसी पैकेज का नाम एक भाषा में पता चलता है.
Transaction / PropertyDataSet / PackageData / Name / Text / @text 1..n string language एट्रिब्यूट में बताई गई भाषा में पैकेज का नाम.
Transaction / PropertyDataSet / PackageData / Description 1 Description एक या उससे ज़्यादा भाषाओं में पैकेज के ब्यौरे के लिए कंटेनर.
Transaction / PropertyDataSet / PackageData / Description / Text 1..n Text किसी एक भाषा में पैकेज के ब्यौरे के बारे में बताता है.
Transaction / PropertyDataSet / PackageData / Description / Text / @text 1..n string language एट्रिब्यूट में बताई गई भाषा में पैकेज का ब्यौरा.
Transaction / PropertyDataSet / PackageData / Description / Text / @language 1..n string दो अक्षरों वाला भाषा कोड.
Transaction / PropertyDataSet / PackageData / AllowableRoomIDs 0..1 AllowableRoomIDs <AllowableRoomID> एलिमेंट के लिए एक कंटेनर.

अगर <AllowableRoomIDs> एट्रिब्यूट की वैल्यू दी गई है, तो पैरंट <PackageData> एलिमेंट में <PackageID> एट्रिब्यूट से पहचाने गए किराया प्लान को सिर्फ़ <AllowableRoomID> एलिमेंट से तय किए गए कमरों के टाइप के साथ जोड़ा जा सकता है.

अगर <AllowableRoomIDs> नहीं दिया गया है, तो पैरंट <PackageData> एलिमेंट में मौजूद <PackageID> से पहचाने गए किराया प्लान को किसी भी कमरे के टाइप के साथ जोड़ा जा सकता है.

<AllowablePackageIDs> या <AllowableRoomIDs> में से किसी एक का इस्तेमाल करें, दोनों का नहीं.

Transaction / PropertyDataSet / PackageData / AllowableRoomIDs / AllowableRoomID 1..n AllowableRoomID इससे उस रूम टाइप का RoomID पता चलता है जिसे इस किराया प्लान के साथ जोड़ा जा सकता है. कमरे का टाइप, <RoomData> एलिमेंट में तय किया जाता है.
Transaction / PropertyDataSet / PackageData / MilesIncluded 0..1 MilesIncluded रेट प्लान या पैकेज के हिसाब से, पैकेज में लॉयल्टी पॉइंट की जानकारी जोड़ें. <PackageData> एलिमेंट में मौजूद <MilesIncluded> एलिमेंट की जानकारी दें. यह एलिमेंट, किराया प्लान तय करता है. <MilesIncluded> में यह चाइल्ड एलिमेंट मौजूद है:
  • LoyaltyCampaignID: यह एक यूनीक आईडी है. इससे उस लॉयल्टी कैंपेन की पहचान होती है जिसे Google के साथ कॉन्फ़िगर और अपडेट किया गया था. इससे होटल के किराये में लॉयल्टी पॉइंट जुड़ जाते हैं.

    <MilesIncluded> एलिमेंट को शामिल करने के लिए, लॉयल्टी कैंपेन के कॉन्फ़िगरेशन में कैंपेन आईडी कॉन्फ़िगर किया जाना चाहिए. Google, नतीजों में लॉयल्टी पॉइंट का इस्तेमाल कैसे करता है, इस बारे में खास जानकारी, लॉयल्टी कैंपेन के कॉन्फ़िगरेशन से तय होती है.

    <MilesIncluded>
      <LoyaltyCampaignID>my_campaign</LoyaltyCampaignID>
    </MilesIncluded>

    ध्यान दें: कुछ मामलों में, <MilesIncluded> एलिमेंट के तहत <NumberOfMiles> को शामिल किया जा सकता है. इससे यह तय किया जा सकता है कि प्लान के लिए हमेशा तय किए गए पॉइंट मिलेंगे, भले ही यात्रा कार्यक्रम कुछ भी हो. <PackageData> में <MilesIncluded> के बारे में ज़्यादा जानें.

Transaction / PropertyDataSet / PackageData / Refundable 0..1 Refundable इससे किराये को पूरी तरह से रिफ़ंड किए जाने या रद्द किए जाने के तौर पर लिस्ट किया जा सकता है. अगर यह जानकारी नहीं दी जाती है, तो रिफ़ंड के बारे में कोई जानकारी नहीं दिखती.

ध्यान दें: हमारा सुझाव है कि आप सभी एट्रिब्यूट सेट करें. जब एक या उससे ज़्यादा एट्रिब्यूट सेट नहीं किए जाते हैं, तब फ़ीड की स्थिति के बारे में चेतावनी वाला मैसेज जनरेट होता है.

अगर आपने कोई एट्रिब्यूट सेट नहीं किया है, तो किराया, रिफ़ंड किए जाने वाले किराये के तौर पर नहीं दिखेगा.

एट्रिब्यूट सेट करते समय, इन बातों का ध्यान रखें:

  • अगर available या refundable_until_days सेट नहीं किया गया है, तो किराया रिफ़ंड किए जाने वाले किराये के तौर पर नहीं दिखता.
  • अगर available की वैल्यू 0 या false है, तो अन्य एट्रिब्यूट को अनदेखा कर दिया जाता है. अगर अन्य एट्रिब्यूट में से किसी एक या दोनों की वैल्यू सेट की गई है, तब भी किराया, रिफ़ंड किया जा सकने वाला किराया नहीं दिखता.
Transaction / PropertyDataSet / PackageData / Refundable / @available 1 boolean (ज़रूरी है) अगर किराये के हिसाब से पूरा रिफ़ंड दिया जा सकता है, तो इसे 1 या true पर सेट करें. अगर पूरा रिफ़ंड नहीं दिया जा सकता, तो इसे 0 या false पर सेट करें.
Transaction / PropertyDataSet / PackageData / Refundable / @refundable_until_days 0..1 integer (अगर available true है, तो यह ज़रूरी है) इससे यह पता चलता है कि चेक-इन से कितने दिन पहले तक, पूरा रिफ़ंड पाने का अनुरोध किया जा सकता है. refundable_until_days की वैल्यू, 0 और 330 के बीच का कोई पूर्णांक होना चाहिए.
Transaction / PropertyDataSet / PackageData / Refundable / @refundable_until_time 0.. Time (अगर available true है, तो यह विकल्प इस्तेमाल करने का सुझाव दिया जाता है) इसमें होटल के स्थानीय समय के हिसाब से, रिफ़ंड की तारीख और समय की पूरी जानकारी होती है. साथ ही, इसमें पूरे पैसे रिफ़ंड होने की बात शामिल होती है. इसे refundable_until_days के साथ जोड़ा जा सकता है. उदाहरण के लिए, यह बताने के लिए कि "चेक-इन से दो दिन पहले शाम 4:00 बजे तक रिफ़ंड की सुविधा उपलब्ध है". अगर refundable_until_time सेट नहीं है, तो वैल्यू डिफ़ॉल्ट रूप से आधी रात पर सेट हो जाती है.
Transaction / PropertyDataSet / PackageData / BreakfastIncluded 0..1 boolean इससे पता चलता है कि इस तरह के कमरे के किराये में नाश्ता शामिल है या नहीं. मान्य वैल्यू 0 (या false) और 1 (या true) हैं.

हमारा सुझाव है कि आप <BreakfastIncluded> के बजाय <Meals> का इस्तेमाल करें.

Transaction / PropertyDataSet / PackageData / CheckinTime 0..1 Time होटल के स्थानीय समय के हिसाब से, चेक-इन करने का सबसे पहला समय. समय 24:00 से कम होना चाहिए.
Transaction / PropertyDataSet / PackageData / CheckoutTime 0..1 Time होटल के स्थानीय समय के हिसाब से, चेक आउट करने का सबसे नया समय.
Transaction / PropertyDataSet / PackageData / InternetIncluded 0..1 boolean इससे पता चलता है कि क्या कमरे के किराये में इंटरनेट की मुफ़्त सुविधा शामिल है. वहीं, अन्य कमरों में यह सुविधा शामिल नहीं है. इस एलिमेंट को ऐसे होटल के लिए सेट न करें जो सभी कमरों में इंटरनेट की सुविधा मुफ़्त में देता है. यह एलिमेंट, कमरे में मौजूद तार वाले इंटरनेट या मेहमानों के कमरों में उपलब्ध न होने वाले वायरलेस इंटरनेट पर लागू नहीं होता. मान्य वैल्यू 0 (या false) और 1 (या true) हैं.
Transaction / PropertyDataSet / PackageData / Meals 0..1 Object इस पैकेज में शामिल खाने-पीने की चीज़ों के बारे में जानकारी होती है.

<Meals> एलिमेंट में दो वैकल्पिक चाइल्ड एलिमेंट, <Breakfast> और <Dinner> होते हैं. इनमें ये एट्रिब्यूट होते हैं:

  • included (ज़रूरी है): अगर किराये में नाश्ता/रात का खाना शामिल है, तो इसे 1 (या true) पर सेट करें. अगर किराये में नाश्ता/रात का खाना शामिल नहीं है, तो इसे 0 या false पर सेट करें.
  • in_room (ज़रूरी नहीं): अगर मेहमानों के पास अपने कमरे में नाश्ता/रात का खाना खाने का विकल्प है, तो इसे 1 (या true) पर सेट करें. अगर मेहमानों के पास यह विकल्प नहीं है, तो इसे 0 (या false) पर सेट करें.
  • in_private_space (ज़रूरी नहीं): अगर मेहमानों के पास नाश्ता/रात का खाना खाने का विकल्प है, तो 1 पर सेट करें. हालांकि, उन्हें उस कमरे में नाश्ता/रात का खाना खाने की अनुमति नहीं होनी चाहिए जिसमें वे ठहरे हैं. साथ ही, उन्हें ऐसी जगह पर नाश्ता/रात का खाना खाने की अनुमति होनी चाहिए जहां वे दूसरे मेहमानों से संपर्क से बच सकें. अगर ऐसा नहीं है, तो 0 (या false) पर सेट करें.true
  • buffet (ज़रूरी नहीं): अगर नाश्ता/रात का खाना बुफ़े (जितना जी चाहे, खाएं) के तौर पर परोसा जाता है, तो इसे 1 (या true) पर सेट करें. ऐसा न होने पर, इसे 0 (या false) पर सेट करें.

ज़रूरी नहीं है कि इन एट्रिब्यूट का इस्तेमाल किया जाए. इनका इस्तेमाल सिर्फ़ तब किया जाता है, जब included की वैल्यू सही हो.

भोजन के फ़िल्टर (no meals, breakfast only, dinner only, और breakfast and dinner) का इस्तेमाल करने के लिए, <Breakfast> और <Dinner>, दोनों के लिए included एट्रिब्यूट की वैल्यू देनी होगी.

Transaction / PropertyDataSet / PackageData / ParkingIncluded 0..1 boolean क्या कमरे के साथ पार्किंग की सुविधा बिना किसी शुल्क के मिलती है. ऐसा तब होता है, जब होटल में पार्किंग की सुविधा के लिए शुल्क लिया जाता है. अगर होटल में पार्किंग की सुविधा मुफ़्त है, तो इस एलिमेंट के लिए कोई वैल्यू न डालें. मान्य वैल्यू 0 (या false) और 1 (या true) हैं. डिफ़ॉल्ट वैल्यू false है.
Transaction / PropertyDataSet / PackageData / PhotoURL 0..1 Object (यह <RoomData> में मौजूद <PhotoURL> जैसा ही है, लेकिन यह पैकेज (जैसे, खाने की फ़ोटो) के लिए है.)

उदाहरण

कमरे और पैकेज का डेटा

यहां लेन-देन (प्रॉपर्टी का डेटा) मैसेज में, प्रॉपर्टी के कमरे और पैकेज के डेटा को तय करने का एक बुनियादी उदाहरण दिया गया है. overlay एट्रिब्यूट का इस्तेमाल यह पक्का करने के लिए किया जाता है कि अगर कोई डेटा पहले से मौजूद है, तो मौजूदा डेटा मिटा दिया जाए और उसकी जगह इस मैसेज में मौजूद डेटा को इस्तेमाल किया जाए:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-05-18T16:20:00-04:00"
             id="12345678"
             partner="partner_key">
  <PropertyDataSet action="overlay">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <Name>
        <Text text="King" language="en"/>
      </Name>
      <Description>
        <Text text="Room with a king bed" language="en"/>
      </Description>
      <Capacity>2</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/image.jpg</URL>
        <Caption>
          <Text text="Room with a king bed" language="en"/>
        </Caption>
      </PhotoURL>
    </RoomData>
    <RoomData>
      <RoomID>RoomID_2</RoomID>
      <Name>
        <Text text="Double" language="en"/>
      </Name>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
    <PackageData>
      <PackageID>PackageID_1</PackageID>
      <Name>
        <Text text="Standard" language="en"/>
      </Name>
      <Description>
        <Text text="Standard rate" language="en"/>
      </Description>
      <MilesIncluded>
        <LoyaltyCampaignID>my_campaign</LoyaltyCampaignID>
      </MilesIncluded>
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>0</BreakfastIncluded>
    </PackageData>
    <PackageData>
      <PackageID>PackageID_2</PackageID>
      <Name>
        <Text text="Free Breakfast" language="en"/>
      </Name>
      <Description>
        <Text text="Free breakfast rate" language="en"/>
      </Description>
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>1</BreakfastIncluded>
    </PackageData>
  </PropertyDataSet>
</Transaction>

कमरे का टाइप जोड़ना

यहां मौजूदा <Transaction> डेटा में कमरे का टाइप और पैकेज जोड़ने का उदाहरण दिया गया है:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-07-18T16:20:00-04:00"
             id="12345678"
             partner="partner_key">
  <PropertyDataSet action="delta">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>RoomID_3</RoomID>
      <Name>
        <Text text="Queen" language="en"/>
      </Name>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
    <PackageData>
      <PackageID>PackageID_3</PackageID>
      <Name>
        <Text text="Non-Refundable" language="en"/>
      </Name>
      <!-- Additional PackageData child elements omitted. -->
      <Refundable available="false"/>
    </PackageData>
  </PropertyDataSet>
</Transaction>

कमरे के टाइप हटाना

यहां मौजूदा कमरों के टाइप और पैकेज हटाने का तरीका बताया गया है. इस उदाहरण में, अगर "कमरे और पैकेज का डेटा" और "कमरे का टाइप जोड़ें" में मौजूद मैसेज, Google को पहले ही भेज दिए गए थे, तो Google को दिखाया गया मैसेज मिलने के बाद, King और Double रूम टाइप मौजूद नहीं रहेंगे. ध्यान दें कि पैकेज का डेटा हटाने से, पूरे रेट प्लान पर असर पड़ता है. यह असर, लेन-देन (प्रॉपर्टी का डेटा), OTA_HotelRateAmountNotifRQ, और OTA_HotelAvailNotifRQ मैसेज (एक ही PackageID वैल्यू को रेफ़रंस करके) में दिखता है. इसलिए, अन्य मैसेज टाइप का इस्तेमाल करके किए गए अपडेट में यह दिखाना पड़ सकता है कि PackageID_2 और PackageID_3 अब यहां तय नहीं किए गए हैं.

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-08-18T16:20:00-04:00"
             id="12345678"
             partner="partner_key">
  <PropertyDataSet action="overlay">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <Name>
        <Text text="Queen" language="en"/>
      </Name>
      <!-- Additional RoomData child elements omitted. -->
      <Capacity>2</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/image.jpg</URL>
        <Caption>
          <Text text="Room with a queen bed" language="en"/>
        </Caption>
      </PhotoURL>
    </RoomData>
    <PackageData>
      <PackageID>PackageID_1</PackageID>
      <Name>
        <Text text="Refundable" language="en"/>
      </Name>
      <!-- Additional PackageData child elements omitted. -->
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>0</BreakfastIncluded>
    </PackageData>
  </PropertyDataSet>
</Transaction>


किराये के प्लान पर पाबंदी लगाना

यहां दिए गए उदाहरण में, <AllowablePackageIDs> एलिमेंट का इस्तेमाल करके, किसी कमरे के टाइप के लिए अनुमति वाले किराये के प्लान को सीमित करने का तरीका बताया गया है. इस उदाहरण में, Queen रूम टाइप (RoomID_2) को सिर्फ़ PackageID_1 के तौर पर पहचाने गए पैकेज और किराये के प्लान के साथ जोड़ा जा सकता है.

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-12-18T16:20:00-04:00"
             id="12345678"
             partner="partner_key">
  <PropertyDataSet action="overlay">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <Name>
        <Text text="King" language="en"/>
      </Name>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
    <RoomData>
      <RoomID>RoomID_2</RoomID>
      <Name>
        <Text text="Queen" language="en"/>
      </Name>
      <AllowablePackageIDs>
        <AllowablePackageID>PackageID_1</AllowablePackageID>
      </AllowablePackageIDs>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
    <PackageData>
      <PackageID>PackageID_1</PackageID>
      <Name>
        <Text text="Standard" language="en"/>
      </Name>
      <!-- Additional PackageData child elements omitted. -->
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>0</BreakfastIncluded>
    </PackageData>
    <PackageData>
      <PackageID>PackageID_2</PackageID>
      <Name>
        <Text text="Free Breakfast" language="en"/>
      </Name>
      <!-- Additional PackageData child elements omitted. -->
      <Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
      <BreakfastIncluded>1</BreakfastIncluded>
    </PackageData>
  </PropertyDataSet>
</Transaction>

कमरे की क्षमता सीमित करना

कमरे की क्षमता पर पाबंदियां लगाने के लिए, <Capacity>, <AdultCapacity>, <ChildCapacity> एलिमेंट इस्तेमाल करने का तरीका यहां बताया गया है.

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-12-18T16:20:00-04:00"
             id="12345678"
             partner="partner_key">
  <PropertyDataSet action="overlay">
    <Property>Property_1</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <Name>
        <Text text="Double" language="en"/>
      </Name>
      <Capacity>4</Capacity>
      <AdultCapacity>4</AdultCapacity>
      <ChildCapacity>3</ChildCapacity>
      <!-- Additional RoomData child elements omitted. -->
    </RoomData>
  </PropertyDataSet>
</Transaction>

डबल रूम टाइप (RoomID_1) में कुल चार मेहमान ठहर सकते हैं. इसके अलावा, इसमें चार वयस्क और तीन बच्चे हो सकते हैं. इस कमरे को बुक करने के लिए, क्षमता से जुड़ी तीनों ज़रूरी शर्तें पूरी होनी चाहिए. इस कॉन्फ़िगरेशन में, दो बेड वाले एक सामान्य कमरे को दिखाया गया है. हर बेड पर दो लोग सो सकते हैं. बच्चों की संख्या, कुल क्षमता से एक कम है, क्योंकि कमरे में कम से कम एक वयस्क का होना ज़रूरी है.

<RoomFeatures> और खाने के साथ ज़्यादा उदाहरण

JapaneseHotelRoomStyle की कोई डिफ़ॉल्ट वैल्यू नहीं होती. किसी वैल्यू को शामिल न करने पर, एक्सएमएल में कोई गड़बड़ी नहीं होती. हालांकि, जब कोई व्यक्ति कमरे के स्टाइल या बेड के हिसाब से फ़िल्टर करता है, तब आपकी लिस्टिंग खोज के नतीजों में नहीं दिखती.

दो सिंगल बेड

यहां दिए गए उदाहरण में, <RoomFeatures> को इस्तेमाल करने का तरीका बताया गया है:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>western</JapaneseHotelRoomStyle>
        <Beds> <!-- Two single beds -->
          <Bed size="single">
            <Width unit="cm" number="97"/>
            <Length unit="cm" number="195"/>
          </Bed>
          <Bed size="single">
            <Width unit="cm" number="97"/>
            <Length unit="cm" number="195"/>
          </Bed>
        </Beds>
        <Suite/>
        <Capsule/>
        <Roomsharing>private</Roomsharing>
        <Outdoor/>
        <MobilityAccessible/>
        <Smoking>non_smoking</Smoking>
        <BathAndToilet relation="separate">
          <Bath bathtub="1" shower="1"/>
          <Toilet electronic_bidet="1" mobility_accessible="1"/>
        </BathAndToilet>
        <OpenAirBath/>
        <AirConditioning/>
        <Balcony/>
        <Views>
          <LakeView/>
          <MarinaView/>
          <BeachView/>
          <ForestView/>
          <MountainView/>
          <NatureView/>
        </Views>
      </RoomFeatures>
    </RoomData>
  </PropertyDataSet>
</Transaction>

दो डबल बेड

यहां western स्टाइल वाले ऐसे कमरे का उदाहरण दिया गया है जिसमें दो double बेड हैं.

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>western</JapaneseHotelRoomStyle>
        <Beds> <!-- Two double beds-->
          <Bed size="double"></Bed>
          <Bed size="double"></Bed>
        </Beds>
      </RoomFeatures>
    </RoomData>
  </PropertyDataSet>
</Transaction>

बिना बेड वाला जैपनीज़ स्टाइल का कमरा

बिना बिस्तर वाले जापानी स्टाइल के कमरे का उदाहरण यहां दिया गया है. japanese स्टाइल वाले कमरे के लिए, बिस्तर की जानकारी देना ज़रूरी नहीं है.

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>japanese</JapaneseHotelRoomStyle>
      </RoomFeatures>
    </RoomData>
  </PropertyDataSet>
</Transaction>

जैपनीज़ वेस्टर्न रूम, जिसमें बेड है

यहां king साइज़ के बेड वाले japanese_western स्टाइल के कमरे का उदाहरण दिया गया है.

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>japanese_western</JapaneseHotelRoomStyle>
        <Beds>
          <Bed size="king"></Bed>
        </Beds>
      </RoomFeatures>
    </RoomData>
  </PropertyDataSet>
</Transaction>

अगर पार्टनर के पास japanese_western rooms में बेड की संख्या की जानकारी नहीं है, तो यहां दिया गया उदाहरण देखें:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <RoomData>
      <RoomID>RoomID_1</RoomID>
      <RoomFeatures>
        <JapaneseHotelRoomStyle>japanese_western</JapaneseHotelRoomStyle>
      </RoomFeatures>
    </RoomData>
  </PropertyDataSet>
</Transaction>


खाना

यहां दिए गए उदाहरण में, खाने-पीने की चीज़ों, फ़ोटो, और चेक-इन और चेक-आउट के समय के लिए, कमरे और पैकेज का मेटाडेटा तय किया गया है:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <PackageData>
      <PackageID>PackageID_1</PackageID>
      <Name>
        <Text text="Meals Included" language="en"/>
      </Name>
      <PhotoURL>
        <Caption>
          <Text text="Breakfast" language="en"/>
          <Text text="朝食" language="ja"/>
        </Caption>
        <URL>http://example.com/static/bar/image1234.jpg</URL>
      </PhotoURL>
      <Meals>
        <!-- Guests can choose to have breakfast in their room or in another
        space to avoid contact with other guests. -->
        <Breakfast included="1" in_room="1" in_private_space="1"/>
        <Dinner included="1" buffet="1"/>
      </Meals>
      <CheckinTime>15:00</CheckinTime>
      <CheckoutTime>11:00</CheckoutTime>
    </PackageData>
  </PropertyDataSet>
</Transaction>

सिर्फ़ नाश्ता शामिल है

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
  <PropertyDataSet>
    <Property>1234</Property>
    <PackageData>
      <PackageID>PackageID_1</PackageID>
      <Name>
        <Text text="Breakfast Included" language="en"/>
      </Name>
      <PhotoURL>
        <Caption>
          <Text text="Breakfast" language="en"/>
          <Text text="朝食" language="ja"/>
        </Caption>
        <URL>http://example.com/static/bar/image1234.jpg</URL>
      </PhotoURL>
      <Meals>
        <Breakfast included="true"/>
        <!-- Dinner not included needs to be explicitly specified -->
        <Dinner included="false"/>
      </Meals>
      <CheckinTime>15:00</CheckinTime>
      <CheckoutTime>11:00</CheckoutTime>
    </PackageData>
  </PropertyDataSet>
</Transaction>

जवाब

सिंटैक्स

TransactionResponse (Property Data) मैसेज में इस सिंटैक्स का इस्तेमाल किया जाता है:

<?xml version="1.0" encoding="UTF-8"?>
<TransactionResponse timestamp="timestamp"
                     id="message_ID"
                     partner="partner_key">
  <!-- Either Success or Issues will be populated. -->
  <Success/>
  <Issues>
    <Issue code="issue_code" status="issue_type">issue_description</Issue>
  </Issues>
</TransactionResponse>

एलिमेंट और एट्रिब्यूट

TransactionResponse (Property Data) मैसेज में ये एलिमेंट और एट्रिब्यूट शामिल होते हैं:

Element / @Attribute आवृत्तियां टाइप ब्यौरा
TransactionResponse 1 Complex element यह रूट एलिमेंट है. इससे पता चलता है कि लेन-देन के अनुरोध का मैसेज मिला या नहीं. अगर मिला, तो उसमें कोई समस्या है या नहीं.
TransactionResponse / @timestamp 1 DateTime इस मैसेज को बनाने की तारीख और समय.
TransactionResponse / @id 1 string लेन-देन से जुड़े मैसेज का यूनीक आइडेंटिफ़ायर.
TransactionResponse / @partner 1 string यह मैसेज किस पार्टनर खाते के लिए है.
TransactionResponse / Success 0..1 Success इससे पता चलता है कि लेन-देन के मैसेज को बिना किसी चेतावनी, गड़बड़ी या समस्या के प्रोसेस किया गया है.

हर मैसेज में <Success> या <Issues> मौजूद होता है.

TransactionResponse / Issues 0..1 Issues यह एक कंटेनर है. इसमें लेन-देन के मैसेज को प्रोसेस करते समय हुई एक या उससे ज़्यादा समस्याओं की जानकारी होती है.

हर मैसेज में <Success> या <Issues> मौजूद होता है.

TransactionResponse / Issues / Issue 1..n Issue लेन-देन के मैसेज को प्रोसेस करते समय मिली किसी चेतावनी, गड़बड़ी या समस्या की जानकारी. इन समस्याओं के बारे में जानकारी, फ़ीड की स्थिति से जुड़ी गड़बड़ी के मैसेज में देखी जा सकती है.
TransactionResponse / Issues / Issue / @code 1 integer समस्या के लिए आइडेंटिफ़ायर.
TransactionResponse / Issues / Issue / @status 1 enum

समस्या किस तरह की है.

मान्य वैल्यू warning, error, और failure हैं.

उदाहरण

पुष्टि हो गई

यहां लेन-देन के मैसेज को प्रोसेस करने के बाद मिला जवाब दिया गया है.

<?xml version="1.0" encoding="UTF-8"?>
<TransactionResponse timestamp="2020-05-18T16:20:00-04:00"
                     id="12345678"
                     partner="partner_key">
  <Success/>
</TransactionResponse>

समस्याएं

यहां लेन-देन वाले मैसेज का जवाब दिया गया है. हालांकि, गड़बड़ियों की वजह से इसे प्रोसेस नहीं किया जा सका.

<?xml version="1.0" encoding="UTF-8"?>
<TransactionResponse timestamp="2020-05-18T16:20:00-04:00"
                     id="12345678"
                     partner="partner_key">
  <Issues>
    <Issue code="1001" status="error">Example</Issue>
  </Issues>
</TransactionResponse>