ট্রানজ্যাকশন (প্রপার্টি ডেটা)

অনুরোধ

সিন্ট্যাক্স

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>

এলিমেন্ট ও অ্যাট্রিবিউট

ট্রানজ্যাকশন (প্রপার্টি ডেটা) মেসেজে নিম্নলিখিত এলিমেন্ট ও অ্যাট্রিবিউট থাকে:

এলিমেন্ট / @অ্যাট্রিবিউট বিষয়বস্তু ধরন বিবরণ
Transaction 1 Complex element ARI প্রয়োগের ক্ষেত্রে, এটি হল কোনও মেসেজের রুট এলিমেন্ট যা একটি প্রপার্টির জন্য রুমের ধরন ও প্যাকেজ নির্ধারণ করে।
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> সেট করুন যদি ExtraGuestCharges বা AdditionalGuestAmounts সংজ্ঞায়িত করা হয় যাতে নিশ্চিত করা যায় যে ভুল অকুপেন্সি বিকল্পের জন্য দাম দেখানো হচ্ছে না।

Transaction / PropertyDataSet / RoomData / AdultCapacity 0..1 integer একটি রুমে সর্বাধিক যতজন প্রাপ্তবয়স্ক ব্যক্তি শারীরিকভাবে থাকতে পারবেন। এটি রেটের সাথে পাঠানো যেকোনও NumberOfGuests ভ্যালুর চেয়ে বেশি বা সমান হতে হবে।

<AdultCapacity>-এর মান অবশ্যই 1 এবং 99-এর মধ্যে একটি ধনাত্মক পূর্ণসংখ্যা হতে হবে। উদাহরণের জন্য এখানে দেখুন।

Transaction / PropertyDataSet / RoomData / ChildCapacity 0..1 integer একটি রুমে সর্বাধিক যতজন বাচ্চা শারীরিকভাবে থাকতে পারবে।

<ChildCapacity>-এর মান ১ থেকে ৯৯-এর মধ্যে কোনও ধনাত্মক পূর্ণসংখ্যা হতে হবে, এই দুটি ধরে। উদাহরণের জন্য এখানে দেখুন।

Transaction / PropertyDataSet / RoomData / OccupancySettings 0..1 OccupancySettings সেটিংস যা রুমের অকুপেন্সি সংক্রান্ত প্রয়োজনীয়তা সীমাবদ্ধ বা পরিবর্তন করতে পারে।

<OccupancySettings> এলিমেন্টে নিম্নলিখিত চাইল্ড এলিমেন্ট থাকে:

  • <MinOccupancy>: একটি রুমে ন্যূনতম যতজন অতিথি থাকতে পারবেন। যেমন, এটি 2-এ সেট করা থাকলে, এই রুমটি একজন অতিথির জন্য বুক করা যাবে না।

    <MinOccupancy>-এর মান ১ থেকে ৯৯-এর মধ্যে কোনও ধনাত্মক পূর্ণসংখ্যা হতে হবে, এই দুটি ধরে।

  • <MinAge>: কোনও রুমে থাকা সব অতিথির ন্যূনতম বয়স। যেমন, এটি 18-এ সেট করা থাকলে, এই রুমটি শুধুমাত্র এমন গ্রুপের জন্য বুক করা যাবে যেখানে সব অতিথির বয়স ১৮ বা তার বেশি।

    <MinAge>-এর মান ০ থেকে ৯৯-এর মধ্যে (এই দুটি সংখ্যা সহ) একটি ধনাত্মক পূর্ণসংখ্যা হতে হবে।

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

সব চাইল্ড এলিমেন্ট অন্তর্ভুক্ত করার প্রয়োজন নেই।

Transaction / PropertyDataSet / RoomData / PhotoURL 0..n PhotoURL প্রদত্ত রুম বা রুম বান্ডেলের ফটোর জন্য URL এবং ঐচ্ছিক ক্যাপশন। আপনি কোনও রুম বা রুম বান্ডেলের জন্য একাধিক <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> (ঐচ্ছিক): শস্যক্ষেতের দৈর্ঘ্য নির্দিষ্ট করে। cm ভ্যালু সহ unit অ্যাট্রিবিউট এবং পূর্ণসংখ্যা সেন্টিমিটারে শস্যক্ষেতের দৈর্ঘ্য সহ 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-এর মান ০ থেকে ৩৩০-এর মধ্যে পূর্ণসংখ্যা হতে হবে, এই দুটি ধরে।
Transaction / PropertyDataSet / PackageData / Refundable / @refundable_until_time 0.. Time (available, true হলে এটি বিশেষভাবে সাজেস্ট করা হয়) হোটেলের স্থানীয় সময় অনুযায়ী দিনের কোন সময় পর্যন্ত ফুল রিফান্ডের অনুরোধ গ্রহণ করা হবে তা উল্লেখ করে। এটি refundable_until_days-এর সাথে একত্রিত করে নির্দিষ্ট করা যেতে পারে, যেমন, "চেক-ইন করার দুই দিন আগে বিকেল ৪:০০টা পর্যন্ত রিফান্ড পাওয়া যাবে"। refundable_until_time সেট করা না থাকলে, ভ্যালু ডিফল্ট হিসেবে মাঝরাত সেট করা হয়।
Transaction / PropertyDataSet / PackageData / BreakfastIncluded 0..1 boolean এই ধরনের রুমে ব্রেকফাস্টের সুবিধা আছে কিনা তা উল্লেখ করে। সঠিক ভ্যালু হল 0 (বা false) এবং 1 (বা true)।

<BreakfastIncluded>-এর পরিবর্তে <Meals> ব্যবহার করলে ভালো হয়।

Transaction / PropertyDataSet / PackageData / CheckinTime 0..1 Time হোটেলের স্থানীয় সময় অনুযায়ী চেক-ইন করার সবচেয়ে আগেকার সম্ভাব্য সময়। সময় ২৪:০০-এর কম হতে হবে।
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 (বা true) হিসেবে সেট করুন যদি অতিথিদের কাছে এমন কোনও জায়গায় (যে রুমে তারা থাকেন সেটি ছাড়া) ব্রেকফাস্ট/ ডিনার করার বিকল্প থাকে যেখানে তারা অন্যান্য অতিথিদের সাথে যোগাযোগ এড়িয়ে চলতে পারেন; অন্যথায় 0 (বা false) হিসেবে সেট করুন।
  • 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-এর কোনও ডিফল্ট ভ্যালু নেই। কোনও ভ্যালু বাদ দিলে XML-এ কোনও সমস্যা হয় না, তবে ব্যবহারকারী রুমের ধরন বা বেডের সংখ্যা অনুযায়ী ফিল্টার করলে, আপনার লিস্টিং সার্চ ফলাফলে দেখানো হয় না।

দুটি সিঙ্গল বেড

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

দুটি ডবল বেড

নিচে দুটি double বেড সহ 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>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>


খাবার

নিম্নলিখিত উদাহরণে রুম ও প্যাকেজের মেটাডেটা হিসেবে খাবার, ফটো, চেক-ইন ও চেক-আউটের সময় উল্লেখ করা হয়েছে:

<?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) মেসেজে নিম্নলিখিত এলিমেন্ট ও অ্যাট্রিবিউট আছে:

এলিমেন্ট / @অ্যাট্রিবিউট বিষয়বস্তু ধরন বিবরণ
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>