इस पेज पर, एक्सएमएल पर आधारित लेन-देन के मैसेज के बारे में जानकारी दी गई है.
<Transaction>
लेन-देन के मैसेज का रूट एलिमेंट <Transaction>
है. यह एक कंटेनर है. इसमें कमरों और पैकेज के बारे में जानकारी दी जाती है. साथ ही, कमरों और पैकेज के किराये और उनकी उपलब्धता के बारे में भी बताया जाता है.
<Transaction>
एलिमेंट, लेन-देन के मैसेज की एक्सएमएल हैरारकी में यहां दिखता है:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
<Transaction>
को रूट एलिमेंट के तौर पर इस्तेमाल करने वाले मैसेज के लिए, कम से कम एक चाइल्ड एलिमेंट होना ज़रूरी है. लेन-देन से जुड़े मैसेज में कितने भी चाइल्ड एलिमेंट हो सकते हैं. हालांकि, मैसेज का कुल साइज़ 100 एमबी से ज़्यादा नहीं होना चाहिए.
सिंटैक्स
<Transaction>
एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="timestamp" id="transaction_ID">
<!-- Defines data about a room or package (Room Bundle) -->
<PropertyDataSet>
...
</PropertyDataSet>
<!-- Updates/sets prices and availability for rooms and Room Bundles -->
<!-- (Also removes itineraries from inventory) -->
<Result>
...
</Result>
</Transaction>
विशेषताएं
<Transaction>
एलिमेंट में ये एट्रिब्यूट होते हैं:
एट्रिब्यूट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
id | Required | स्ट्रिंग | हर लेन-देन के मैसेज के लिए यूनीक आइडेंटिफ़ायर. |
partner | Optional | string | वह पार्टनर खाता जिसके लिए लेन-देन से जुड़ी जानकारी देने वाला मैसेज भेजा गया है. आम तौर पर, इसका इस्तेमाल तब किया जाता है, जब आपका बैकएंड कई पार्टनर खातों के लिए कीमत की जानकारी वाले फ़ीड उपलब्ध कराता है. यह स्ट्रिंग वैल्यू, Hotel Center में खाते की सेटिंग वाले पेज पर मौजूद "पार्टनर की" वैल्यू होती है. |
timestamp | Required | DateTime | वह समय जब लेन-देन का मैसेज भेजा गया था. पिछले 24 घंटों में भेजे गए किसी भी मैसेज को प्रोसेस किया जाएगा. इसके अलावा, बाकी मैसेज खारिज कर दिए जाएंगे. मैसेज, |
चाइल्ड एलीमेंट
<Transaction>
एलिमेंट में ये चाइल्ड एलिमेंट होते हैं:
चाइल्ड एलिमेंट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
<PropertyDataSet> | Optional* | <PropertyDataSet> |
इसमें किसी खास रूम और रूम बंडल के बारे में बताया जाता है. आम तौर पर, इस एलिमेंट का इस्तेमाल अलग लेन-देन के मैसेज में किया जाता है. इससे रूम बंडल के लिए शेयर की गई वैल्यू तय की जा सकती हैं. साथ ही, लेन-देन के मैसेज का साइज़ कम किया जा सकता है. |
<Result> | Optional* | <Result> |
किसी कमरे की यात्रा की योजना या |
* <PropertyDataSet> या <Result> में से कम से कम एक का होना ज़रूरी है. |
उदाहरण
कमरे का डेटा
यहां दिए गए उदाहरण में, लेन-देन के मैसेज में कमरे का डेटा बताया गया है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>5440OF</RoomID>
<Name>
<Text text="Single King Bed Room" language="en"/>
<Text text="Simple Lit de Roi" language="fr"/>
</Name>
<Description>
<Text text="One king bed with pillowtop mattresses, 300-thread-count linens,
and down comforters (bedspreads). City view. 300 square feet. Desk with
rolling chair. Multi-line phone with voice mail. Cable/satellite TV with
complimentary HBO and pay movies." language="en"/>
<Text text="Un très grand lit avec matelas à plateau-coussin, ..." language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Bathroom View" language="en"/>
<Text text="La salle de baines" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<Capacity>4</Capacity>
</RoomData>
</PropertyDataSet>
</Transaction>
किराये की जानकारी
इस उदाहरण में, लेन-देन के मैसेज में कीमत की जानकारी दी गई है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-23T16:20:00-04:00" id="42">
<Result>
<Property>060773</Property>
<RoomID>RoomType101</RoomID>
<PackageID>Package101</PackageID>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">278.33</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="site1"/>
</AllowablePointsOfSale>
</Result>
<Result>
<Property>052213</Property>
<RoomID>RoomType101</RoomID>
<PackageID>Package101</PackageID>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">299.98</Baserate>
<Tax currency="USD">26.42</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="otto"/>
<PointOfSale id="simon"/>
</AllowablePointsOfSale>
<MilesIncluded>
<NumberOfMiles>1200</NumberOfMiles>
<Provider>
<Text language="en" text="United Airlines"/>
</Provider>
<LoyaltyCampaignID>my_campaign</LoyaltyCampaignID>
</MilesIncluded>
</Result>
</Transaction>
एक रात के लिए किराया
इस उदाहरण में, 7 जून, 2023 से शुरू होने वाली एक से सात रातों के लिए, किराये का डेटा दिखाया गया है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-08-24T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">209.99</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">419.98</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>3</Nights>
<Baserate currency="USD">614.97</Baserate>
<Tax currency="USD">21.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>4</Nights>
<Baserate currency="USD">819.96</Baserate>
<Tax currency="USD">21.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>5</Nights>
<Baserate currency="USD">999.95</Baserate>
<Tax currency="USD">21.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>6</Nights>
<Baserate currency="USD">1193.94</Baserate>
<Tax currency="USD">21.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>7</Nights>
<Baserate currency="USD">1259.93</Baserate>
<Tax currency="USD">21.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
</Transaction>
मूल और खास किराया
इस उदाहरण में, लेन-देन का ऐसा मैसेज दिखाया गया है जिसमें मूल किराया और शर्त के हिसाब से तय किया गया किराया शामिल है:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">200.00</Baserate>
<Tax currency="USD">20.00</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<Rates>
<!-- The rate_rule_id is required when using conditional rates -->
<Rate rate_rule_id="mobile">
<!-- Override base rate and taxes for conditional rates -->
<Baserate currency="USD">180.00</Baserate>
<Tax currency="USD">18.00</Tax>
</Rate>
</Rates>
</Result>
</Transaction>
इन्वेंट्री हटाना
यहां दिए गए उदाहरण में, किसी होटल की इन्वेंट्री से कई इन्वेंट्री (अलग-अलग तारीखों के लिए एक रात का स्टे) हटाई गई हैं:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-05-23T16:20:00-04:00" id="42">
<Result>
<Property>1123581321</Property>
<Checkin>2023-05-23</Checkin>
<Nights>1</Nights>
<Unavailable>
<NoVacancy/>
</Unavailable>
<Tax currency="USD">0</Tax>
<OtherFees currency="USD">0</OtherFees>
</Result>
<Result>
<Property>1123581321</Property>
<Checkin>2023-05-24</Checkin>
<Nights>1</Nights>
<Unavailable>
<NoVacancy/>
</Unavailable>
<Tax currency="USD">0</Tax>
<OtherFees currency="USD">0</OtherFees>
</Result>
<!---Sending <Baserate> is optional with <Unavailable> -->
<Result>
<Property>1123581321</Property>
<Checkin>2023-05-25</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">-1</Baserate>
<Unavailable>
<NoVacancy/>
</Unavailable>
<Tax currency="USD">0</Tax>
<OtherFees currency="USD">0</OtherFees>
</Result>
</Transaction>
<PropertyDataSet>
<Transaction>
मैसेज में, कमरे और पैकेज (या रूम बंडल) की जानकारी के लिए कंटेनर. होटल के लिए सेट की गई वैल्यू, पार्टनर के लिए सेट की गई वैल्यू को बदल देती हैं.
Google इस जानकारी को सेव करता है, ताकि आपको हर बार किराये के अपडेट भेजते समय इसे तय न करना पड़े.
<PropertyDataSet>
एलिमेंट, लेन-देन के मैसेज की एक्सएमएल हैरारकी में यहां दिखता है:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
ज़्यादा जानकारी के लिए, रूम बंडल का मेटाडेटा देखें.
सिंटैक्स
<PropertyDataSet>
एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <PropertyDataSet> <!-- (Required) ID that matches the Hotel List Feed --> <Property>hotel_ID</Property> <!-- (Optional) Defines metadata about a room --> <RoomData> ... </RoomData> <!-- (Optional) Defines package metadata to be paired with rooms (Room Bundles) --> <PackageData> ... </PackageData> </PropertyDataSet> ... </Transaction>
विशेषताएं
<PropertyDataSet>
एलिमेंट में कोई एट्रिब्यूट नहीं है.
चाइल्ड एलीमेंट
<PropertyDataSet>
एलिमेंट में ये चाइल्ड एलिमेंट होते हैं:
चाइल्ड एलिमेंट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
<PackageData> | Optional* | <PackageData> |
यह कुकी, रूम बंडल के बारे में बताती है. यह डेटा किसी पार्टनर और होटल से जुड़ा है, लेकिन किसी यात्रा कार्यक्रम से नहीं. यह एलिमेंट <RoomData> से मिलता-जुलता है. हालांकि, इसमें ऐसी सुविधाएं और शर्तें बताई गई हैं जो कमरे की जानकारी में शामिल नहीं हैं.
आपने कीमत में हुए बदलावों में पैकेज आईडी का रेफ़रंस दिया हो. ज़्यादा जानकारी के लिए, रूम बंडल का मेटाडेटा देखें. |
<Property> | Required | string | उस होटल का आईडी जिस पर जुड़ा हुआ डेटा लागू होता है. इस एलिमेंट की वैल्यू एक स्ट्रिंग होनी चाहिए. यह वैल्यू, आपके होटल सूची फ़ीड में मौजूद लिस्टिंग <id> से मेल खानी चाहिए.
|
<RoomData> | Optional* | <RoomData> |
किसी कमरे के बारे में बताता है. यह डेटा किसी पार्टनर और होटल से जुड़ा है, लेकिन किसी यात्रा कार्यक्रम से नहीं.
किराये में बदलाव करते समय, कमरे के आईडी का रेफ़रंस दिया जाता है. |
* <PackageData> या <RoomData> में से कम से कम एक का होना ज़रूरी है. |
उदाहरण
कमरे और पैकेज का डेटा
यहां दिए गए उदाहरण में, <PropertyDataSet>
में कमरे और पैकेज, दोनों का डेटा दिखाया गया है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>180054</Property>
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Bed Room" language="en"/>
<Text text="Chambre single" language="fr"/>
</Name>
<Description>
<Text text="Non-smoking" language="en"/>
<Text text="Pas de fumiers" language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Living area" language="en"/>
<Text text="Le chambre" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
</RoomData>
<PackageData>
<PackageID>P54321</PackageID>
<Name>
<Text text="Breakfast Included" language="en"/>
<Text text="Avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Includes a delightful array of jams and jellies." language="en"/>
<Text text="Comprend une délicieuse gamme de confitures et gelées." language="fr"/>
</Description>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
इस कमरे और रूम बंडल के लिए किराये और उपलब्धता की जानकारी भेजते समय, आपको किराये की जानकारी वाले मैसेज में कमरे और पैकेज के आईडी का रेफ़रंस देना होगा. इससे आपके मैसेज का साइज़ काफ़ी कम हो जाता है. साथ ही, डुप्लीकेट डेटा की वजह से होने वाली गड़बड़ियों की संख्या भी कम हो जाती है. ज़्यादा जानकारी के लिए, रूम बंडल का मेटाडेटा देखें.
<RoomData>
यह कमरों के बारे में यात्रा कार्यक्रम से अलग मेटाडेटा तय करता है. साथ ही, रूम बंडल के बारे में भी मेटाडेटा तय करता है. ऐसा इसलिए, क्योंकि रूम बंडल में कमरे और अन्य सुविधाएं शामिल होती हैं. कीमत की जानकारी देने वाले फ़ीड में, ब्यौरे वाले डेटा को बार-बार इस्तेमाल करने से बचने के लिए, <RoomData>
का इस्तेमाल करें.
<RoomData>
एलिमेंट, लेन-देन के मैसेज की एक्सएमएल हैरारकी में यहां दिखता है:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
<RoomData>
एलिमेंट में ऐसी जानकारी होती है जो किसी पार्टनर और होटल से जुड़ी होती है, लेकिन यात्रा की योजना से नहीं. इसका मकसद, यात्रा कार्यक्रम के अलावा अन्य सभी तरह के डेटा के लिए है.
<RoomData>
एलिमेंट, <PackageData>
एलिमेंट जैसा ही होता है. हालांकि, यह पैकेज की सुविधाओं और शर्तों के बजाय, कमरे के बारे में बताता है. रूम बंडल के बारे में जानकारी देने के लिए, <RoomData>
और <PackageData>
को मिलाकर इस्तेमाल करें. अगर कोई कमरा किसी पैकेज का हिस्सा नहीं है, तो उसके लिए सिर्फ़ <RoomData>
का इस्तेमाल करें.
एक ही रूम या रूम बंडल के लिए, <RoomData>
और <PackageData>
, दोनों एलिमेंट तय किए जा सकते हैं. जब Google खोज के नतीजों में उस कमरे या पैकेज को दिखाएगा, तो वह दोनों की जानकारी शामिल करेगा. दोनों के बीच में हाइफ़न होगा.
ज़्यादा जानकारी के लिए, रूम बंडल का मेटाडेटा देखें.
सिंटैक्स
<RoomData>
एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <PropertyDataSet> ... <RoomData> <RoomID>room_ID</RoomID> <Name> <Text text="room_name" language="language_code"/> ... </Name> <Description> <Text text="room_description" language="language_code"/> ... </Description> <Capacity>max_number_of_occupants</Capacity> <Occupancy>max_number_of_intended_occupants</Occupancy> <OccupancyDetails> <!-- optional info about the types of guests, whether adults, children, or seniors --></OccupancyDetails> <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> ... </RoomFeatures> </RoomData> ... </PropertyDataSet> </Transaction>
विशेषताएं
<RoomData>
एलिमेंट में कोई एट्रिब्यूट नहीं है.
चाइल्ड एलीमेंट
<RoomData>
एलिमेंट में ये चाइल्ड एलिमेंट होते हैं:
चाइल्ड एलिमेंट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
<Capacity> | Optional | integer | किसी कमरे में ज़्यादा से ज़्यादा कितने मेहमान ठहर सकते हैं. किसी कमरे के लिए, क्षमता, उसमें मौजूद लोगों की संख्या से ज़्यादा या उसके बराबर होती है.
इस वैल्यू को तय करते समय, यह
|
<Description> | Optional | Object | कमरे की पूरी जानकारी. इस एलिमेंट में ऐसी जानकारी होनी चाहिए जिसके बारे में अन्य एलिमेंट या <Name> एलिमेंट में नहीं बताया गया है. कमरे के बारे में जानकारी देते समय, आपको सभी कैपिटल लेटर का इस्तेमाल नहीं करना चाहिए.
हर उस भाषा के लिए अलग यहां दिए गए उदाहरण में, कमरे के ब्यौरे के फ़्रेंच और अंग्रेज़ी वर्शन दिखाए गए हैं: <Description> <Text text="Two queen-sized beds" language="en"/> <Text text="Deux lits de la reine" language="fr"/> </Description> |
<Name> | Required | string | कमरे की कैटगरी का नाम. यह वैल्यू, होटल के लैंडिंग पेज (पहले इसे बिक्री की जगह कहा जाता था) पर दिखने वाली वैल्यू से मेल खानी चाहिए. इस एलिमेंट की वैल्यू को सभी कैपिटल लेटर में सेट न करें.
यह एलिमेंट,
हर उस भाषा के लिए अलग यहां दिए गए उदाहरण में, कमरे के नाम के फ़्रेंच और अंग्रेज़ी वर्शन दिखाए गए हैं: <Name> <Text text="Standard Double Room" language="en"/> <Text text="Le chambre double" language="fr"/> </Name> |
<Occupancy> | Optional | integer | कमरे में ठहरने के लिए मेहमानों की ज़्यादा से ज़्यादा संख्या.
उदाहरण के लिए, किसी बड़े सुइट में छह मेहमानों के ठहरने की जगह हो सकती है (क्षमता = 6), लेकिन उसे सिर्फ़ चार मेहमानों के लिए बनाया गया है.
यह वैल्यू,
|
<OccupancySettings> | Optional | Object | ऐसी सेटिंग जिनसे किसी कमरे में लोगों के रहने की ज़रूरी शर्तों को सीमित किया जा सकता है या उनमें बदलाव किया जा सकता है.
<OccupancySettings> <MinOccupancy>2</MinOccupancy> <MinAge>16</MinAge> </OccupancySettings> सभी चाइल्ड एलिमेंट को शामिल करना ज़रूरी नहीं है. |
<PhotoURL> | Optional | Object | दिए गए कमरे या अलग-अलग सुविधाओं वाले एक तरह के कमरे की फ़ोटो के लिए यूआरएल और कैप्शन (ज़रूरी नहीं). किसी कमरे या रूम बंडल के लिए, एक से ज़्यादा <PhotoURL> की जानकारी दी जा सकती है. हर फ़ोटो यूआरएल, अपने <PhotoURL> में होना चाहिए.
यह एलिमेंट, इन चाइल्ड एलिमेंट को लेता है:
उदाहरण: <PhotoURL> <URL>https://www.example.com/static/bar/image1234.jpg</URL> <Caption> <Text text="A bright and breezy way to enjoy your mornin' cuppa tea." language="en"/> <Text text="Une façon lumineuse et aérée pour profiter de votre journée tasse de thé." language="fr"/> </Caption> </PhotoURL> <PhotoURL> <URL>https://www.foo.com/static/bar/image5678.jpg</URL> <Caption> <Text text="Or, perhaps you prefer coffee." language="en"/> <Text text="Ou peut-être préférez-vous le café." language="fr"/> </Caption> </PhotoURL> |
<RoomFeatures> | Optional | <RoomFeatures> |
इसमें रूम की सुविधाओं के बारे में जानकारी होती है. |
<RoomID> | Required | string | कमरे का यूनीक आईडी. इस आईडी का इस्तेमाल करके, कमरे के डेटा को कीमत अपडेट में मौजूद <Result> ब्लॉक से मैच करें. ज़्यादा जानकारी के लिए, रूम बंडल का मेटाडेटा देखें. (इस आईडी का इस्तेमाल, एक ही लेन-देन के मैसेज में रूम की सामान्य परिभाषा को रेफ़रंस देने के लिए भी किया जा सकता है. ऐसा तब किया जाता है, जब रूम के डेटा को इनलाइन तरीके से तय किया जा रहा हो.) |
उदाहरण
कमरे का डेटा
यहां दिए गए उदाहरण में, रूम डेटा के बारे में बताया गया है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>5440OF</RoomID>
<Name>
<Text text="Single King Bed Room" language="en"/>
<Text text="Simple Lit de Roi" language="fr"/>
</Name>
<Description>
<Text text="One king bed with pillowtop mattresses, 300-thread-count linens,
and down comforters (bedspreads). City view. 300 square feet. Desk with
rolling chair. Multi-line phone with voice mail. Cable/satellite TV with
complimentary HBO and pay movies." language="en"/>
<Text text="Un très grand lit avec matelas à plateau-coussin, ..." language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Bathroom View" language="en"/>
<Text text="La salle de baines" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<Capacity>4</Capacity>
</RoomData>
</PropertyDataSet>
</Transaction>
कमरे और पैकेज का मेटाडेटा
यहां दिए गए उदाहरण में, कमरे और पैकेज के मेटाडेटा के बारे में बताया गया है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>180054</Property>
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Bed Room" language="en"/>
<Text text="Chambre single" language="fr"/>
</Name>
<Description>
<Text text="Non-smoking" language="en"/>
<Text text="Pas de fumiers" language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Living area" language="en"/>
<Text text="Le chambre" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
</RoomData>
<PackageData>
<PackageID>P54321</PackageID>
<Name>
<Text text="Breakfast Included" language="en"/>
<Text text="Avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Includes a delightful array of jams and jellies." language="en"/>
<Text text="Comprend une délicieuse gamme de confitures et gelées." language="fr"/>
</Description>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
अलग-अलग सुविधाओं वाले एक तरह के कई कमरे
यहां दिए गए उदाहरण में, एक से ज़्यादा रूम बंडल के लिए रूम और पैकेज के मेटाडेटा को तय किया गया है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<!-- A transaction message with room types result. -->
<PropertyDataSet>
<Property>12345</Property>
<RoomData>
<RoomID>single</RoomID>
<Name>
<Text text="Single room" language="en"/>
<Text text="Chambre simple" language="fr"/>
</Name>
<Description>
<Text text="A single room" language="en"/>
<Text text="Le chambre simple" language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Living area" language="en"/>
<Text text="Le chambre" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<PhotoURL>
<URL>http://www.foo.com/static/bar/image1235.jpg</URL>
</PhotoURL>
<Capacity>2</Capacity>
</RoomData>
<RoomData>
<RoomID>double</RoomID>
<Name>
<Text text="Double room" language="en"/>
<Text text="Chambre double" language="fr"/>
</Name>
<Occupancy>1</Occupancy>
</RoomData>
<PackageData>
<PackageID>refundbreakfast</PackageID>
<Name>
<Text text="Refundable Room with Breakfast" language="en"/>
<Text text="Chambre remboursable avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Continental Breakfast" language="en"/>
<Text text="Petit déjeuner continental" language="fr"/>
</Description>
<ChargeCurrency>hotel</ChargeCurrency>
<Refundable available="1" refundable_until_days="3"/>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
<PackageData>
<PackageID>prepaid</PackageID>
<Name>
<Text text="Nonrefundable" language="en"/>
<Text text="Non remboursable" language="fr"/>
</Name>
<Description>
<Text text="Blah blah blad" language="en"/>
<Text text="Le blah blah blad" language="fr"/>
</Description>
<Occupancy>2</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="0"/>
</PackageData>
</PropertyDataSet>
</Transaction>
<RoomFeatures>
इससे कमरे में मौजूद सुविधाओं के बारे में पता चलता है.
<RoomFeatures>
एलिमेंट, लेन-देन के मैसेज की एक्सएमएल हैरारकी में यहां दिखता है:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<RoomFeatures>
सिंटैक्स
<RoomFeatures>
एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <PropertyDataSet ... > ... <RoomData> <RoomFeatures> <JapaneseHotelRoomStyle>[western|japanese|japanese_western]</JapaneseHotelRoomStyle> <Beds> <Bed size="[single|semi_double|double|queen|king]"> <Width unit="cm" number="width"/> <Length unit="cm" number="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> ... </PropertyDataSet> </Transactions>
विशेषताएं
<RoomFeatures>
एलिमेंट में कोई एट्रिब्यूट नहीं है.
चाइल्ड एलीमेंट
<RoomFeatures>
एलिमेंट में ये चाइल्ड एलिमेंट होते हैं:
चाइल्ड एलिमेंट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
<JapaneseHotelRoomStyle> | Optional | enum | इससे जापानी होटल के कमरे की स्टाइल के बारे में पता चलता है. मान्य मान हैं:
|
<Beds> | Optional | Object | इसमें कमरे में मौजूद <Bed> की संख्या शामिल होती है. ध्यान दें कि यहां जैपनीज़ फ़्यूटॉन को नहीं गिना जाना चाहिए.
हर
<Bed> में ये चाइल्ड एलिमेंट होते हैं:
<Beds> <Bed size="double"> <Width unit="cm" number="140"/> <Length unit="cm" number="195"/> </Bed> <Bed/> <!-- Size unknown --> </Beds> |
<Suite> | Optional | empty | अगर यह कमरा सुइट है, तो यह एलिमेंट दें. |
<Capsule> | Optional | empty | अगर यह कमरा कैप्सूल रूम है, तो यह एलिमेंट दें. |
<Roomsharing> | Optional | enum | यह कमरा, मालिक या अन्य मेहमानों जैसे अन्य लोगों के साथ शेयर किया गया है या नहीं. मान्य वैल्यू shared और private हैं. |
<Outdoor> | Optional | empty | इस एलिमेंट की वैल्यू तब दें, जब कमरा बाहर की ओर हो और उसमें दीवारें, प्लंबिंग, और तापमान कंट्रोल करने की सुविधा न हो. उदाहरण के लिए, होटल के कमरे आउटडोर लॉजिंग नहीं हैं. वहीं, कैंपसाइट आउटडोर लॉजिंग हैं, जहां मेहमान टेंट में ठहरते हैं. इसके अलावा, आरवी पार्क भी आउटडोर लॉजिंग हैं, जहां मेहमान अपने आरवी लाते हैं. |
<MobilityAccessible> | Optional | empty | अगर इस कमरे में व्हीलचेयर से जाया जा सकता है, तो यह एलिमेंट दें. |
<Smoking> | Optional | enum | यह कमरा, धूम्रपान करने की अनुमति वाला कमरा है या धूम्रपान करने की अनुमति नहीं है. मान्य वैल्यू non_smoking और smoking हैं. |
<BathAndToilet> | Optional | Object | इस कुकी में, कमरे में मौजूद बाथटब और टॉयलेट के बारे में जानकारी होती है.
यह एट्रिब्यूट है:
इस एलिमेंट में, ये चाइल्ड एलिमेंट शामिल किए जा सकते हैं:
उदाहरण: <BathAndToilet relation="separate"> <Bath bathtub="1" shower="1"/> <Toilet electronic_bidet="1" mobility_accessible="1"/> </BathAndToilet> |
<OpenAirBath> | Optional | empty | अगर इस कमरे में खुली जगह में नहाने की निजी सुविधा है, तो यह एलिमेंट दें. |
<AirConditioning> | Optional | empty | अगर इस कमरे में एयर-कंडिशनर है, तो यह एलिमेंट दें. |
<Balcony> | Optional | empty | अगर इस कमरे में बालकनी या बरामदा है, तो यह एलिमेंट दें. |
<Views> | Optional | Object | मान्य विकल्पों में ये शामिल हैं:
|
उदाहरण
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
कमरों में बेड की संख्या की जानकारी नहीं है, तो यह उदाहरण देखें:
<?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>
<PackageData>
किसी प्रॉपर्टी के लिए, यात्रा की योजना से अलग रूम बंडल के मेटाडेटा के बारे में बताता है. इस एलिमेंट में ऐसी जानकारी होती है जो किसी पार्टनर और होटल से जुड़ी होती है, लेकिन यात्रा की योजना से नहीं. इसका मकसद, यात्रा कार्यक्रम के अलावा अन्य सभी डेटा को एक बार तय करना और यात्रा कार्यक्रम के डेटा से इसे रेफ़रंस करना है.
<PackageData>
एलिमेंट, लेन-देन के मैसेज की एक्सएमएल हैरारकी में यहां दिखता है:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
<PackageData>
एलिमेंट, <RoomData>
एलिमेंट की तरह ही होता है. हालांकि, यह उन सुविधाओं और शर्तों के बारे में बताता है जो कमरे की जानकारी में शामिल नहीं होती हैं. <RoomData>
और <PackageData>
का इस्तेमाल एक साथ किया जाता है, ताकि रूम बंडल और किराये की सुविधाओं के बारे में जानकारी दी जा सके. अगर कोई कमरा किसी पैकेज का हिस्सा नहीं है, तो उसके लिए सिर्फ़ <RoomData>
का इस्तेमाल करें.
एक ही रूम या रूम बंडल के लिए, <RoomData>
और <PackageData>
, दोनों एलिमेंट तय किए जा सकते हैं. जब Google खोज के नतीजों में उस कमरे या पैकेज को दिखाएगा, तो वह दोनों की जानकारी शामिल करेगा. दोनों के बीच में हाइफ़न होगा.
अगर किसी प्रॉपर्टी के लिए, एक <PackageData>
एलिमेंट को अपडेट किया जाता है, तो आपको उस प्रॉपर्टी के लिए सभी <PackageData>
और <RoomData>
एलिमेंट अपडेट करने होंगे.
हर <PropertyDataSet>
को प्रॉपर्टी का पूरा डेटा माना जाता है. साथ ही, यह मौजूदा डेटा को बदल देता है.
ज़्यादा जानकारी के लिए, रूम बंडल का मेटाडेटा देखें.
सिंटैक्स
<PackageData>
एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction ... >
<PropertyDataSet ... >
<PackageData>
<PackageID>package_ID</PackageID>
<Name>
<Text text="package_name" language="language_code"/>
...
</Name>
<Description>
<Text text="package_description" language="language_code"/>
...
</Description>
<Refundable available="[false|true]" refundable_until_days="number_of_days"
refundable_until_time="time"/>
<ChargeCurrency>[deposit|hotel|installments|web]</ChargeCurrency>
<Occupancy>max_number_of_intended_occupants</Occupancy>
<OccupancyDetails><!-- optional info about the types of guests,
whether adults or children --></OccupancyDetails>
<!-- 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>
<MembershipBenefitsIncluded>
<ProgramName>
<Text language="en" text="Special Rewards">
</ProgramName>
<ProgramLevel>
<Text language="en" text="Platinum">
</ProgramLevel>
</MembershipBenefitsIncluded>
<OnPropertyCredit>
<Amount currency="USD">123.45</Amount>
</OnPropertyCredit>
</PackageData>
<!-- a PackageID with a MilesIncluded
rate feature -->
<PackageData>
<PackageID>room_with_miles</PackageID>
<Name>
<Text text="Room with Bundled Miles" language="en">
</Name>
<ChargeCurrency>hotel </ChargeCurrency>
<MilesIncluded>
<NumberOfMiles>integer</NumberOfMiles>
<Provider>
<Text language="en" text="provider-name">
</Provider>
<!-- Add Loyalty point information -->
<LoyaltyCampaignID>campaign_ID</LoyaltyCampaignID>
</MilesIncluded>
</PackageData>
...
...
</PropertyDataSet>
...
</Transaction>
विशेषताएं
<PackageData>
एलिमेंट में कोई एट्रिब्यूट नहीं है.
चाइल्ड एलीमेंट
<PackageData>
एलिमेंट में ये चाइल्ड एलिमेंट होते हैं:
चाइल्ड एलिमेंट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
<BreakfastIncluded> | Optional | boolean | इससे पता चलता है कि इस पैकेज में नाश्ता शामिल है या नहीं.
मान्य वैल्यू 0 (या false ) और 1
(या true ) हैं.
हमारा सुझाव है कि आप |
<ChargeCurrency> | Optional | enum | उपयोगकर्ता बुकिंग के लिए पेमेंट कब और कहां करता है. यह एलिमेंट, <Result> में <ChargeCurrency> के जैसा ही सिंटैक्स इस्तेमाल करता है.
डिफ़ॉल्ट वैल्यू |
<CheckinTime> | Optional | Time | चेक-इन करने का सबसे पहला समय. होटल के स्थानीय समय के हिसाब से, समय 24:00 से पहले का होना चाहिए. |
<CheckoutTime> | Optional | Time | होटल के स्थानीय समय के हिसाब से, चेक आउट करने का सबसे नया समय. |
<Description> | Optional | Object | पैकेज के बारे में पूरी जानकारी. इस एलिमेंट में ऐसी जानकारी होनी चाहिए जिसके बारे में दूसरे एलिमेंट या <Name> एलिमेंट में नहीं बताया गया है. कमरे के बारे में जानकारी देते समय, आपको सभी कैपिटल लेटर का इस्तेमाल नहीं करना चाहिए.
<Description> <Text text="Two breakfast buffet certificates for each night of stay." language="en"/> <Text text="Deux certificats petit-déjeuner buffet pour chaque nuit de séjour." language="fr"/> </Description> |
<InternetIncluded> | Optional | boolean | अगर किसी पैकेज में बिना किसी शुल्क के इंटरनेट ऐक्सेस शामिल है, जबकि अन्य पैकेज में यह सुविधा शामिल नहीं है. अगर होटल के सभी कमरों में मुफ़्त इंटरनेट की सुविधा मिलती है, तो रूम बंडल के लिए यह एलिमेंट सेट न करें. यह एलिमेंट, कमरे में मौजूद तार वाले इंटरनेट या मेहमानों के कमरों में उपलब्ध न होने वाले वायरलेस इंटरनेट पर लागू नहीं होता. मान्य वैल्यू ये हैं:
0 (या false ) और 1
(या true ).
|
<Meals> | Optional | Object | इस पैकेज में शामिल खाने-पीने की चीज़ों के बारे में जानकारी होती है.
ज़रूरी नहीं है कि इन एट्रिब्यूट का इस्तेमाल किया जाए. इनका इस्तेमाल सिर्फ़ तब किया जाता है, जब भोजन के फ़िल्टर ( |
<Name> | Required | string | पैकेज का नाम. यह वैल्यू, होटल के लैंडिंग पेज पर दिखने वाली वैल्यू से मेल खानी चाहिए. इस एलिमेंट की वैल्यू को सभी कैपिटल लेटर पर सेट न करें.
यह एलिमेंट, <Name> <Text text="Bed and Breakfast" language="en"/> <Text text="Lit et petit déjeuné" language="fr"/> </Name> |
<Occupancy> | Optional | integer | कमरे के बंडल में कितने मेहमानों के लिए जगह है.
उदाहरण के लिए, किसी बड़े सुइट में छह मेहमानों के ठहरने का इंतज़ाम हो सकता है, लेकिन उसे सिर्फ़ चार मेहमानों के लिए बनाया गया है.
यह वैल्यू,
अगर आपने इस एलिमेंट को ध्यान दें: <Occupancy> के साथ <OccupancyDetails> हो सकता है. इसमें मेहमानों (वयस्कों या बच्चों) के बारे में जानकारी दी जाती है. सिंटैक्स और चाइल्ड एलिमेंट के ब्यौरे के लिए, <OccupancyDetails> देखें.
|
<PackageID> | Required | string | पैकेज का यूनीक आईडी. इस आईडी का इस्तेमाल करके, कमरे के बंडल के डेटा को कीमत के अपडेट में मौजूद (इस आईडी का इस्तेमाल, रूम बंडल की सामान्य परिभाषा को रेफ़रंस देने के लिए भी किया जा सकता है. इसका इस्तेमाल, रूम बंडल के डेटा को इनलाइन तरीके से तय करते समय, एक ही लेन-देन के मैसेज में किया जाता है.) |
<ParkingIncluded> | Optional | boolean | क्या रूम बंडल में पार्किंग की सुविधा बिना किसी शुल्क के शामिल है. ऐसा तब होता है, जब होटल में पार्किंग की सुविधा के लिए शुल्क लिया जाता है. ऐसे होटल के लिए इस एलिमेंट की वैल्यू न दें जहां पार्किंग मुफ़्त है.
मान्य वैल्यू |
<PhotoURL> | Optional | Object | (यह <RoomData> में मौजूद <PhotoURL> जैसा ही है, लेकिन यह पैकेज (जैसे, खाने की फ़ोटो) के लिए है.)
|
<Refundable> | Optional | Object | इस सुविधा की मदद से, किराये को पूरी तरह से रिफ़ंड किए जाने वाले किराये के तौर पर लिस्ट किया जा सकता है या बिना किसी शुल्क के बुकिंग रद्द करने की सुविधा दी जा सकती है. यह जानकारी न देने पर, रिफ़ंड के बारे में कोई जानकारी नहीं दिखती.
<PackageData> लेवल पर मौजूद रिफ़ंड नीति, <Result> लेवल पर मौजूद रिफ़ंड नीति को बदल देती है. <Rates> लेवल पर मौजूद रिफ़ंड नीति, <PackageData> लेवल पर मौजूद रिफ़ंड नीति को बदल देती है. लेन-देन के मैसेज स्कीमा में सीधे तौर पर बदलाव किए बिना, उपयोगकर्ताओं को अन्य विकल्पों के ज़रिए भी रिफ़ंड की सुविधा वाली कीमत के बारे में बताया जा सकता है. इन विकल्पों के बारे में ज़्यादा जानें
रिफ़ंड किए जा सकने वाले किराये की नीति.
इस उदाहरण में, <Refundable available="1" refundable_until_days="7" refundable_until_time="18:00:00"/> ध्यान दें: हमारा सुझाव है कि आप सभी एट्रिब्यूट सेट करें. एक या उससे ज़्यादा एट्रिब्यूट सेट न होने पर, फ़ीड की स्थिति के बारे में चेतावनी वाला मैसेज जनरेट होता है. अगर आपने कोई एट्रिब्यूट सेट नहीं किया है, तो किराया, रिफ़ंड किए जाने वाले किराये के तौर पर नहीं दिखेगा. ये एट्रिब्यूट हैं:
एट्रिब्यूट सेट करते समय, इन बातों का ध्यान रखें:
|
<MembershipBenefits |
Optional | boolean | किराये में, ठहरने की अवधि के लिए एलीट स्टेटस के फ़ायदे शामिल हैं. इसमें ये पैरामीटर शामिल हैं:
|
<CarRentalIncluded> | Optional | boolean | किराये में, ठहरने के दौरान किराये पर कार लेने की सुविधा शामिल है. |
<MilesIncluded> | Optional | boolean | किराये में फ़्रीक्वेंट फ़्लायर माइल्स शामिल हैं. पैरामीटर में ये शामिल हैं:
ध्यान दें: |
<OnPropertyCredit> | Optional | boolean | किराये में, होटल में मिलने वाला क्रेडिट शामिल है. इसका इस्तेमाल खाने-पीने, रिज़ॉर्ट, स्पा वगैरह के लिए किया जा सकता है. पैरामीटर:
|
<AirportTransportationIncluded> | Optional | Object | किराये में, आस-पास के हवाई अड्डे से लाने-ले जाने की सुविधा शामिल है. वैकल्पिक
direction एट्रिब्यूट, परिवहन की दिशा बताता है. मान्य वैल्यू में ये शामिल हैं:
from : एयरपोर्ट से प्रॉपर्टी तक आने-जाने की सुविधा दी जाती है. अगर कोई दिशा नहीं बताई जाती है, तो यह डिफ़ॉल्ट वैल्यू होती है.
to : प्रॉपर्टी से एयरपोर्ट तक जाने की सुविधा उपलब्ध है.
round_trip : हवाई अड्डे से लाने-ले जाने की सुविधा उपलब्ध है.
|
उदाहरण
एक ही तरह के कमरे का बंडल
यहां एक रूम बंडल का उदाहरण दिया गया है. इसमें दो लोगों (एक वयस्क और एक बच्चा) के ठहरने की सुविधा है. साथ ही, इसमें नाश्ता भी शामिल है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<PackageData>
<Occupancy>2</Occupancy>
<OccupancyDetails>
<NumAdults>1</NumAdults>
<Children>
<Child age="17"/>
</Children>
</OccupancyDetails>
<PackageID>P54321</PackageID>
<Name>
<Text text="Breakfast Included" language="en"/>
<Text text="Avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Two certificates for continental
breakfast will be provided." language="en"/>
<Text text="Deux certificats pour le petit déjeuner
continental seront fournis." language="fr"/>
</Description>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
कमरे और पैकेज का मेटाडेटा
यहां दिए गए उदाहरण में, कमरे और पैकेज के मेटाडेटा के बारे में बताया गया है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>180054</Property>
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Bed Room" language="en"/>
<Text text="Chambre single" language="fr"/>
</Name>
<Description>
<Text text="Non-smoking" language="en"/>
<Text text="Pas de fumiers" language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Living area" language="en"/>
<Text text="Le chambre" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
</RoomData>
<PackageData>
<PackageID>P54321</PackageID>
<Name>
<Text text="Breakfast Included" language="en"/>
<Text text="Avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Includes a delightful array of jams and jellies." language="en"/>
<Text text="Comprend une délicieuse gamme de confitures et gelées." language="fr"/>
</Description>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
अलग-अलग सुविधाओं वाले एक तरह के कई कमरे
यहां दिए गए उदाहरण में, एक से ज़्यादा रूम बंडल के लिए रूम और पैकेज के मेटाडेटा को तय किया गया है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<!-- A transaction message with room types result. -->
<PropertyDataSet>
<Property>12345</Property>
<RoomData>
<RoomID>single</RoomID>
<Name>
<Text text="Single room" language="en"/>
<Text text="Chambre simple" language="fr"/>
</Name>
<Description>
<Text text="A single room" language="en"/>
<Text text="Le chambre simple" language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Living area" language="en"/>
<Text text="Le chambre" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<PhotoURL>
<URL>http://www.foo.com/static/bar/image1235.jpg</URL>
</PhotoURL>
<Capacity>2</Capacity>
</RoomData>
<RoomData>
<RoomID>double</RoomID>
<Name>
<Text text="Double room" language="en"/>
<Text text="Chambre double" language="fr"/>
</Name>
<Occupancy>1</Occupancy>
</RoomData>
<PackageData>
<PackageID>refundbreakfast</PackageID>
<Name>
<Text text="Refundable Room with Breakfast" language="en"/>
<Text text="Chambre remboursable avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Continental Breakfast" language="en"/>
<Text text="Petit déjeuner continental" language="fr"/>
</Description>
<ChargeCurrency>hotel</ChargeCurrency>
<Refundable available="1" refundable_until_days="3"/>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
<PackageData>
<PackageID>prepaid</PackageID>
<Name>
<Text text="Nonrefundable" language="en"/>
<Text text="Non remboursable" language="fr"/>
</Name>
<Description>
<Text text="Blah blah blad" language="en"/>
<Text text="Le blah blah blad" language="fr"/>
</Description>
<Occupancy>2</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="0"/>
</PackageData>
</PropertyDataSet>
</Transaction>
किराये के साथ कमरे का बंडल
यहां दिए गए उदाहरण में, किराये की सुविधाओं के साथ रूम बंडल के लिए, कमरे और पैकेज के मेटाडेटा को तय करने का तरीका बताया गया है:
<Transaction timestamp="2010-04-24T20:44:56-04:00" id="TXNID">
<PropertyDataSet>
<Property>12345</Property>
<RoomData>
...
</RoomData>
<!-- definitions of PackageData types including rate features -->
<PackageData>
<PackageID>room_with_addl_benefits</PackageID>
<Name>
<Text text="Acme Hotels 2017 Promotion Package" language="en"/>
</Name>
<ChargeCurrency>hotel</ChargeCurrency>
<BreakfastIncluded>1</BreakfastIncluded>
<MembershipBenefitsIncluded>
<ProgramName>
<Text language="en" text="Marriott Rewards"/>
</ProgramName>
<ProgramLevel>
<Text language="en" text="Platinum"/>
</ProgramLevel>
</MembershipBenefitsIncluded>
<OnPropertyCredit>
<Amount currency="USD">123.45</Amount>
</OnPropertyCredit>
</PackageData>
<PackageData>
<PackageID>room_with_miles</PackageID>
<Name>
<Text text="Room with Bundled Miles" language="en"/>
</Name>
<ChargeCurrency>hotel</ChargeCurrency>
<MilesIncluded>
<NumberOfMiles>1000</NumberOfMiles>
<LoyaltyCampaignID>my_campaign</LoyaltyCampaignID>
</MilesIncluded>
<AirportTransportationIncluded direction="from"/>
</PackageData>
</PropertyDataSet>
<!-- The actual list of prices -->
<Result>
…
</Result>
</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>
<Result>
यह <Transaction>
मैसेज में, कीमत और खरीदारी के लिए उपलब्धता से जुड़े अपडेट के लिए कंटेनर होता है.
<Result>
एलिमेंट, लेन-देन के मैसेज की एक्सएमएल हैरारकी में यहां दिखता है:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
कमरे का किराया सेट करने या अपडेट करने के लिए <Result>
का इस्तेमाल करें. साथ ही, उपलब्ध इन्वेंट्री तय करें. इस एलिमेंट में तय किए गए आइटम, आम तौर पर <PackageData>
और <RoomData>
में तय किए गए कमरे या पैकेज के बारे में यात्रा कार्यक्रम से अलग मेटाडेटा का रेफ़रंस देते हैं. जैसे, जानकारी या सुविधाओं का सेट.
आम तौर पर, कीमत में होने वाले बदलावों के साथ लेन-देन के मैसेज बहुत बार भेजे जाते हैं. आपको यह काम कैसे और कितनी बार करना है, यह डिलिवरी मोड पर निर्भर करता है.
इन्वेंट्री हटाना लेख में बताए गए तरीके से, यात्रा की योजनाओं को हटाने के लिए, लेन-देन के मैसेज में <Result>
का इस्तेमाल किया जा सकता है.
कीमतों और खरीदारी के लिए उपलब्धता की जानकारी अपडेट करने के लिए, लेन-देन के मैसेज इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, इन्वेंट्री जोड़ना और उसे अपडेट करना लेख पढ़ें.
एक लेन-देन वाले मैसेज में, <Result>
एलिमेंट की कोई भी संख्या शामिल की जा सकती है. हालांकि, मैसेज का साइज़ 100 एमबी से ज़्यादा नहीं होना चाहिए.
सिंटैक्स
<Result>
एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <Result> <!-- Required --> <Property>hotel_ID</Property> <!-- Required --> <Checkin>YYYY-MM-DD</Checkin> <!-- Required --> <Nights>number_of_nights</Nights> <Baserate currency="currency_code">price</Baserate> <!-- Only required when <Baserate> contains a real price --> <Tax currency="currency_code">tax_amount</Tax> <!-- Only required when <Baserate> contains a real price --> <OtherFees currency="currency_code">fee_amount</OtherFees> <Refundable available="[false|true]" refundable_until_days="number_of_days" refundable_until_time="time"/> <RoomID>room_ID</RoomID> <PackageID>package_ID</PackageID> <ExpirationTime>expiration_time</ExpirationTime> <ChargeCurrency>[deposit|hotel|installments|web]</ChargeCurrency> <Occupancy>max_number_of_intended_occupants</Occupancy> <!-- For Baserate, occupancy value must be greater than or equal to 2. If a value is not provided for occupancy, it defaults to 2. --> <!-- Child occupancy rates should only be sent through Live pricing with context and not through Pull or Changed pricing --> <OccupancyDetails>occupancy_info</OccupancyDetails> <Rates>...</Rates> <RoomBundle>...</RoomBundle> <AllowablePointsOfSale> <PointOfSale id="landing_page_identifier"/> ... </AllowablePointsOfSale> <MilesIncluded> <NumberOfMiles>integer</NumberOfMiles> <Provider> <Text language="en" text="provider-name"> </Provider> <!-- Add Loyalty point information --> <LoyaltyCampaignID>campaign_ID</LoyaltyCampaignID> </MilesIncluded> </Result> ... </Transaction>
विशेषताएं
<Result>
एलिमेंट में ये एट्रिब्यूट होते हैं:
एट्रिब्यूट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
mergeable | Optional | boolean | डिफ़ॉल्ट रूप से, किसी होटल और यात्रा की योजना के लिए नई कीमतें, Google की कैश मेमोरी में मौजूद पिछली (समयसीमा खत्म न हुई) कीमतों को ओवरराइट कर देंगी. मर्ज किए जा सकने वाले एट्रिब्यूट की मदद से, Google की कैश मेमोरी में अतिरिक्त कीमतें सेव की जा सकती हैं. इसके लिए, आपको कीमत की पिछली जानकारी मिटाने की ज़रूरत नहीं होती. कॉन्टेक्स्ट के साथ लाइव क्वेरी करने पर मिलने वाले जवाबों में, यह एट्रिब्यूट हमेशा true पर सेट होता है. भले ही, लेन-देन के मैसेज के जवाब में कुछ भी हो. |
चाइल्ड एलीमेंट
<Result>
एलिमेंट में ये चाइल्ड एलिमेंट होते हैं:
चाइल्ड एलिमेंट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
<AllowablePointsOfSale> | Optional | Object | एक या उससे ज़्यादा ऐसे लैंडिंग पेज जो होटल के लिए ज़रूरी शर्तें पूरी करते हों. लैंडिंग पेज एक ऐसी वेबसाइट होती है जो बुकिंग की प्रोसेस को पूरा कर सकती है. किसी लैंडिंग पेज को साफ़ तौर पर शामिल करने और अन्य को बाहर रखने के लिए, एक या उससे ज़्यादा <AllowablePointsOfSale> एलिमेंट जोड़ें. ये एलिमेंट, लैंडिंग पेजों की फ़ाइल में मौजूद <PointOfSale> एलिमेंट के id एट्रिब्यूट से मेल खाने चाहिए.
अगर आपने इस एलिमेंट को शामिल नहीं किया है, तो लैंडिंग पेजों की फ़ाइल में तय किए गए सभी लैंडिंग पेजों को, कमरे की बुकिंग के लिए इस्तेमाल किया जा सकता है. ज़्यादा जानकारी के लिए, लैंडिंग पेज फ़ाइल सिंटैक्स देखें. |
<Baserate> | Optional | float | ठहरने के लिए कमरे का किराया. इस एलिमेंट की वैल्यू में यह जानकारी होनी चाहिए:
अगर यात्रा की योजना के लिए कमरा उपलब्ध नहीं है, तो किसी रूम बंडल को हटाने के लिए, रूम बंडल हटाना में दिए गए निर्देशों का पालन करें.
<Baserate currency="USD">1200.40</Baserate>
|
<ChargeCurrency> | Optional | enum | उपयोगकर्ता बुकिंग के लिए पेमेंट कब और कहां करता है. इस एलिमेंट का इस्तेमाल, लेन-देन के मैसेज में किया जा सकता है. इसके लिए, होटल के किराये के लिए <Result> एलिमेंट या रूम बंडल के लिए <PackageData> ब्लॉक का इस्तेमाल करें.
मान्य मान हैं:
डिफ़ॉल्ट वैल्यू |
<Checkin> | Required | Date | यात्रा की योजना के लिए, चेक-इन करने की तारीख. इसके लिए, तारीख फ़ॉर्मैट का इस्तेमाल किया जाता है. <Nights> एलिमेंट और <Checkin> एलिमेंट मिलकर यात्रा का प्लान बनाते हैं. |
Optional | string | बंद कर दिया गया: यह एक कस्टम फ़ील्ड तय करता है. इसका इस्तेमाल होटल से जुड़ा अतिरिक्त डेटा पास करने के लिए किया जा सकता है. इन एलिमेंट के नाम के साथ, ज़्यादा से ज़्यादा पांच कस्टम वैल्यू पास की जा सकती हैं:
अहम जानकारी: अगर आपको |
|
<ExpirationTime> | Optional | DateTime | वह तारीख और समय जब कीमत को खत्म माना जाता है (कम से कम तीन घंटे).
हमारा सुझाव है कि अगर आपके किराये के स्ट्रक्चर के लिए समयसीमा खत्म होने के टाइमस्टैंप ज़रूरी नहीं हैं, तो उन्हें न दें. Google, समयसीमा खत्म हो चुके किसी भी किराये को नहीं दिखाता है. साथ ही, समयसीमा खत्म हो चुके किराये वाली कोई भी यात्रा योजना, मौजूदा किराये के बारे में क्वेरी करने की सुविधा के लिए ज़रूरी शर्तें पूरी करेगी. |
<MilesIncluded> | Optional | boolean | किराये में फ़्रीक्वेंट फ़्लायर माइल्स शामिल हैं. पैरामीटर में ये शामिल हैं:
ध्यान दें: |
<Nights> | Required | integer | यात्रा की योजना में शामिल रातों की संख्या. <Nights> एलिमेंट की वैल्यू, पॉज़िटिव पूर्णांक होनी चाहिए.
<Nights> और <Checkin> को मिलाकर यात्रा की योजना बनती है. |
<OtherFees> | Optional | float | कमरे के मूल किराये और टैक्स के अलावा, ऐसे शुल्क जिनसे कमरे के फ़ाइनल किराये पर असर पड़ता है. <OtherFees> एलिमेंट में, currency एट्रिब्यूट की वैल्यू सबमिट करना ज़रूरी है. यह एट्रिब्यूट, शुल्क के लिए तीन अक्षरों वाला मुद्रा कोड तय करता है. उदाहरण के लिए, USD .
अगर |
<Occupancy> | Optional | integer | इस किराये के हिसाब से, कमरे में रहने वाले लोगों की ज़्यादा से ज़्यादा संख्या के बारे में बताता है.
जब <Occupancy> , <Result> के ठीक नीचे दिखता है, तो इसमें 2 या इससे ज़्यादा वैल्यू होनी चाहिए. <Occupancy> के साथ <OccupancyDetails> भी हो सकता है. इससे मेहमानों के टाइप (वयस्क या बच्चे) के बारे में पता चलता है. अगर मेहमानों के टाइप नहीं बताए गए हैं, तो उन्हें वयस्क माना जाता है. चाइल्ड एलिमेंट के सिंटैक्स और ब्यौरे के लिए, <OccupancyDetails> देखें. अगर <Occupancy> एलिमेंट नहीं दिया गया है, तो डिफ़ॉल्ट रूप से ऑक्यूपेंसी 2 के तौर पर सेट होती है.
अहम जानकारी: बच्चों के लिए अलग किराया तय करने की सुविधा, सिर्फ़ कॉन्टेक्स्ट के साथ लाइव क्वेरी करने पर उपलब्ध है. इसे पुल या किराये और उपलब्धता में बदलाव वाले मोड में इस्तेमाल नहीं किया जा सकता. ध्यान दें: दो से ज़्यादा लोगों के लिए तय किए गए किराये की जानकारी भेजने की सुविधा चालू करने के लिए, सहायता टीम से संपर्क करें. |
<PackageID> | Optional | string | पैकेज का यूनीक आईडी, ताकि इसे पहले से तय किए गए पैकेज के डेटा से मैप किया जा सके.
इसका इस्तेमाल PACKAGE-ID लैंडिंग पेज वैरिएबल में जानकारी भरने के लिए भी किया जाता है.
ज़्यादा जानकारी के लिए, रूम
बंडल का मेटाडेटा देखें.
|
<Property> | Required | string | उस होटल का आईडी जिस पर जुड़े हुए डेटा (किराया, यात्रा की योजना, रूम बंडल या मेटाडेटा) का असर पड़ा है. इस एलिमेंट की वैल्यू, स्ट्रिंग होनी चाहिए. इस एलिमेंट की वैल्यू, होटल सूची फ़ीड में तय की गई लिस्टिंग <id> से मेल खानी चाहिए.
|
<Rates> | Optional | <Rates> |
एक या उससे ज़्यादा <Rate> ब्लॉक के लिए कंटेनर. <Rates> में मौजूद हर <Rate> , कमरे/यात्रा के कार्यक्रम के कॉम्बिनेशन के लिए अलग-अलग किराया तय करता है.
ध्यान दें: |
<Refundable> | Optional | Object | इस सुविधा की मदद से, किराये को पूरी तरह से रिफ़ंड किए जाने वाले किराये के तौर पर लिस्ट किया जा सकता है या बिना किसी शुल्क के बुकिंग रद्द करने की सुविधा दी जा सकती है. यह जानकारी न देने पर, रिफ़ंड के बारे में कोई जानकारी नहीं दिखती.
<PackageData> लेवल पर मौजूद रिफ़ंड नीति, <Result> लेवल पर मौजूद रिफ़ंड नीति को बदल देती है. <Rates> लेवल पर मौजूद रिफ़ंड नीति, <PackageData> लेवल पर मौजूद रिफ़ंड नीति को बदल देती है. लेन-देन के मैसेज स्कीमा में सीधे तौर पर बदलाव किए बिना, उपयोगकर्ताओं को अन्य विकल्पों के ज़रिए भी रिफ़ंड की सुविधा वाली कीमत के बारे में बताया जा सकता है. रिफ़ंड किए जा सकने वाले किराये की नीति के बारे में ज़्यादा जानें.
इस उदाहरण में, <Refundable available="1" refundable_until_days="7" refundable_until_time="18:00:00"/> ध्यान दें: हमारा सुझाव है कि आप सभी एट्रिब्यूट सेट करें. एक या उससे ज़्यादा एट्रिब्यूट सेट न होने पर, फ़ीड की स्थिति के बारे में चेतावनी वाला मैसेज जनरेट होता है. अगर आपने कोई एट्रिब्यूट सेट नहीं किया है, तो किराया, रिफ़ंड किए जाने वाले किराये के तौर पर नहीं दिखेगा. ये एट्रिब्यूट हैं:
एट्रिब्यूट सेट करते समय, इन बातों का ध्यान रखें:
|
<RoomBundle> | Optional | <RoomBundle> |
यह कंटेनर, कमरे की कीमत के साथ दी गई जानकारी, सुविधाओं की पैकेजिंग, और दिए गए होटल और यात्रा की योजना के लिए खरीदारी की नीति के बारे में जानकारी देता है.
आम तौर पर, इस एलिमेंट का इस्तेमाल मूल कमरे और एक ही प्रॉपर्टी में मौजूद अलग-अलग तरह के कमरों के लिए किराया तय करने के लिए किया जाता है. रूम बंडल के बारे में जानकारी को इनलाइन तरीके से भी दिया जा सकता है. हालांकि, आपको उस जानकारी को देने के लिए, लेन-देन के अलग मैसेज का इस्तेमाल करना चाहिए. Google, मेटाडेटा को सेव करेगा, ताकि आने वाले समय में कीमत से जुड़े सभी अपडेट में आपको इसे दोहराने के बजाय सिर्फ़ इसका रेफ़रंस देना पड़े. |
<RoomID> | Optional | string | कमरे का यूनीक आईडी, ताकि उसे पहले से तय किए गए कमरे के डेटा से मैप किया जा सके. इसका इस्तेमाल PARTNER-ROOM-ID लैंडिंग पेज वैरिएबल को भरने के लिए भी किया जाता है.
ज़्यादा जानकारी के लिए, रूम
बंडल का मेटाडेटा देखें.
|
<Tax> | Optional | float | कमरे के किराये में शामिल टैक्स.
<Tax> एलिमेंट में एक ज़रूरी एट्रिब्यूट, currency होता है. यह टैक्स के लिए, तीन अक्षरों वाला करंसी कोड तय करता है. उदाहरण के लिए, USD . अगर <Baserate> की वैल्यू शून्य से ज़्यादा है, तो <Tax> एलिमेंट ज़रूरी है.
अगर |
<Unavailable> | Optional | Object | इससे पता चलता है कि यात्रा की योजना बुक करने के लिए उपलब्ध नहीं है. यह एक कंटेनर के तौर पर काम करता है. इसमें यह जानकारी होती है कि यात्रा की योजना क्यों उपलब्ध नहीं थी. <Unavailable> टैग में, उपलब्धता न होने की एक या इससे ज़्यादा वजहें नेस्ट की जा सकती हैं:
|
उदाहरण
एक से ज़्यादा प्रॉपर्टी का उदाहरण
यहां दिए गए उदाहरण में, दो प्रॉपर्टी के लिए यात्रा की एक योजना और उसकी कीमत तय करने का तरीका बताया गया है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-23T16:20:00-04:00" id="42">
<Result>
<Property>060773</Property>
<RoomID>RoomType101</RoomID>
<PackageID>Package101</PackageID>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">278.33</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="site1"/>
</AllowablePointsOfSale>
</Result>
<Result>
<Property>052213</Property>
<RoomID>RoomType101</RoomID>
<PackageID>Package101</PackageID>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">299.98</Baserate>
<Tax currency="USD">26.42</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="otto"/>
<PointOfSale id="simon"/>
</AllowablePointsOfSale>
<MilesIncluded>
<NumberOfMiles>1200</NumberOfMiles>
<Provider>
<Text language="en" text="United Airlines"/>
</Provider>
<LoyaltyCampaignID>my_campaign</LoyaltyCampaignID>
</MilesIncluded>
</Result>
</Transaction>
इस उदाहरण में, कमरे के बारे में जानकारी नहीं दिखाई गई है. जैसे, कमरे का ब्यौरा, उसकी तस्वीर और कैप्शन, कमरे का नाम, और उसमें ठहरने वाले लोगों की संख्या.
Google इस जानकारी को सेव करता है. इसे अलग से लेन-देन के मैसेज में एक बार तय किया जा सकता है. इसके बाद, कीमत और इन्वेंट्री से जुड़े सभी अपडेट में इसका रेफ़रंस दिया जा सकता है. ज़्यादा जानकारी के लिए, रूम बंडल का मेटाडेटा देखें.
एक से ज़्यादा दर का उदाहरण
यहां दिए गए उदाहरण में, एक यात्रा कार्यक्रम और प्रॉपर्टी के बारे में बताया गया है. इसमें अलग-अलग लोगों के हिसाब से, कई किराये दिए गए हैं. <Rates>
एलिमेंट का इस्तेमाल करके, किसी प्रॉपर्टी के लिए अलग-अलग किराये की जानकारी दी जा सकती है. यहां दिया गया उदाहरण, छुट्टियों में किराये पर उपलब्ध जगहों (वीआर) की प्रॉपर्टी के लिए भी काम का है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-07-23T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2021-01-13</Checkin>
<Nights>9</Nights>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>2</Occupancy>
<Rates>
<Rate>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>1</Occupancy>
</Rate>
<Rate>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>3</Occupancy>
</Rate>
<Rate>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>4</Occupancy>
</Rate>
<Rate>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>5</Occupancy>
</Rate>
<Rate>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>6</Occupancy>
</Rate>
</Rates>
</Result>
</Transaction>
उदाहरण उपलब्ध नहीं है
यहां एक उदाहरण दिया गया है. इसमें एक ऐसी यात्रा की योजना के बारे में बताया गया है जिसकी उपलब्धता, डाउनस्ट्रीम चैनलों से नहीं मिल सकी. दूसरी यात्रा की योजना में, ठहरने की कम से कम अवधि से कम समय के लिए बुकिंग की गई है. साथ ही, बताई गई तारीखों के लिए बुकिंग पहले ही हो चुकी है. तीसरी यात्रा की योजना में, प्रॉपर्टी के पहुंचने की तारीख को बंद होने की जानकारी दी गई है. हालांकि, ठहरने के दौरान प्रॉपर्टी खुल जाती है:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-23T16:20:00-04:00" id="42">
<Result>
<Property>060773</Property>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Unavailable>
<NotFetched/>
</Unavailable>
</Result>
<Result>
<Property>073313</Property>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Unavailable>
<NoVacancy/>
<MinNightStay value=3/>
</Unavailable>
</Result>
<Result>
<Property>052213</Property>
<Checkin>2018-06-10</Checkin>
<Nights>10</Nights>
<Unavailable>
<PropertyClosed first_open="2018-06-15" first_closed="2018-06-10"/>
</Unavailable>
</Result>
</Transaction>
<Rates>
एक या उससे ज़्यादा <Rate>
ब्लॉक के लिए कंटेनर. <Rate>
में मौजूद हर <Rates>
, कमरे या यात्रा की योजना के कॉम्बिनेशन के लिए अलग-अलग कीमत तय करता है.
<Rates>
एलिमेंट का इस्तेमाल सिर्फ़ तब करें, जब एक ही कमरे या यात्रा कार्यक्रम के कॉम्बिनेशन के लिए कई किराये मौजूद हों. उदाहरण के लिए, शर्तों के साथ लागू होने वाले किराये, निजी किराये या रूम बंडल में शामिल शर्तों के साथ लागू होने वाले किराये के लिए, एक से ज़्यादा किराये तय किए जाते हैं.
<Rates>
एलिमेंट, लेन-देन के मैसेज की एक्सएमएल हैरारकी में यहां दिखता है:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
(Can also contain<Rates>
) + ...
<Rate>
में सेट की गई वैल्यू, पैरंट <Result>
या <RoomBundle>
एलिमेंट में कीमत से जुड़ी वैल्यू को बदल देती हैं. अगर इन्हें <Rate>
में सेट नहीं किया गया है, तो ये पैरंट एलिमेंट से वैल्यू इनहेरिट करते हैं. सिर्फ़ <AllowablePointsofSale> को <RoomBundle>
एलिमेंट में इनहेरिट किया जाता है.
सिंटैक्स
<Rates>
एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <Result> <Rates> <Rate rate_rule_id="rate_rule_id"> <Baserate currency="currency_code">price</Baserate> <Tax currency="currency_code">tax_amount</Tax> <OtherFees currency="currency_code">fee_amount</OtherFees> <ExpirationTime>expiration_time</ExpirationTime> <Refundable available="[false|true]" refundable_until_days="number_of_days" refundable_until_time="time"/> <ChargeCurrency>[deposit|hotel|installments|web]</ChargeCurrency> <AllowablePointsOfSale> <PointOfSale id="landing_page_identifier"/> </AllowablePointsOfSale> <Occupancy>max_number_of_intended_occupants</Occupancy> <OccupancyDetails> <!-- optional info about the types of guests, whether adults or children --></OccupancyDetails> ... <MilesIncluded> <NumberOfMiles>integer</NumberOfMiles> <Provider> <Text language="en" text="provider-name"> </Provider> <LoyaltyCampaignID>campaign_ID</LoyaltyCampaignID> </MilesIncluded> ... </Rate> ... </Rates> </Result> ... </Transaction>
विशेषताएं
<Rates>
एलिमेंट में ये एट्रिब्यूट होते हैं:
एट्रिब्यूट | ज़रूरी है? | ब्यौरा |
---|---|---|
rate_rule_id | Optional | शर्त के हिसाब से तय की गई दरों के लिए, यह आईडी आपकी दर के नियम की परिभाषा वाली फ़ाइल में मौजूद किसी परिभाषा से मेल खाता है. इस फ़ील्ड में ज़्यादा से ज़्यादा 40 वर्ण हो सकते हैं. |
चाइल्ड एलीमेंट
<Rates>
एलिमेंट में ये चाइल्ड एलिमेंट होते हैं:
चाइल्ड एलिमेंट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
<AllowablePointsOfSale> | Optional | Object | एक या उससे ज़्यादा ऐसे लैंडिंग पेज जो होटल के लिए ज़रूरी शर्तें पूरी करते हों. यह एलिमेंट, <Result> पर मौजूद <AllowablePointsOfSale> के सिंटैक्स का इस्तेमाल करता है. |
<Baserate> | Required | float | ठहरने के लिए कमरे का किराया. यह एलिमेंट, <Result> पर मौजूद <Baserate> के जैसा ही सिंटैक्स इस्तेमाल करता है.
ध्यान दें: |
<ChargeCurrency> | Optional | enum | उपयोगकर्ता बुकिंग के लिए पेमेंट कब और कहां करता है. यह एलिमेंट, <Result> में मौजूद <ChargeCurrency> के जैसा ही सिंटैक्स इस्तेमाल करता है. |
Optional | string | बंद कर दिया गया: कस्टम फ़ील्ड का इस्तेमाल करके, होटल से जुड़ा अतिरिक्त डेटा लैंडिंग पेज पर भेजा जा सकता है. यह एलिमेंट, <Result> में मौजूद <Custom[1‑5]> के सिंटैक्स का इस्तेमाल करता है. हर कस्टम फ़ील्ड में 200 से ज़्यादा वर्ण नहीं होने चाहिए. ज़्यादा जानकारी के लिए,
लैंडिंग पेज की फ़ाइलें देखें. अगर <Result> एलिमेंट में <Custom> एलिमेंट दिए गए हैं, तो वे <RoomBundle> एलिमेंट में इनहेरिट नहीं किए जाते हैं. साथ ही, उन्हें हर <RoomBundle> के लिए अलग से तय किया जाना चाहिए. इसके अलावा, अगर ज़रूरत हो, तो उन्हें <PackageData> में शामिल किया जा सकता है.
अहम जानकारी: अगर आपको |
|
<ExpirationTime> | Optional | DateTime | वह तारीख और समय जब किराये को खत्म माना जाता है. यह एलिमेंट, <Result> में मौजूद <ExpirationTime> के सिंटैक्स का इस्तेमाल करता है. |
<MilesIncluded> | Optional | boolean | किराये में फ़्रीक्वेंट फ़्लायर माइल्स शामिल हैं. पैरामीटर में ये शामिल हैं:
ध्यान दें: |
<Occupancy> | Optional | integer | इस किराये के हिसाब से, कमरे में रहने वाले लोगों की ज़्यादा से ज़्यादा संख्या के बारे में बताता है. अगर इसे नहीं बताया गया है, तो इसे पैरंट रेट के बराबर माना जाता है.
|
<OtherFees> | Required | float | कमरे के मूल किराये और टैक्स के अलावा, ऐसे शुल्क जिनसे कमरे के फ़ाइनल किराये पर असर पड़ता है. यह एलिमेंट, <Result> में मौजूद <OtherFees> के सिंटैक्स का इस्तेमाल करता है.
अगर |
<Refundable> | Optional | Object | इस सुविधा की मदद से, किराये को पूरी तरह से रिफ़ंड किए जाने वाले किराये के तौर पर लिस्ट किया जा सकता है या बिना किसी शुल्क के बुकिंग रद्द करने की सुविधा दी जा सकती है. यह जानकारी न देने पर, रिफ़ंड के बारे में कोई जानकारी नहीं दिखती.
<PackageData> लेवल पर मौजूद रिफ़ंड नीति, <Result> लेवल पर मौजूद रिफ़ंड नीति को बदल देती है. <Rates> लेवल पर मौजूद रिफ़ंड नीति, <PackageData> लेवल पर मौजूद रिफ़ंड नीति को बदल देती है. लेन-देन के मैसेज स्कीमा में सीधे तौर पर बदलाव किए बिना, उपयोगकर्ताओं को अन्य विकल्पों के ज़रिए भी रिफ़ंड की सुविधा वाली कीमत के बारे में बताया जा सकता है. इन विकल्पों के बारे में ज़्यादा जानें
रिफ़ंड किए जा सकने वाले किराये की नीति.
इस उदाहरण में, <Refundable available="1" refundable_until_days="7" refundable_until_time="18:00:00"/> ध्यान दें: हमारा सुझाव है कि आप सभी एट्रिब्यूट सेट करें. एक या उससे ज़्यादा एट्रिब्यूट सेट न होने पर, फ़ीड की स्थिति के बारे में चेतावनी वाला मैसेज जनरेट होता है. अगर आपने कोई एट्रिब्यूट सेट नहीं किया है, तो किराया, रिफ़ंड किए जाने वाले किराये के तौर पर नहीं दिखेगा. ये एट्रिब्यूट हैं:
एट्रिब्यूट सेट करते समय, इन बातों का ध्यान रखें:
|
<Tax> | Required | float | कमरे के किराये में शामिल टैक्स. यह एलिमेंट, <Result> में मौजूद <Tax> के सिंटैक्स का इस्तेमाल करता है. |
उदाहरण
मूल किराया और खास किराया
इस उदाहरण में, लेन-देन का एक ऐसा मैसेज दिखाया गया है जिसमें मूल किराया और शर्त के हिसाब से तय किया गया किराया शामिल है:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">200.00</Baserate>
<Tax currency="USD">20.00</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<Rates>
<!-- The rate_rule_id is required when using conditional rates -->
<Rate rate_rule_id="mobile">
<!-- Override base rate and taxes for conditional rates -->
<Baserate currency="USD">180.00</Baserate>
<Tax currency="USD">18.00</Tax>
</Rate>
</Rates>
</Result>
</Transaction>
खास किराये की एक से ज़्यादा शर्तें
इस उदाहरण में, <RoomBundle>
में मूल किराया और शर्तों के हिसाब से तय किए गए कई किराए दिखाए गए हैं:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>2</Nights>
<!-- When Google receives new room bundle information for an itinerary, all
previous room bundle pricing is dropped from Google's cache. Thus, if you
want to delete a specific room bundle from Google's cache, you may do so
by simply not providing that specific room bundle in subsequent transaction
messages. -->
<RoomBundle>
...
<!-- RoomID is required, PackageID is recommended. -->
<RoomID>5</RoomID>
<PackageID>ABC</PackageID>
<!-- Baserate is required. -->
<Baserate currency="USD">275.00</Baserate>
<Tax currency="USD">27.50</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<!-- RatePlanID is optional and represents the unique identifier for a
room and package data combination. We strongly recommend using RatePlanID
as a variable to build your dynamic landing page (formerly Point of Sale)
URL. For details, see Using Variables and Conditions. -->
<RatePlanID>5-ABC</RatePlanID>
<!-- Occupancy is mandatory for RoomBundle elements. -->
<!-- Elements below will get inherited to nested rate elements. -->
<Occupancy>2</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
</OccupancyDetails>
<InternetIncluded>1</InternetIncluded>
<!-- Rate rule "mobile" overrides chargeCurrency, "us_or_gb" doesn't. -->
<ChargeCurrency>web</ChargeCurrency>
<Rates>
<Rate rate_rule_id="mobile">
<Baserate currency="USD">258.33</Baserate>
<Tax currency="USD">25.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<!-- The value below overrides ChargeCurrency from roombundle. -->
<ChargeCurrency>hotel</ChargeCurrency>
</Rate>
<Rate rate_rule_id="us_or_gb">
<Baserate currency="USD">268.33</Baserate>
<Tax currency="USD">26.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
</Rate>
</Rates>
</RoomBundle>
</Result>
</Transaction>
<RoomBundle>
<Transaction>
मैसेज में, <Result>
के चाइल्ड के तौर पर रूम बंडल की कीमत और उपलब्धता तय करता है. हर पैकेज या यात्रा कार्यक्रम के कॉम्बिनेशन के लिए, एक अलग एलिमेंट तय करें. कमरे के बंडल के पैकेज और शर्तों के बारे में बताने के लिए, <RoomData>
का इस्तेमाल करें.
<RoomBundle>
एलिमेंट, लेन-देन के मैसेज की एक्सएमएल हैरारकी में यहां दिखता है:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
ज़्यादा जानकारी के लिए, रूम बंडल का इस्तेमाल करना लेख पढ़ें.
सिंटैक्स
<RoomBundle>
एलिमेंट में इस सिंटैक्स का इस्तेमाल किया जाता है:
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <Result> ... <RoomBundle> <!-- Required unless specified inline under<RoomData>
--> <RoomID>room_ID</RoomID> <!-- Required<PackageData>
--> <PackageID>package_ID</PackageID> <!-- Add Loyalty point information --> <MilesIncluded> <NumberOfMiles>integer</NumberOfMiles> <Provider> <Text language="en" text="provider-name"> </Provider> <LoyaltyCampaignID>campaign_ID</LoyaltyCampaignID>> </MilesIncluded> <!-- Required --> <Baserate currency="currency_code">price</Baserate> <!-- Required --> <Tax currency="currency_code">taxes</Tax> <!-- Required --> <OtherFees currency="currency_code">other_fees</OtherFees> <Refundable available="[false|true]" refundable_until_days="number_of_days" refundable_until_time="time"/> <!-- Required --> <ChargeCurrency>[deposit|hotel|installments|web]</ChargeCurrency> <Occupancy>max_number_of_intended_occupants</Occupancy> <OccupancyDetails> <!-- optional info about the types of guests, whether adults or children --></OccupancyDetails> <BreakfastIncluded>boolean_value</BreakfastIncluded> <InternetIncluded>boolean_value</InternetIncluded> <ParkingIncluded>boolean_value</ParkingIncluded> <RatePlanID>rate_plan_ID</RatePlanID> <Rates>...</Rates> </RoomBundle> ... </Result> </Transaction>
विशेषताएं
<RoomBundle>
एलिमेंट में कोई एट्रिब्यूट नहीं है.
चाइल्ड एलीमेंट
<RoomBundle>
एलिमेंट में ये चाइल्ड एलिमेंट होते हैं:
चाइल्ड एलिमेंट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
<Baserate> | Required | float | इससे ठहरने के लिए, रूम बंडल की कीमत तय की जाती है. यह एलिमेंट, <Result> में मौजूद <Baserate> के सिंटैक्स का इस्तेमाल करता है. हालांकि, इसमें यह अपवाद शामिल है:
|
<BreakfastIncluded> | Optional | boolean | इससे पता चलता है कि इस रूम बंडल में, किराये के साथ नाश्ता शामिल है या नहीं. |
<ChargeCurrency> | Optional | enum | उपयोगकर्ता बुकिंग के लिए पेमेंट कब और कहां करता है. यह एलिमेंट, <Result> में <ChargeCurrency> के जैसा ही सिंटैक्स इस्तेमाल करता है.
डिफ़ॉल्ट वैल्यू |
Optional | string | बंद कर दिया गया: रूम बंडल के लैंडिंग पेजों पर अतिरिक्त डेटा भेजने के लिए कस्टम फ़ील्ड. इन एलिमेंट में, <Result> में <Custom[1-5]> के जैसा ही सिंटैक्स इस्तेमाल किया जाता है. हर कस्टम फ़ील्ड में 200 से ज़्यादा वर्ण नहीं होने चाहिए. ज़्यादा जानकारी के लिए, लैंडिंग पेज की फ़ाइलें देखें.
कस्टम वैरिएबल सिर्फ़ तब दिखते हैं, जब लेन-देन के मैसेज में कीमतें भेजी जाती हैं. अगर <Result> एलिमेंट में <Custom> एलिमेंट दिए गए हैं, तो वे <RoomBundle> एलिमेंट में इनहेरिट नहीं होते हैं. साथ ही, उन्हें हर <RoomBundle> के लिए अलग से तय किया जाना चाहिए. इसके अलावा, अगर ज़रूरत हो, तो उन्हें <PackageData> में शामिल किया जा सकता है.
अहम जानकारी: अगर आपको |
|
<InternetIncluded> | Optional | boolean | अगर किसी रूम बंडल में बिना किसी शुल्क के इंटरनेट ऐक्सेस करने की सुविधा शामिल है, जबकि अन्य बंडलों में यह सुविधा शामिल नहीं है. अगर होटल के सभी कमरों में मुफ़्त इंटरनेट की सुविधा मिलती है, तो होटल के रूम बंडल के लिए यह एलिमेंट सेट न करें. यह एलिमेंट, कमरे में मौजूद तार वाले इंटरनेट या मेहमानों के कमरों में उपलब्ध न होने वाले वायरलेस इंटरनेट पर लागू नहीं होता. |
<MilesIncluded> | Optional | boolean | किराये में फ़्रीक्वेंट फ़्लायर माइल्स शामिल हैं. पैरामीटर में ये शामिल हैं:
ध्यान दें: |
<Occupancy> | Required | integer | इस किराये के हिसाब से, कमरे में रहने वाले लोगों की ज़्यादा से ज़्यादा संख्या के बारे में बताता है. उदाहरण के लिए, हो सकता है कि किसी बड़े सुइट में छह मेहमानों के ठहरने का इंतज़ाम हो, लेकिन "हनीमून पैकेज" में सिर्फ़ दो मेहमानों को ठहरने की अनुमति हो.
यह वैल्यू, अपने लैंडिंग पेज के यूआरएल में ऑक्यूपेंसी तय करते समय,
ध्यान दें:
|
<OtherFees> | Required | float | कमरे के मूल किराये और टैक्स के अलावा, ऐसे शुल्क जिनसे कमरे के फ़ाइनल किराये पर असर पड़ता है. <OtherFees> एलिमेंट में, currency एट्रिब्यूट की वैल्यू सबमिट करना ज़रूरी है. यह एट्रिब्यूट, शुल्क के लिए तीन अक्षरों वाला मुद्रा कोड तय करता है. उदाहरण के लिए, अमेरिकी डॉलर के लिए USD का इस्तेमाल करें. |
<PackageID> | Optional (recommended) | string | पैकेज के डेटा के लिए यूनीक आईडी. इस आईडी का इस्तेमाल करके, Room Bundle के डेटा का मिलान उस डेटा से करें जो <PackageData> में भेजा गया था. ज़्यादा जानकारी के लिए, रूम बंडल का मेटाडेटा लेख पढ़ें. (इस आईडी का इस्तेमाल, रूम बंडल की उस सामान्य परिभाषा को रेफ़रंस देने के लिए भी किया जा सकता है जिसका इस्तेमाल, रूम बंडल का डेटा इनलाइन तय करते समय, एक लेन-देन के मैसेज में किया जाता है.) |
<ParkingIncluded> | Optional | boolean | क्या रूम बंडल में पार्किंग की सुविधा बिना किसी शुल्क के शामिल है. ऐसा तब होता है, जब होटल में पार्किंग की सुविधा के लिए शुल्क लिया जाता है. ऐसे होटल के लिए इस एलिमेंट की वैल्यू न दें जहां पार्किंग मुफ़्त है.
मान्य वैल्यू |
<RatePlanID> | Optional | string | किराया प्लान आईडी, कमरे और पैकेज के कॉम्बिनेशन के लिए यूनीक आइडेंटिफ़ायर होता है. उदाहरण के लिए, अगर <RoomID> की वैल्यू 5 और <PackageID> की वैल्यू ABC है, तो <RatePlanID> के लिए 5-ABC वैल्यू का इस्तेमाल किया जा सकता है. हमारा सुझाव है कि डाइनैमिक लैंडिंग पेज (पहले इसे पॉइंट ऑफ़ सेल कहा जाता था) का यूआरएल बनाने के लिए, RatePlanID को वैरिएबल के तौर पर इस्तेमाल करें.
ज़्यादा जानकारी के लिए, वैरिएबल और शर्तों का इस्तेमाल करना लेख पढ़ें. |
<Rates> | Optional | <Rates> |
इस रूम बंडल के लिए डिफ़ॉल्ट किराये को बदलने वाले किराये. यह एलिमेंट, <Result> में <Rates> के जैसा ही सिंटैक्स इस्तेमाल करता है. |
<Refundable> | Optional | Object | इस सुविधा की मदद से, किराये को पूरी तरह से रिफ़ंड किए जाने वाले किराये के तौर पर लिस्ट किया जा सकता है या बिना किसी शुल्क के बुकिंग रद्द करने की सुविधा दी जा सकती है. यह जानकारी न देने पर, रिफ़ंड के बारे में कोई जानकारी नहीं दिखती.
<PackageData> लेवल पर मौजूद रिफ़ंड नीति, <Result> लेवल पर मौजूद रिफ़ंड नीति को बदल देती है. <Rates> लेवल पर मौजूद रिफ़ंड नीति, <PackageData> लेवल पर मौजूद रिफ़ंड नीति को बदल देती है. लेन-देन के मैसेज स्कीमा में सीधे तौर पर बदलाव किए बिना, उपयोगकर्ताओं को अन्य विकल्पों के ज़रिए भी रिफ़ंड की सुविधा वाली कीमत के बारे में बताया जा सकता है. इन विकल्पों के बारे में ज़्यादा जानें
रिफ़ंड किए जा सकने वाले किराये की नीति.
इस उदाहरण में, <Refundable available="1" refundable_until_days="7" refundable_until_time="18:00:00"/> ध्यान दें: हमारा सुझाव है कि आप सभी एट्रिब्यूट सेट करें. एक या उससे ज़्यादा एट्रिब्यूट सेट न होने पर, फ़ीड की स्थिति के बारे में चेतावनी वाला मैसेज जनरेट होता है. अगर आपने कोई एट्रिब्यूट सेट नहीं किया है, तो किराया, रिफ़ंड किए जाने वाले किराये के तौर पर नहीं दिखेगा. ये एट्रिब्यूट हैं:
एट्रिब्यूट सेट करते समय, इन बातों का ध्यान रखें:
|
<RoomID> | Required | string | कमरे के डेटा के लिए यूनीक आईडी. इस आईडी का इस्तेमाल करके, रूम बंडल के डेटा को <RoomData> में भेजे गए डेटा से मैच करें.
ज़्यादा जानकारी के लिए,
रूम बंडल का मेटाडेटा देखें. (इस आईडी का इस्तेमाल, एक ही लेन-देन के मैसेज में कमरे की सामान्य परिभाषा को रेफ़रंस देने के लिए भी किया जा सकता है. ऐसा तब किया जाता है, जब कमरे के डेटा को इनलाइन तरीके से तय किया जा रहा हो.) |
<Tax> | Required | float | कमरे के किराये में शामिल टैक्स.
<Tax> एलिमेंट में एक ज़रूरी एट्रिब्यूट, currency होता है. यह टैक्स के लिए, तीन अक्षरों वाला करंसी कोड तय करता है. उदाहरण के लिए, अमेरिकी डॉलर के लिए USD का इस्तेमाल करें. |
उदाहरण
एक व्यक्ति के लिए बुकिंग वाला बंडल
इस उदाहरण में, एक ऑक्यूपेंसी बंडल के साथ रिस्पॉन्स को तय किया गया है.
जब कोई व्यक्ति, ऑक्यूपेंसी पिकर में 1
चुनता है, तो Google, ऑक्यूपेंसी की संख्या के बावजूद सबसे कम किराया दिखाता है.
अगर एक व्यक्ति के लिए किराये की जानकारी उपलब्ध नहीं है, तो Google दो लोगों के लिए सबसे कम किराया दिखाएगा. ध्यान दें कि अगर किसी यात्रा कार्यक्रम के लिए, दो या उससे ज़्यादा लोगों के लिए बुकिंग का किराया कैश मेमोरी में सेव किया गया है, तो एक व्यक्ति के लिए बुकिंग के किराये के बारे में लाइव क्वेरी नहीं की जाती है.
इस उदाहरण में, <RoomID>
और <PackageID>
एलिमेंट के साथ, पहले से तय किए गए रूम और पैकेज के मेटाडेटा का रेफ़रंस दिया गया है. उस जानकारी को तय करने के लिए, <RoomData>
और <PackageData>
एलिमेंट का इस्तेमाल करें.
<!-- Efficient method of defining Room Bundles-->
<!----- Occupancy of 1 example ----->
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="12345678">
<!-- Part1: Define RoomData and PackageData in PropertyDataSet -->
<!-- Note: Once defined it does not have to be repeated for future
Transaction Messages.
PropertyDataSets can also be defined and sent in their own
Transaction Message separately from pricing. Google can be
configured to pull just PropertyDataSets once per day
(or on a predefined frequency). -->
<PropertyDataSet>
<Property>180054</Property>
<!-- Can be reused by multiple Room Bundles -->
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Queen Room - Non-Smoking" language="en"/>
<Text text="Chambre de la Roi Premium - Pas de Fumeurs" language="fr"/>
</Name>
<!-- Room can accommodate up to 4, but package data specifies occupancy
between 1 to 4 -->
<Capacity>4</Capacity>
</RoomData>
<RoomData>
<RoomID>436233</RoomID>
<Name>
<Text text="Premium King Room - Non-Smoking" language="en"/>
<Text text="Chambre de le Roi Premium - Pas de Fumeurs" language="fr"/>
</Name>
<Capacity>4</Capacity>
</RoomData>
<!-- Can be reused by multiple Room Bundles -->
<PackageData>
<PackageID>P11111</PackageID>
<Occupancy>1</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="7"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
<PackageData>
<PackageID>P54321</PackageID>
<Occupancy>2</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="7"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
<PackageData>
<PackageID>P12345</PackageID>
<Occupancy>4</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="1"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
</PropertyDataSet>
<!-- Efficient method of defining Room Bundles -->
<!-- Part 2: Reference RoomData and PackageData through ID -->
<Result>
<!-- Single occupancy pricing will be specified in a room bundle below -->
<Property>180054</Property>
<Checkin>2017-10-07</Checkin>
<Nights>2</Nights>
<!-- Base Room Bundle -->
<RoomBundle>
<RoomID>060773</RoomID>
<PackageID>P54321</PackageID>
<Baserate currency="USD">199.99</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RatePlanID>060773-P54321</RatePlanID>
</RoomBundle>
<RoomBundle>
<RoomID>060773</RoomID>
<PackageID>P11111</PackageID>
<!-- Price for 1 ("occupancy") is the lowest price and will be
displayed -->
<Baserate currency="USD">174.99</Baserate>
<Tax currency="USD">22.08</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RatePlanID>060773-P11111</RatePlanID>
</RoomBundle>
<!-- Premium Room Bundle -->
<RoomBundle>
<RoomID>436233</RoomID>
<PackageID>P12345</PackageID>
<!-- Price for 4 ("occupancy"), any eligible room bundle with 1 or more
occupancy will be displayed-->
<Baserate currency="USD">298.88</Baserate>
<Tax currency="USD">42.12</Tax>
<OtherFees currency="USD">10.00</OtherFees>
<RatePlanID>436233-P12345</RatePlanID>
</RoomBundle>
<!-- ..Continue providing all available RoomBundle rates under matched
property for 1 or more occupancies..-->
</Result>
</Transaction>
दो या उससे ज़्यादा लोगों के रहने की जगह
इस उदाहरण में, दो या उससे ज़्यादा ऑक्यूपेंसी वाला जवाब दिखाया गया है.
इस उदाहरण में, <RoomID>
और <PackageID>
एलिमेंट के साथ, पहले से तय किए गए रूम और पैकेज के मेटाडेटा का रेफ़रंस दिया गया है. उस जानकारी को तय करने के लिए, <RoomData>
और <PackageData>
एलिमेंट का इस्तेमाल करें.
<!-- Efficient method of defining Room Bundles-->
<!----- Occupancy of 3 example ----->
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="12345678">
<!-- Efficient method of defining Room Bundles-->
<!-- Part1: Define RoomData and PackageData in PropertyDataSet -->
<PropertyDataSet>
<Property>180054</Property>
<!-- Can be reused by multiple Room Bundles -->
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Queen Room - Non-Smoking" language="en"/>
<Text text="Chambre de la Roi Premium - Pas de Fumeurs" language="fr"/>
</Name>
<!-- Room can accommodate up to 4, but package data specifies occupancy
between 1 to 4 -->
<Capacity>4</Capacity>
</RoomData>
<RoomData>
<RoomID>436233</RoomID>
<Name>
<Text text="Premium King Room - Non-Smoking" language="en"/>
<Text text="Chambre de le Roi Premium - Pas de Fumeurs" language="fr"/>
</Name>
<Capacity>4</Capacity>
</RoomData>
<!-- Can be reused by multiple Room Bundles -->
<PackageData>
<PackageID>P33333</PackageID>
<Occupancy>3</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="7"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
<PackageData>
<PackageID>P12345</PackageID>
<Occupancy>4</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="1"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
</PropertyDataSet>
<Result>
<Property>180054</Property>
<Checkin>2017-10-07</Checkin>
<Nights>2</Nights>
<!-- Efficient method of defining Room Bundles -->
<!-- Part 2: Reference RoomData and PackageData through ID -->
<!-- Base Room Bundle -->
<RoomBundle>
<!-- Baserate above and attributes must match atleast one room bundle
below -->
<RoomID>060773</RoomID>
<PackageID>P33333</PackageID>
<Baserate currency="USD">499.99</Baserate>
<Tax currency="USD">55.12</Tax>
<OtherFees currency="USD">22.00</OtherFees>
</RoomBundle>
<!-- Premium Room Bundle -->
<RoomBundle>
<RoomID>436233</RoomID>
<PackageID>P12345</PackageID>
<!-- Lowest price for 3 ("occupancy"), shown below, will be displayed -->
<Baserate currency="USD">598.88</Baserate>
<Tax currency="USD">62.12</Tax>
<OtherFees currency="USD">30.00</OtherFees>
</RoomBundle>
<!-- ..Continue providing all available RoomBundle rates under matched
property for 2 or more occupancies..-->
</Result>
</Transaction>
अलग-अलग सुविधाओं वाले एक तरह के कई कमरे
यहां दिए गए उदाहरण में, हॉस्टल के कमरों के संभावित किराये को दिखाने के लिए, एक से ज़्यादा रूम बंडल में ऑक्यूपेंसी सेट की गई है.
<?xml version="1.0" encoding="UTF-8"?>
<Transaction ... >
<Result>
...
<!-- Suite Room Bundle -->
<RoomBundle>
<RoomID>suite1</RoomID>
<PackageID>standard</PackageID>
<Occupancy>2</Occupancy>
<!-- Price for room -->
<Baserate currency="USD">80.00</Baserate>
<Tax currency="USD">5.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RoomData>
<Name>
<Text text="Suite for 2" language="en"/>
</Name>
</RoomData>
</RoomBundle>
<!-- Small Dorm Room Bundle -->
<RoomBundle>
<RoomID>small_dorm</RoomID>
<PackageID>economy</PackageID>
<Occupancy>1</Occupancy>
<!-- Price per bed -->
<Baserate currency="USD">35.00</Baserate>
<Tax currency="USD">3.50</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RoomData>
<Name>
<Text text="1 bed in small dorm" language="en"/>
</Name>
</RoomData>
</RoomBundle>
<!-- Large Dorm Room Bundle -->
<RoomBundle>
<RoomID>large_dorm</RoomID>
<PackageID>economy</PackageID>
<Occupancy>1</Occupancy>
<!-- Price per bed -->
<Baserate currency="USD">20.00</Baserate>
<Tax currency="USD">2.50</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RoomData>
<Name>
<Text text="1 bed in large dorm" language="en"/>
</Name>
</RoomData>
</RoomBundle>
...
</Result>
</Transaction>
खास किराये की एक से ज़्यादा शर्तें
इस उदाहरण में, <RoomBundle>
में मूल किराया और शर्तों के हिसाब से तय किए गए कई किराए दिखाए गए हैं:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>2</Nights>
<!-- When Google receives new room bundle information for an itinerary, all
previous room bundle pricing is dropped from Google's cache. Thus, if you
want to delete a specific room bundle from Google's cache, you may do so
by simply not providing that specific room bundle in subsequent transaction
messages. -->
<RoomBundle>
...
<!-- RoomID is required, PackageID is recommended. -->
<RoomID>5</RoomID>
<PackageID>ABC</PackageID>
<!-- Baserate is required. -->
<Baserate currency="USD">275.00</Baserate>
<Tax currency="USD">27.50</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<!-- RatePlanID is optional and represents the unique identifier for a
room and package data combination. We strongly recommend using RatePlanID
as a variable to build your dynamic landing page (formerly Point of Sale)
URL. For details, see Using Variables and Conditions. -->
<RatePlanID>5-ABC</RatePlanID>
<!-- Occupancy is mandatory for RoomBundle elements. -->
<!-- Elements below will get inherited to nested rate elements. -->
<Occupancy>2</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
</OccupancyDetails>
<InternetIncluded>1</InternetIncluded>
<!-- Rate rule "mobile" overrides chargeCurrency, "us_or_gb" doesn't. -->
<ChargeCurrency>web</ChargeCurrency>
<Rates>
<Rate rate_rule_id="mobile">
<Baserate currency="USD">258.33</Baserate>
<Tax currency="USD">25.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<!-- The value below overrides ChargeCurrency from roombundle. -->
<ChargeCurrency>hotel</ChargeCurrency>
</Rate>
<Rate rate_rule_id="us_or_gb">
<Baserate currency="USD">268.33</Baserate>
<Tax currency="USD">26.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
</Rate>
</Rates>
</RoomBundle>
</Result>
</Transaction>
<OccupancyDetails>
<Occupancy>
, लेन-देन के मैसेज में किसी कमरे या पैकेज के लिए मेहमानों की ज़्यादा से ज़्यादा संख्या के बारे में बताता है. <OccupancyDetails>
में अतिरिक्त जानकारी शामिल हो सकती है. जैसे, मेहमानों की संख्या और टाइप (वयस्क या बच्चे).
जब <Result>
या <RoomBundle>
के <Rates>
एलिमेंट में <Occupancy>
और <OccupancyDetails>
दिखते हैं, तो इसका मतलब है कि किराये पर, कमरे में रहने वाले लोगों की संख्या की जानकारी का असर पड़ता है.
अगर आपने <RoomBundle>
में <OccupancyDetails>
और नेस्ट किया गया <Rate>
एलिमेंट शामिल किया है, तो <Rate>
में बुनियादी <Occupancy>
नहीं भेजा जा सकता. इसके बजाय, इनमें से किसी एक विकल्प का इस्तेमाल करने का सुझाव दिया जाता है:
<Rate>
में रहने वाले लोगों की संख्या शामिल न करें: इस मामले में,<Rate>
को<RoomBundle>
से सीधे तौर पर<OccupancyDetails>
मिलता है
या,
- डुप्लीकेट
<OccupancyDetails>
: इस मामले में,<RoomBundle>
और नेस्ट किए गए<Rate>
एलिमेंट, दोनों में एक जैसे अतिरिक्त<OccupancyDetails>
भेजें
सिंटैक्स
<OccupancyDetails>
दिखने पर, इससे पहले हमेशा <Occupancy>
दिखता है.
इस सिंटैक्स का इस्तेमाल करें:
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <Result> ... <Occupancy>max_number_of_intended_occupants</Occupancy> <OccupancyDetails> <NumAdults>number_of_adults</NumAdults> <Children> <Child age=age_of_one_child_guest/> <Child age=age_of_one_child_guest/> </Children> </OccupancyDetails> </Result> </Transaction>
चाइल्ड एलीमेंट
<OccupancyDetails>
एलिमेंट में ये चाइल्ड एलिमेंट होते हैं:
चाइल्ड एलिमेंट | ज़रूरी है? | टाइप | ब्यौरा |
---|---|---|---|
<NumAdults> | Required | integer | वयस्क मेहमानों की संख्या. कम से कम:1, ज़्यादा से ज़्यादा:20. |
<Children> | Optional | Object | एक या उससे ज़्यादा <Child> एलिमेंट के लिए कंटेनर. |
<Child age> | Optional | integer | इस बच्चे की ज़्यादा से ज़्यादा उम्र—उदाहरण के लिए, <Child age="17"> . |
उदाहरण
यहां दिए गए उदाहरणों में बताया गया है कि <OccupancyDetails>
, <Results>
, <RoomBundle>
या <Rates>
चाइल्ड एलिमेंट में कैसे दिख सकता है.
नतीजे का जवाब
इस उदाहरण में, लाइव प्राइसिंग क्वेरी के जवाब में, एक प्रॉपर्टी के लिए एक यात्रा की योजना और उसकी कीमत के बारे में बताया गया है. इस क्वेरी में, उपयोगकर्ता ने मेहमानों की संख्या और उनके टाइप के बारे में बताया है. यहां, <OccupancyDetails>
-- दो वयस्क और एक बच्चा -- को <Result>
में दिखाया गया है.
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-23T16:20:00-04:00" id="42">
<Result>
<Property>060773</Property>
<RoomID>RoomType101</RoomID>
<PackageID>Package101</PackageID>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">278.33</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="site1"/>
</AllowablePointsOfSale>
<Occupancy>3</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
<Children>
<Child age="17"/>
</Children>
</OccupancyDetails>
</Result>
</Transaction>
किराये की जानकारी देने वाला जवाब
यहां दिए गए उदाहरण में, एक यात्रा की योजना और उसमें शामिल एक वयस्क और एक बच्चे के लिए तय किया गया किराया बताया गया है. यहां, <OccupancyDetails>
को <Result>
के <Rates>
एलिमेंट में दिखाया गया है.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Transaction id="Wtdj8QoQIWcAAbaTGlIAAAC4" timestamp="2018-04-18T11:27:45-04:00">
<Result>
<Property>8251</Property>
<Checkin>2018-06-20</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">62.18</Baserate>
<Tax currency="USD">2.45</Tax>
<OtherFees currency="USD">0.00</OtherFees>
<Rates>
<Rate rate_rule_id="rule-951">
<Occupancy>2</Occupancy>
<OccupancyDetails>
<NumAdults>1</NumAdults>
<Children>
<Child age="17"/>
</Children>
</OccupancyDetails>
<Baserate currency="USD">42.61</Baserate>
<Tax currency="USD">5.70</Tax>
<OtherFees currency="USD">0.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="yourhotelpartnersite.com"/>
</AllowablePointsOfSale>
</Rate>
</Rates>
</Result>
</Transaction>
अलग-अलग सुविधाओं वाले एक तरह के कमरे
यहां दिए गए उदाहरण में, दो वयस्कों और एक बच्चे के लिए दो रातों के लिए, रिफ़ंड किए जा सकने वाले किराये की जानकारी दी गई है. यहां, <OccupancyDetails>
, <RoomBundle>
के अंदर दिखते हैं
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-23T16:20:00-04:00" id="42">
<Result>
<Property>6781291</Property>
<Checkin>2017-08-05</Checkin>
<Nights>2</Nights>
...
<RoomBundle>
<RoomID>10291</RoomID>
<RatePlanID>564739</RatePlanID>
<PackageID>564739</PackageID>
<Occupancy>3</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
<Children>
<Child age="17"/>
</Children>
</OccupancyDetails>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="true" refundable_until_days="1" refundable_until_time="23:59:00" />
<Baserate currency="USD">185.34</Baserate>
<Tax currency="USD">37.06</Tax>
<OtherFees currency="USD">2.22</OtherFees>
</RoomBundle>
</Result>
</Transaction>
अलग-अलग सुविधाओं वाले एक तरह के कई कमरे
यहां दिए गए उदाहरण में, <RoomBundle>
के कई ऐसे किराये तय किए गए हैं जो दो वयस्कों और दो बच्चों के लिए ही लागू होते हैं. यहां, <OccupancyDetails>
, <RoomBundle>
के <Rates>
एलिमेंट में दिखते हैं.
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">275.00</Baserate>
<Tax currency="USD">27.50</Tax>
<OtherFees currency="USD">0</OtherFees>
<RoomBundle>
<RoomID>5</RoomID>
<PackageID>STD</PackageID>
<Baserate currency="USD">275.00</Baserate>
<Tax currency="USD">27.50</Tax>
<OtherFees currency="USD">0</OtherFees>
<InternetIncluded>1</InternetIncluded>
<ChargeCurrency>web</ChargeCurrency>
<Occupancy>4</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
<Children>
<Child age="17"/>
<Child age="17"/>
</Children>
</OccupancyDetails>
<Rates>
<Rate rate_rule_id="mobile">
<Baserate currency="USD">258.33</Baserate>
<Tax currency="USD">25.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<ChargeCurrency>hotel</ChargeCurrency>
</Rate>
<Rate rate_rule_id="us_or_gb">
<Baserate currency="USD">268.33</Baserate>
<Tax currency="USD">26.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
</Rate>
</Rates>
</RoomBundle>
</Result>
</Transaction>