এক নজরে
এই API আপনাকে সম্ভাব্য ডিসকাউন্ট নির্দিষ্ট করতে দেয়। উল্লেখ করা প্রোমোশনের মধ্যে, Google উপযুক্ত প্রোমোশন বা প্রোমোশনের সেট প্রয়োগ করে যার ফলে সবচেয়ে কম দাম হয়। আপনি যদি এমন কোনও API খুঁজছেন যা শর্ত পূরণ হলে দাম বাড়াতে বা কমাতে পারে এমন স্বেচ্ছাচারী রেট অ্যাডজাস্টমেন্টকে সমর্থন করে, তাহলে আমাদের রেট মডিফিকেশন API বিবেচনা করুন। মনে রাখবেন, দুটি API-ই থাকলে, প্রোমোশনের আগে রেট সংক্রান্ত পরিবর্তন প্রয়োগ করা হয়।
অনুরোধ
সিন্ট্যাক্স
Promotions মেসেজে নিম্নলিখিত সিনট্যাক্স ব্যবহার করা হয়:
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner= "partner_key"
id="message_ID"
timestamp="timestamp">
<HotelPromotions hotel_id="HotelID" action="[overlay]">
<Promotion id="PromotionID" action="[delete]">
<BookingDates>
<DateRange start="YYYY-MM-DD[THH:mm:ss]" end="YYYY-MM-DD[THH:mm:ss]"
days_of_week="MTWHFSU_or_subset"/>
<DateRange start="YYYY-MM-DD[THH:mm:ss]" end="YYYY-MM-DD[THH:mm:ss]"
days_of_week="MTWHFSU_or_subset"/>
</BookingDates>
<BookingWindow min="integer_or_duration" max="integer_or_duration"/>
<Ceiling amount_per_night="float"/>
<Floor amount_per_night="float"/>
<CheckinDates>
<DateRange start="[YYYY-]MM-DD" end="[YYYY-]MM-DD" days_of_week="MTWHFSU_or_subset"/>
</CheckinDates>
<CheckoutDates>
<DateRange start="[YYYY-]MM-DD" end="[YYYY-]MM-DD" days_of_week="MTWHFSU_or_subset"/>
</CheckoutDates>
<!-- Specify only one of percentage, percentage_of_base, fixed_amount,
fixed_amount_per_night, fixed_price, or fixed_price_per_night;
applied_nights is only used with percentage, fixed_amount_per_night,
and fixed_price_per_night. -->
<Discount percentage="float" percentage_of_base="float"
fixed_amount="float" fixed_amount_per_night="float"
fixed_price="float" fixed_price_per_night="float"
applied_nights="integer_1_to_99" rank="integer_1_to_99">
<!-- FreeNights may not be used in conjunction with attributes on Discount -->
<FreeNights stay_nights="integer" discount_nights="integer"
discount_percentage="float" night_selection="[cheapest|last]"
repeats="boolean"/>
</Discount>
<!-- Exactly one of Discount or BestDailyDiscount must be specified.
Specify only one of percentage, fixed_amount, or fixed_price. -->
<BestDailyDiscount percentage="float" fixed_amount="float" fixed_price="float"/>
<Devices>
<Device type="[desktop|tablet|mobile]"/>
</Devices>
<InventoryCount min="integer" max="integer"/>
<LengthOfStay min="integer" max="integer"/>
<MembershipRateRule id="RateRuleID"/>
<MinimumAmount before_discount="integer"/>
<Occupancy min="integer" max="integer"/>
<RatePlans>
<RatePlan id="PackageID_1"/>
<RatePlan id="PackageID_2"/>
</RatePlans>
<RoomTypes>
<RoomType id="RoomID_1"/>
<RoomType id="RoomID_2"/>
</RoomTypes>
<Stacking type="[any|base|none|second]"/>
<StayDates application="[all|any|overlap]">
<DateRange start="[YYYY-]MM-DD" end="[YYYY-]MM-DD" days_of_week="MTWHFSU_or_subset"/>
</StayDates>
<UserCountries type="[include|exclude]">
<Country code="country_code"/>
</UserCountries>
</Promotion>
</HotelPromotions>
</Promotions>
এলিমেন্ট ও অ্যাট্রিবিউট
প্রোমোশন মেসেজে নিম্নলিখিত এলিমেন্ট ও অ্যাট্রিবিউট থাকে:
| এলিমেন্ট / @অ্যাট্রিবিউট | বিষয়বস্তু | ধরন | বিবরণ |
|---|---|---|---|
| Promotions | 1 | Complex element | প্রোমোশন মেসেজের রুট এলিমেন্ট। |
| Promotions / @partner | 1 | string | এই মেসেজের জন্য পার্টনার অ্যাকাউন্ট। এই স্ট্রিং ভ্যালু হল
"পার্টনার কী" ভ্যালু যা Hotel Center-এর
অ্যাকাউন্ট সেটিংস পৃষ্ঠায় তালিকাভুক্ত করা আছে।
আপনার যদি এমন ব্যাকএন্ড থাকে যা একাধিক অ্যাকাউন্টের জন্য ফিড প্রদান করে, তাহলে এই ভ্যালুটি একই অ্যাকাউন্টের জন্য আপনার |
| Promotions / @id | 1 | string | এই অনুরোধের মেসেজের জন্য একটি অনন্য শনাক্তকারী। এই ভ্যালু রেসপন্স মেসেজে ফেরত পাঠানো হয়। অনুমোদিত অক্ষরগুলি হল a-z, A-Z, 0-9, _ (আন্ডারস্কোর), এবং - (ড্যাশ)। |
| Promotions / @timestamp | 1 | DateTime | এই মেসেজটি তৈরি করার তারিখ ও সময়। |
| Promotions / HotelPromotions | 0..n | HotelPromotions | কোনও প্রপার্টির জন্য প্রোমোশন। প্রতিটি প্রোমোশন একটি প্রপার্টির ক্ষেত্রে প্রযোজ্য।
|
| Promotions / HotelPromotions / @hotel_id | 1 | string | প্রপার্টির জন্য অনন্য শনাক্তকারী। এই ভ্যালু অবশ্যই হোটেল তালিকা ফিডে
<listing> এলিমেন্টের
<id> ব্যবহার করে নির্দিষ্ট করা হোটেল আইডির সাথে
ম্যাচ করতে হবে। হোটেল আইডি Hotel Center-এও তালিকাভুক্ত করা আছে। |
| Promotions / HotelPromotions / @action | 0..1 | enum | উল্লেখ করা থাকলে, ভ্যালু অবশ্যই
উল্লেখ করা না থাকলে, বর্তমান মেসেজে উল্লেখ করা প্রতিটি প্রোমোশন হয়:
|
| Promotions / HotelPromotions / Promotion | 0..99 | Promotion | কোনও প্রপার্টির জন্য একটি প্রোমোশন। মনে রাখবেন,
আপনাকে ৯৯টির বেশি প্রোমোশন ব্যবহার করতে হলে, আপনার টেকনিক্যাল অ্যাকাউন্ট ম্যানেজারের (TAM) সাথে যোগাযোগ করুন। |
| Promotions / HotelPromotions / Promotion / @id | 1 | string | প্রোমোশনের জন্য অনন্য শনাক্তকারী। সর্বাধিক ৪০টি অক্ষর ব্যবহার করা যাবে। অনুমোদিত অক্ষরগুলি হল a-z, A-Z, 0-9, _ (আন্ডারস্কোর), - (ড্যাশ), এবং . (ফুলস্টপ)। |
| Promotions /HotelPromotions / Promotion / @action | 0..1 | enum | উল্লেখ করা থাকলে, ভ্যালু অবশ্যই
|
| Promotions / HotelPromotions / Promotion / BookingDates | 0..1 | BookingDates | এক বা একাধিক রেঞ্জের জন্য একটি কন্টেনার যা নির্ধারণ করে যে প্রোমোশন প্রয়োগ করার জন্য বুকিং কখন করতে হবে। |
| Promotions / HotelPromotions / Promotion / BookingDates / DateRange | 1..99 | DateRange | প্রোমোশন প্রযোজ্য হওয়ার জন্য বুকিংয়ের সময়সীমা উল্লেখ করা। |
| Promotions / HotelPromotions / Promotion / BookingDates / DateRange / @start | 0..1 | Date বা DateTime | রেঞ্জের শুরুর তারিখ বা তারিখ ও সময় (প্রপার্টির টাইম জোনের উপর ভিত্তি করে), যা রেঞ্জের মধ্যে অন্তর্ভুক্ত।
|
| Promotions / HotelPromotions / Promotion / BookingDates / DateRange / @end | 0..1 | Date বা DateTime | রেঞ্জের শেষ তারিখ বা তারিখ ও সময় (প্রপার্টির টাইম জোন অনুযায়ী), ইনক্লুসিভ।
|
| Promotions / HotelPromotions / Promotion / BookingDates / DateRange / @days_of_week | 0..1 | string | তারিখের রেঞ্জে সপ্তাহের যেসব দিন অনুমোদিত। উল্লেখ করা না হলে, তারিখের রেঞ্জে সব দিনই অনুমোদিত। স্ট্রিংয়ের প্রতিটি অক্ষর একটি দিনকে নির্দিষ্ট করে। যেমন, "MTWHF" উল্লেখ করে যে তারিখের রেঞ্জে সপ্তাহের দিনগুলি অনুমোদিত। সঠিক অক্ষরগুলি হল:
যেকোনও অক্ষরের কম্বিনেশন সঠিক। |
| Promotions / HotelPromotions / Promotion / BookingWindow | 0..1 | BookingWindow | চেক-ইন করার তারিখের (প্রপার্টির টাইম জোন অনুযায়ী) সাপেক্ষে বুকিং করার সময়সীমা উল্লেখ করে। যেমন, চেক-ইন করার অন্তত ৭ দিন আগে থেকে বুকিং উইন্ডো সেট করা যেতে পারে, তবে ১৮০ দিনের বেশি আগে নয়। |
| Promotions / HotelPromotions / Promotion / BookingWindow / @min | 0..1 | integer or duration | প্রোমোশন প্রযোজ্য হওয়ার জন্য চেক-ইন করার আগে বুকিংয়ের ন্যূনতম সময়সীমা
কত হতে হবে। এটি নির্দিষ্ট করা না থাকলে বা এর ভ্যালু
0 হলে, কোনও ন্যূনতম ভ্যালু নেই।
সঠিক ভ্যালুর ধরন হল:
|
| Promotions / HotelPromotions / Promotion / BookingWindow / @max | 0..1 | integer or duration | প্রোমোশন প্রযোজ্য হওয়ার জন্য চেক-ইন করার কত দিন আগে বুকিং করতে হবে
তার সর্বাধিক সংখ্যা। এটি উল্লেখ করা না থাকলে বা এর ভ্যালু
0 হলে, কোনও সর্বোচ্চ সীমা নেই।
সঠিক ভ্যালুর ধরন হল:
|
| Promotions / HotelPromotions / Promotion / Ceiling | 0..1 | Ceiling |
প্রোমোশন প্রয়োগ করার পরে রেটের সর্বাধিক ভ্যালু কত সেট করা যাবে তার উপর বিধিনিষেধ নির্ধারণ করে। প্রোমোশনে সবসময় স্ট্যাকিং কনফিগার করা থাকলে, উদাহরণ: ১-রাত থাকার জন্য দাম যেখানে
এখানে গণনার ক্রম দেওয়া হল:
৬০ যে আরও কঠোর সামগ্রিক সীমা তা অপ্রাসঙ্গিক কারণ এটি শুধুমাত্র নিজস্ব প্রোমোশনের জন্য প্রযোজ্য এবং সম্পূর্ণ প্রোমোশন স্ট্যাক জুড়ে কোনও একক সীমা থাকতে পারে না। |
| Promotions / HotelPromotions / Promotion / Ceiling / @amount_per_night | 1 | float |
ছাড় প্রয়োগ করার পরে, প্রতি রাতের রেট সর্বাধিক যত টাকা সেট করা যেতে পারে।
|
| Promotions / HotelPromotions / Promotion / Floor | 0..1 | Floor |
প্রোমোশন প্রয়োগ করার পরে, কোনও রেট যে সর্বনিম্ন মানে সেট করা যেতে পারে তার উপর বিধিনিষেধ নির্ধারণ করে। প্রোমোশনে সবসময়
স্ট্যাকিং কনফিগার করা থাকলে, উদাহরণ: ১-রাত থাকার জন্য দাম যেখানে
এখানে গণনার ক্রম দেওয়া হল:
৯০ যে আরও কঠোর সামগ্রিক ফ্লোর তা প্রাসঙ্গিক নয় কারণ এটি শুধুমাত্র নিজের প্রোমোশনের জন্যই প্রযোজ্য এবং এমন কোনও একক ফ্লোর থাকতে পারে না যা সম্পূর্ণ প্রোমোশন স্ট্যাক জুড়ে প্রযোজ্য। |
| Promotions / HotelPromotions / Promotion / Floor / @amount_per_night | 1 | float |
ছাড় প্রয়োগ করার পরে প্রতি রাতের রেট ন্যূনতম যত সেট করা যেতে পারে। এছাড়াও,
|
| Promotions / HotelPromotions / Promotion / CheckinDates | 0..1 | CheckinDates | এক বা একাধিক তারিখের রেঞ্জের জন্য একটি কন্টেনার যা প্রোমোশন প্রযোজ্য হওয়ার জন্য কখন চেক-ইন করতে হবে তা নির্ধারণ করে। |
| Promotions / HotelPromotions / Promotion / CheckinDates / DateRange | 1..20 | DateRange | প্রোমোশন প্রযোজ্য হওয়ার জন্য চেক-ইন করার তারিখের ব্যাপ্তি উল্লেখ করতে হবে। আপনি এক বা একাধিক প্রোমোশন মুছে দিলে এই এলিমেন্টটি প্রয়োজন নেই। YearlessDate ফর্ম্যাটও কাজ করে।
|
| Promotions / HotelPromotions / Promotion / CheckinDates / DateRange / @start | 0..1 | Date or YearlessDate | তারিখের রেঞ্জের শুরুর তারিখ (প্রপার্টির টাইম জোন অনুযায়ী),
অন্তর্ভুক্ত। এই তারিখটি অবশ্যই end তারিখের আগে বা একই হতে হবে। start নির্দিষ্ট করা না থাকলে, তারিখের
রেঞ্জ শুরুর তারিখের ক্ষেত্রে কার্যকরভাবে সীমাহীন হয়। |
| Promotions / HotelPromotions / Promotion / CheckinDates / DateRange / @end | 0..1 | Date or YearlessDate | তারিখের রেঞ্জের শেষ তারিখ (প্রপার্টির টাইম জোনের উপর ভিত্তি করে), ইনক্লুসিভ। এই তারিখটি অবশ্যই start
তারিখের সাথে একই বা তার পরের হতে হবে। end উল্লেখ করা না থাকলে, তারিখের
রেঞ্জ শেষ হওয়ার তারিখের ক্ষেত্রে কার্যকরভাবে সীমাহীন। |
| Promotions / HotelPromotions / Promotion / CheckinDates / DateRange / @days_of_week | 0..1 | string | তারিখের রেঞ্জে সপ্তাহের যেসব দিন অনুমোদিত। উল্লেখ করা না হলে, তারিখের রেঞ্জে সব দিনই অনুমোদিত। স্ট্রিংয়ের প্রতিটি অক্ষর একটি দিনকে নির্দিষ্ট করে। যেমন, "MTWHF" উল্লেখ করে যে তারিখের রেঞ্জে সপ্তাহের দিনগুলি অনুমোদিত। সঠিক অক্ষরগুলি হল:
যেকোনও অক্ষরের কম্বিনেশন সঠিক। |
| Promotions / HotelPromotions / Promotion / CheckoutDates | 0..1 | CheckoutDates | এক বা একাধিক তারিখের রেঞ্জের জন্য একটি কন্টেনার যা প্রোমোশন প্রযোজ্য হওয়ার জন্য চেক-আউট কখন করতে হবে তা নির্ধারণ করে। |
| Promotions / HotelPromotions / Promotion / CheckoutDates / DateRange | 1..20 | DateRange | প্রোমোশন প্রযোজ্য হওয়ার জন্য চেক-আউট করার তারিখের ব্যাপ্তি উল্লেখ করা। আপনি এক বা একাধিক প্রোমোশন মুছে দিলে এই এলিমেন্ট প্রয়োজন নেই। YearlessDate ফর্ম্যাটও কাজ করে।
|
| Promotions / HotelPromotions / Promotion / CheckoutDates / DateRange / @start | 0..1 | Date or YearlessDate | তারিখের রেঞ্জের শুরুর তারিখ (প্রপার্টির টাইম জোন অনুযায়ী),
অন্তর্ভুক্ত। এই তারিখটি অবশ্যই end তারিখের আগে বা একই হতে হবে। start নির্দিষ্ট করা না থাকলে, তারিখের
রেঞ্জ শুরুর তারিখের ক্ষেত্রে কার্যকরভাবে সীমাহীন হয়। |
| Promotions / HotelPromotions / Promotion / CheckoutDates / DateRange / @end | 0..1 | Date or YearlessDate | তারিখের রেঞ্জের শেষ তারিখ (প্রপার্টির টাইম জোনের উপর ভিত্তি করে), ইনক্লুসিভ। এই তারিখটি অবশ্যই start
তারিখের সাথে একই বা তার পরের হতে হবে। end উল্লেখ করা না থাকলে, তারিখের
রেঞ্জ শেষ হওয়ার তারিখের ক্ষেত্রে কার্যকরভাবে সীমাহীন। |
| Promotions / HotelPromotions / Promotion / CheckoutDates / DateRange / @days_of_week | 0..1 | string | তারিখের রেঞ্জে সপ্তাহের যেসব দিন অনুমোদিত। উল্লেখ করা না হলে, তারিখের রেঞ্জে সব দিনই অনুমোদিত। স্ট্রিংয়ের প্রতিটি অক্ষর একটি দিনকে নির্দিষ্ট করে। যেমন, "MTWHF" উল্লেখ করে যে তারিখের রেঞ্জে সপ্তাহের দিনগুলি অনুমোদিত। সঠিক অক্ষরগুলি হল:
যেকোনও অক্ষরের কম্বিনেশন সঠিক। |
| Promotions / HotelPromotions / Promotion / Devices | 0..1 | Devices | প্রোমোশনের জন্য উপযুক্ত ব্যবহারকারীর ডিভাইসের তালিকা দেখানোর কন্টেনার। উল্লেখ করা থাকলে, তালিকাভুক্ত ডিভাইসে শুধুমাত্র উপযুক্ত ব্যবহারকারীদের ডিসকাউন্ট পাওয়া দাম অফার করা হয়। নির্দিষ্ট করা না থাকলে, যেকোনও ডিভাইসে উপযুক্ত ব্যবহারকারীদের ডিসকাউন্ট পাওয়া দাম অফার করা হয়। |
| Promotions / HotelPromotions / Promotion / Devices / Device | 1..3 | Device | ব্যবহারকারীর ডিভাইসের এমন একটি ধরন নির্ধারণ করে যা প্রোমোশনের জন্য উপযুক্ত। |
| Promotions / HotelPromotions / Promotion / Devices / Device / @type | 1 | enum | এক ধরনের ডিভাইস। ভ্যালু অবশ্যই desktop,
tablet, অথবা mobile হতে হবে। |
| Promotions / HotelPromotions / Promotion / Discount | 1 | Discount |
এই প্রোমোশনের জন্য প্রযোজ্য ছাড়ের পরিমাণ উল্লেখ করে। |
| Promotions / HotelPromotions / Promotion / Discount / @percentage | 0..1 | float |
০-১০০-এর মধ্যে একটি দশমিক মান যা শতাংশে ছাড়ের পরিমাণ নির্দিষ্ট করে।
এটি উদাহরণ:
|
| Promotions / HotelPromotions / Promotion / Discount / @percentage_of_base | 0..1 | float |
০-১০০ পর্যন্ত দশমিক মান যা বেস ডিসকাউন্টের শতাংশ নির্দিষ্ট করে।
উদাহরণ:
|
| Promotions / HotelPromotions / Promotion / Discount / @fixed_amount | 0..1 | float |
উদাহরণ:
|
| Promotions / HotelPromotions / Promotion / Discount / @fixed_amount_per_night | 0..1 | float |
উদাহরণ:
|
| Promotions / HotelPromotions / Promotion / Discount / @fixed_price | 0..1 | float |
উদাহরণ:
|
| Promotions / HotelPromotions / Promotion / Discount / @fixed_price_per_night | 0..1 | float |
উদাহরণ:
|
| Promotions / HotelPromotions / Promotion / Discount / @applied_nights | 0..1 | integer | এটি শুধুমাত্র যত রাতের জন্য ছাড় প্রযোজ্য হবে, সবচেয়ে কম দাম থেকে শুরু করে। ১ থেকে ৯৯-এর মধ্যে কোনও পূর্ণসংখ্যা হতে হবে। উল্লেখ করা না থাকলে, সব রাতের জন্য ছাড় প্রযোজ্য হবে। |
| Promotions / HotelPromotions / Promotion / Discount / FreeNights | 0..1 | FreeNights | ন্যূনতম থাকার সময়সীমা পূরণ হলে, থাকার নির্দিষ্ট কিছু রাতের জন্য ছাড়ের সুবিধা
প্রদান করে। এই এলিমেন্ট ব্যবহার করা হলে, মূল Discount এলিমেন্টে অ্যাট্রিবিউট
ব্যবহার করার অনুমতি দেওয়া হয় না। |
| Promotions / HotelPromotions / Promotion / Discount / FreeNights / @stay_nights | 1 | integer | ডিসকাউন্ট প্রয়োগ করার জন্য প্রয়োজনীয় রাতের সংখ্যা। প্রতিটি ছাড় থাকার রাতের আলাদা সেগমেন্টে প্রযোজ্য হয়। যেমন, ১০ রাত থাকার জন্য |
| Promotions / HotelPromotions / Promotion / Discount / FreeNights / @discount_nights | 1 | integer | থাকার রাতের প্রতিটি সেগমেন্টের মধ্যে ছাড় পাওয়া রাতের সংখ্যা। |
| Promotions / HotelPromotions / Promotion / Discount / FreeNights / @discount_percentage | 1 | float | ডিসকাউন্ট নাইটসে যে ডিসকাউন্ট প্রযোজ্য হয়। এই ভ্যালু
50 হলে, বেছে নেওয়া প্রতিটি রাতের জন্য ৫০% ছাড় পাওয়া যাবে। |
| Promotions / HotelPromotions / Promotion / Discount / FreeNights / @night_selection | 1 | string | cheapest বা last হতে হবে। যদি
last হয়, তাহলে থাকার সেগমেন্টের শেষে
রাতের জন্য ছাড় দেওয়া হয়। cheapest হলে, থাকার রাতের সেগমেন্টের মধ্যে
সবচেয়ে সস্তা রাতে ছাড় দেওয়া হয়। |
| Promotions / HotelPromotions / Promotion / Discount / FreeNights / @repeats | 1 | boolean | একাধিক রাত থাকার সেগমেন্টে ছাড় প্রযোজ্য হবে
কিনা। যেমন, |
| Promotions / HotelPromotions / Promotion / Discount / @rank | 0..1 | integer | এই প্রোমোশনকে একটি র্যাঙ্ক অ্যাসাইন করে এবং এটিকে র্যাঙ্ক করা সিলেকশনে অপ্ট-ইন করে, যেখানে শুধুমাত্র সর্বনিম্ন র্যাঙ্ক সহ প্রোমোশনটি প্রয়োগ করার জন্য বেছে নেওয়া হয়। মান অবশ্যই ১ থেকে ৯৯-এর মধ্যে হতে হবে, এই দুটি ধরে। একাধিক প্রোমোশনের র্যাঙ্ক একই হলে, সেগুলির মধ্যে থেকে যেকোনও একটি বেছে নিয়ে প্রয়োগ করা হয়। |
| Promotions / HotelPromotions / Promotion / BestDailyDiscount | 1 | Discount |
দৈনিক ছাড়ের পরিমাণ
উল্লেখ করে যা এক রাত থাকার ক্ষেত্রে প্রযোজ্য হতে পারে। এটি প্রতিটি প্রপার্টিতে প্রোমোশনের একটি গ্রুপ থাকতে পারে যেগুলিকে "সেরা দৈনিক" হিসেবে বিবেচনা করা হয়। এর অর্থ হল, প্রতি রাতের জন্য, একক "সেরা দৈনিক" প্রোমোশন যা উপযুক্ত এবং সেই রাতের জন্য সবচেয়ে বেশি ছাড় দেয়, সেটি বেছে নেওয়া হয় এবং প্রয়োগ করা হতে পারে।
এই ধরনের ছাড়ের সাথে |
| Promotions / HotelPromotions / Promotion / BestDailyDiscount / @percentage | 0..1 | float |
০-১০০-এর মধ্যে একটি দশমিক মান যা শতাংশে ছাড়ের পরিমাণ নির্দিষ্ট করে।
এটি উদাহরণ:
|
| Promotions / HotelPromotions / Promotion/ BestDailyDiscount / @fixed_amount | 0..1 | float |
একটি নির্দিষ্ট পরিমাণ যা একটি
উদাহরণ:
|
| Promotions / HotelPromotions / Promotion/ BestDailyDiscount / @fixed_price | 0..1 | float |
উদাহরণ:
|
| Promotions / HotelPromotions / Promotion / InventoryCount | 0..1 | InventoryCount | এই প্রোমোশন প্রযোজ্য হওয়ার জন্য কতগুলি রুম উপলভ্য থাকতে হবে তার উপর বিধিনিষেধ আরোপ করে। শুধুমাত্র সেইসব রাতের জন্য ছাড় প্রযোজ্য হবে
যেগুলি শর্ত পূরণ করে। fixed_amount ছাড়ের সাথে
অনুমতি নেই। মনে রাখবেন যে উপলভ্য রুমের সংখ্যা
OTA_HotelInvCountNotifRQ (InvCount)
অথবা OTA_HotelAvailNotifRQ
(BookingLimit)-এর মাধ্যমে
উল্লেখ করা হয়। |
| Promotions / HotelPromotions / Promotion / InventoryCount / @min | 0..1 | integer | প্রতি রাতের রেটে প্রোমোশন প্রয়োগ করার জন্য ন্যূনতম যতগুলি রুম উপলভ্য থাকতে হবে। এটি উল্লেখ করা না থাকলে, কোনও ন্যূনতম নেই। |
| Promotions / HotelPromotions / Promotion / InventoryCount / @max | 0..1 | integer | প্রতি রাতের রেটে প্রোমোশন প্রয়োগ করার জন্য সর্বাধিক যতগুলি রুম উপলভ্য থাকতে হবে। এটি উল্লেখ করা না থাকলে, কোনও সর্বাধিক সীমা নেই। |
| Promotions / HotelPromotions / Promotion / LengthOfStay | 0..1 | LengthOfStay | মোট কত রাত থাকবেন তার সীমা নির্ধারণ করে যার মধ্যে এই প্রচার প্রয়োগ করা যেতে পারে। মোট কত রাত থাকবেন তা ন্যূনতম ও সর্বাধিক সীমার বাইরে হলে প্রোমোশন প্রযোজ্য হয় না। |
| Promotions / HotelPromotions / Promotion / LengthOfStay / @min | 0..1 | integer | প্রোমোশন প্রযোজ্য হওয়ার জন্য ন্যূনতম যত রাত থাকতে হবে। এটি উল্লেখ করা না থাকলে, কোনও ন্যূনতম সীমা নেই। |
| Promotions / HotelPromotions / Promotion / LengthOfStay / @max | 0..1 | integer | প্রোমোশন প্রযোজ্য হওয়ার জন্য সর্বাধিক যত রাত থাকা যাবে। এটি উল্লেখ করা না থাকলে, সর্বাধিক কোনও কিছুই হবে না। |
| Promotions / HotelPromotions / Promotion / MembershipRateRule | 0..1 | MembershipRateRule |
মেম্বারশিপ রেট সংক্রান্ত নিয়মের কন্টেনার যা সংশ্লিষ্ট ছাড়ের জন্য নির্দিষ্ট UI ট্রিগার করে।
|
| Promotions / HotelPromotions / Promotion / MembershipRateRule / @id | 1 | string |
মেম্বারশিপ প্রোগ্রামের সাথে যুক্ত রেট সংক্রান্ত নিয়মাবলির আইডি। |
| Promotions / HotelPromotions / Promotion / MinimumAmount | 0..1 | MinimumAmount | প্রোমোশন প্রয়োগ করার জন্য রুমের দৈনিক রেটের (AmountBeforeTax বা AmountAfterTax-এর মধ্যে যেটি বেশি সেটি ব্যবহার করে)
ন্যূনতম যোগফল অবশ্যই
অতিক্রম করতে হবে। |
| Promotions / HotelPromotions / Promotion / MinimumAmount / @before_discount | 1 | integer | প্রোমোশন প্রয়োগ করার জন্য এই ভ্যালু অতিক্রম করতে হবে। |
| Promotions / HotelPromotions / Promotion / Occupancy | 0..1 | Occupancy | এই প্রচার যে অকুপেন্সির জন্য প্রযোজ্য তার উপর বিধিনিষেধ নির্ধারণ করে। অকুপেন্সি ন্যূনতম ও সর্বাধিক সীমার বাইরে থাকলে প্রোমোশন
প্রযোজ্য হয় না।
ভ্রমণসূচীর রেটে প্রোমোশন প্রযোজ্য হয়। প্রতিটি অকুপ্যান্টের জন্য সর্বাধিক ছাড় সেট করা সম্ভব নয়। |
| Promotions / HotelPromotions / Promotion / Occupancy / @min | 0..1 | integer | ছাড় প্রযোজ্য হওয়ার জন্য ব্যবহারকারীর উল্লেখ করা অকুপেন্সি কমপক্ষে এই ভ্যালু হতে হবে। |
| Promotions / HotelPromotions / Promotion / Occupancy / @max | 0..1 | integer | ছাড় প্রযোজ্য হওয়ার জন্য ব্যবহারকারীর উল্লেখ করা অকুপেন্সি এই ভ্যালুর থেকে বেশি হলে চলবে না। |
| Promotions / HotelPromotions / Promotion / RatePlans | 0..1 | RatePlans | রেট প্ল্যানের তালিকার কন্টেনার যার উপর প্রোমোশন প্রযোজ্য হয়।
<RatePlans> উল্লেখ করা না থাকলে, প্রোমোশনটি
সব রেট প্ল্যানের ক্ষেত্রে প্রযোজ্য হবে। |
| Promotions / HotelPromotions / Promotion / RatePlans / RatePlan | 1..n | RatePlan | রেট প্ল্যান নির্দিষ্ট করে। রেট প্ল্যান হল প্যাকেজ, রেট ও উপলভ্যতার কম্বিনেশন, যা ট্রানজ্যাকশন (প্রপার্টি ডেটা), OTA_HotelRateAmountNotifRQ এবং OTA_HotelAvailNotifRQ মেসেজে উল্লেখ করা থাকে এবং PackageID-এর মাধ্যমে শনাক্ত করা হয়। |
| Promotions / HotelPromotions / Promotion / RatePlans / RatePlan / @id | 1 | string | রেট প্ল্যানের অনন্য শনাক্তকারী। এই ভ্যালু
ট্রানজ্যাকশন (প্রপার্টি ডেটা) মেসেজে <PackageData>-এর
PackageID ভ্যালু এবং
<OTA_HotelRateAmountNotifRQ> ও
<OTA_HotelAvailNotifRQ> মেসেজে
<StatusApplicationControl>-এর
RatePlanCode অ্যাট্রিবিউটের সাথে ম্যাপ করে।
সর্বাধিক ৫০টি অক্ষর লেখা যাবে। |
| Promotions / HotelPromotions / Promotion / RoomTypes | 0..1 | RoomTypes | রুমের প্রকারের তালিকার কন্টেনার যার উপর প্রোমোশন প্রযোজ্য।
প্রোমোশনটি প্রতিটি <RoomType>-এ
প্রযোজ্য। <RoomTypes> উল্লেখ করা না থাকলে, প্রোমোশনটি সব রুমের ক্ষেত্রে প্রযোজ্য হবে। |
| Promotions / HotelPromotions / Promotion / RoomTypes / RoomType | 1..n | RoomType | রুমের ধরন নির্দিষ্ট করে। রুমের ধরন
ট্রানজ্যাকশন (প্রপার্টি ডেটা) মেসেজের
<RoomData> এলিমেন্টে উল্লেখ করা থাকে এবং
<RoomID> ভ্যালু ব্যবহার করে রেফার করা হয়। (OTA_HotelRateAmountNotifRQ
মেসেজে InvTypeCode অ্যাট্রিবিউট দ্বারা
<RoomID> ভ্যালুও
রেফারেন্স করা হয়।) |
| Promotions / HotelPromotions / Promotion / RoomTypes / RoomType / @id | 1 | string | ইনভেনটরির (রুমের ধরন) জন্য অনন্য শনাক্তকারী। এই ভ্যালু,
একটি ট্রানজ্যাকশন (প্রপার্টি ডেটা) মেসেজে <RoomID>-এর সাথে ম্যাপ করে।
সর্বাধিক ৫০টি অক্ষর লেখা যাবে। |
| Promotions / HotelPromotions / Promotion / Stacking | 0..1 | Stacking | প্রোমোশন কীভাবে একত্রিত করা যেতে পারে তা নির্দিষ্ট করে। উল্লেখ করা না থাকলে, "ধরন"
base হিসেবে ধরে নেওয়া হয়। |
| Promotions / HotelPromotions / Promotion / Stacking / @type | 1 | enum | এই সেটিংয়ের উপর নির্ভর করে একটি রেটে একাধিক প্রোমোশন প্রয়োগ করা যেতে পারে:
অনুমোদিত কম্বিনেশনের মধ্যে, যে প্রোমোশনের সেট সবচেয়ে বেশি ছাড় দেয়, সেটি রেটের উপর প্রয়োগ করা হয়। |
| Promotions / HotelPromotions / Promotion / StayDates | 0..1 | StayDates | এক বা একাধিক তারিখের রেঞ্জের জন্য একটি কন্টেনার যা নির্ধারণ করে যে কীভাবে প্রমোশন প্রয়োগ করা হয়, যেমন সিজনাল ডিসকাউন্ট অ্যাডজাস্ট করা। |
| Promotions / HotelPromotions / Promotion / StayDates / @application | 1 | enum | প্রোমোশন কীভাবে প্রয়োগ করা উচিত তা বর্ণনা করে। সঠিক ভ্যালু হল:
এই অ্যাট্রিবিউট সবসময় উল্লেখ করতে হবে।
|
| Promotions / HotelPromotions / Promotion / StayDates / DateRange | 1..99 | DateRange | তারিখের রেঞ্জ উল্লেখ করে প্রোমোশনটি কখন প্রয়োগ করতে হবে তা নির্দিষ্ট করে। YearlessDate ফর্ম্যাটও কাজ করে।
আপনি যদি সপ্তাহের নির্দিষ্ট দিনে প্রচারের অনুমতি দেওয়ার জন্য |
| Promotions / HotelPromotions / Promotion / StayDates / DateRange / @start | 0..1 | Date or YearlessDate | তারিখের রেঞ্জের শুরুর তারিখ (প্রপার্টির টাইম জোন অনুযায়ী),
অন্তর্ভুক্ত। এই তারিখটি অবশ্যই end তারিখের আগে বা একই হতে হবে। start নির্দিষ্ট করা না থাকলে, তারিখের
রেঞ্জ শুরুর তারিখের ক্ষেত্রে কার্যকরভাবে সীমাহীন হয়।
|
| Promotions / HotelPromotions / Promotion / StayDates / DateRange / @end | 0..1 | Date or YearlessDate | তারিখের রেঞ্জের শেষ তারিখ (প্রপার্টির টাইম জোনের উপর ভিত্তি করে), ইনক্লুসিভ। এই তারিখটি অবশ্যই start তারিখের
একই বা তার পরের হতে হবে। end উল্লেখ করা না থাকলে, তারিখের
রেঞ্জ start তারিখ থেকে কার্যকরভাবে সীমাহীন।
|
| Promotions / HotelPromotions / Promotion / StayDates / DateRange / @days_of_week | 0..1 | string | তারিখের রেঞ্জে সপ্তাহের যেসব দিন অনুমোদিত। উল্লেখ করা না হলে, তারিখের রেঞ্জে সব দিনই অনুমোদিত। স্ট্রিংয়ের প্রতিটি অক্ষর একটি দিনকে নির্দিষ্ট করে। যেমন, "MTWHF" উল্লেখ করে যে তারিখের রেঞ্জে সপ্তাহের দিনগুলি অনুমোদিত। সঠিক অক্ষরগুলি হল:
যেকোনও অক্ষরের কম্বিনেশন সঠিক। |
| Promotions / HotelPromotions / Promotion / UserCountries | 0..1 | UserCountries | প্রোমোশনের জন্য উপযুক্ত ব্যবহারকারীর লোকেশন (দেশ) তালিকাভুক্ত করার কন্টেনার। নির্দিষ্ট করা থাকলে, তালিকায় থাকা দেশের উপযুক্ত ব্যবহারকারীদেরই ডিসকাউন্ট পাওয়া দাম অফার করা হয়। উল্লেখ করা না থাকলে, যেকোনও দেশের উপযুক্ত ব্যবহারকারীদের ডিসকাউন্ট পাওয়া দাম অফার করা হয়। |
| Promotions / HotelPromotions / Promotion / UserCountries / @type | 0..1 | enum | UserCountries স্পেসিফিকেশনের ধরন।
সঠিক ভ্যালু হল UserCountries UserCountries UserCountries |
| Promotions / HotelPromotions / Promotion / UserCountries / Country | 1..300 | Country | এমন একটি দেশ নির্ধারণ করে যেখানে ব্যবহারকারীরা প্রচারের জন্য উপযুক্ত। |
| Promotions / HotelPromotions / Promotion / UserCountries / Country / @code | 1 | string | CLDR দেশের
কোড,
যেমন DE বা FR। মনে রাখবেন, কিছু দেশের ক্ষেত্রে, CLDR দেশের কোড ২-অক্ষরের ISO দেশের কোডের মতো একই নয়। এছাড়াও, CLDR অঞ্চল কোড কাজ করে না। |
উদাহরণ
প্রতিটি প্রপার্টিতে ৫০০টি প্রোমোশন যোগ করা যাবে। কোনও প্রপার্টি থেকে প্রোমোশন সরাতে "একটি প্রোমোশন মুছুন" উদাহরণটি দেখুন।
বেসিক মেসেজ
নিচের উদাহরণে একটি সাধারণ Promotions মেসেজ দেখানো হয়েছে:
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<BookingDates>
<DateRange start="2020-07-01" end="2020-07-31" days_of_week="MTWHF"/>
<DateRange start="2020-09-01" end="2020-09-30"/>
</BookingDates>
<BookingWindow min="7" max="330"/>
<CheckinDates>
<DateRange start="2020-10-01" end="2020-10-31" days_of_week="FSU"/>
</CheckinDates>
<CheckoutDates>
<DateRange start="2020-10-08" end="2020-11-07" days_of_week="FSU"/>
</CheckoutDates>
<Devices>
<Device type="mobile"/>
<Device type="tablet"/>
</Devices>
<Discount percentage="20" applied_nights="2"/>
<LengthOfStay min="2" max="14"/>
<RatePlans>
<RatePlan id="234"/>
<RatePlan id="567"/>
</RatePlans>
<RoomTypes>
<RoomType id="123"/>
<RoomType id="456"/>
</RoomTypes>
<Stacking type="base"/>
<UserCountries>
<Country code="US"/>
<Country code="GB"/>
</UserCountries>
</Promotion>
</HotelPromotions>
</Promotions>
ইনভেনটরির অবস্থা
আগমন তারিখের কাছাকাছি অতিরিক্ত ইনভেন্টরি থাকলে কীভাবে ছাড় তৈরি করতে হয় তা নিম্নলিখিত উদাহরণে দেখানো হয়েছে:
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<BookingWindow max="7"/>
<Discount percentage="10"/>
<InventoryCount min="3"/>
</Promotion>
</HotelPromotions>
</Promotions>
একটি প্রোমোশন মুছে দিন
কোনও প্রপার্টির জন্য একটি প্রোমোশন কীভাবে মুছতে হয় তা নিম্নলিখিত উদাহরণ থেকে দেখুন:
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1" action="delete"/>
</HotelPromotions>
</Promotions>
সব প্রোমোশন মুছে দিন
কোনও প্রপার্টির জন্য সব প্রোমোশন কীভাবে মুছতে হয় তা নিম্নলিখিত উদাহরণে দেখানো হয়েছে:
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1" action="overlay"/>
</Promotions>
সব প্রচার ওভারলে করুন
নিচের উদাহরণে দেখানো হয়েছে যে এক বা একাধিক নতুন প্রচার সহ কোনও প্রপার্টির জন্য
কীভাবে <HotelPromotions> ওভারলে করতে হয়। action="overlay" হলে, বর্তমান মেসেজে উল্লেখ করা প্রোমোশন স্টোর করার আগে,
স্টোর করা সব প্রোমোশন মুছে ফেলা হয়:
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1" action="overlay">
<Promotion id="1">
<BookingDates>
<DateRange start="2020-09-01" end="2020-09-30"/>
</BookingDates>
<Discount percentage="10"/>
<RoomTypes>
<RoomType id="123"/>
<RoomType id="456"/>
</RoomTypes>
<RatePlans>
<RatePlan id="234"/>
<RatePlan id="567"/>
</RatePlans>
<Stacking type="base"/>
</Promotion>
</HotelPromotions>
</Promotions>
৩টি বিভিন্ন স্ট্যাকিংয়ের ধরন
নিচের উদাহরণে এমন একটি কেস দেখানো হয়েছে যেখানে তিনটি আলাদা প্রোমোশন
প্রযোজ্য হবে (base, second, any)। মনে রাখবেন যে none প্রোমোশনটি
প্রযোজ্য হবে না কারণ অন্যান্য প্রোমোশন আরও ভাল ছাড় প্রদান করে। আসল দাম $১০০ হলে, ছাড় দেওয়া দাম হবে $৭২.৯০।
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<Discount percentage="10"/>
<Stacking type="base"/>
</Promotion>
<Promotion id="2">
<Discount percentage="10"/>
<Stacking type="second"/>
</Promotion>
<Promotion id="3">
<Discount percentage="10"/>
<Stacking type="any"/>
</Promotion>
<Promotion id="4">
<Discount percentage="25"/>
<Stacking type="none"/>
</Promotion>
</HotelPromotions>
</Promotions>
কোনও স্ট্যাকিং টাইপ নেই
নিচের উদাহরণে এমন একটি পরিস্থিতি দেখানো হয়েছে যেখানে none প্রোমোশন ব্যবহার করা হয়েছে কারণ
অন্যান্য প্রোমোশনের কম্বিনেশন কম ছাড় দেয়। আসল দাম $১০০ হলে, ছাড়ের পরে দাম হবে $৭৫।
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<Discount percentage="10"/>
<Stacking type="base"/>
</Promotion>
<Promotion id="2">
<Discount percentage="10"/>
<Stacking type="any"/>
</Promotion>
<Promotion id="3">
<Discount percentage="25"/>
<Stacking type="none"/>
</Promotion>
</HotelPromotions>
</Promotions>
বুকিং উইন্ডোর সময়সীমা
নিচের উদাহরণে এমন একটি কেস দেখানো হয়েছে যেখানে BookingWindow
এলিমেন্টটি ISO 8601 সময়সীমা
টাইপ হিসেবে সংজ্ঞায়িত শুরু ও শেষ হওয়ার সীমার সাথে ব্যবহার করা হয়েছে। এই বুকিং উইন্ডো সংক্রান্ত বিধিনিষেধের জন্য পৌঁছানোর আগের দিন সন্ধ্যা ৬:০০টার সময় বা তার আগে এবং পৌঁছানোর ২ দিন আগে দুপুর ১২:০০টার সময় বা তার পরে বুকিং করতে হবে।
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<BookingWindow min="P1DT6H" max="P2DT12H"/>
<Discount percentage="20"/>
</Promotion>
</HotelPromotions>
</Promotions>
বুকিংয়ের তারিখ DateTime বাউন্ড
নিচের উদাহরণে এমন একটি কেস দেখানো হয়েছে যেখানে BookingDates
এলিমেন্ট start ও end অ্যাট্রিবিউটের সাথে
DateTime টাইপ হিসেবে ব্যবহার করা হয়েছে। এই বুকিংয়ের তারিখ সংক্রান্ত বিধিনিষেধ অনুযায়ী বুকিং করতে হবে
০৬:৩০, ০১-০৭-২০২০ থেকে ১৮:৪৫, ০২-০৭-২০২০-এর মধ্যে।
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<BookingDates>
<DateRange start="2020-07-01T06:30:00" end="2020-07-02T18:45:00"/>
</BookingDates>
<Discount percentage="20"/>
</Promotion>
</HotelPromotions>
</Promotions>
বছর ছাড়া তারিখের রেঞ্জ
নিচের উদাহরণে এমন একটি কেস দেখানো হয়েছে যেখানে CheckInDates
এলিমেন্টে DateRanges আছে, যার মধ্যে start এবং
end ফিল্ড আছে, কিন্তু বছর নেই। এই উদাহরণে, বছর যাই হোক না কেন, ১২/২৯ থেকে ১/২ তারিখের মধ্যে চেক-ইন করার তারিখের ক্ষেত্রে প্রোমোশন প্রযোজ্য। নতুন বছরের সীমানা অতিক্রম করে এমন বছরহীন তারিখের ব্যাপ্তি অবৈধ, তাই DateRange
দুটি সংলগ্ন তারিখের ব্যাপ্তি হিসাবে প্রকাশ করা হয়।
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<CheckInDates>
<DateRange start="12-29" end="12-31"/>
<DateRange start="01-01" end="01-02"/>
</CheckInDates>
<Discount percentage="20"/>
</Promotion>
</HotelPromotions>
</Promotions>
FreeNights ডিসকাউন্ট
নিম্নলিখিত উদাহরণে, বুকিংয়ের তারিখের নির্দিষ্ট রেঞ্জের জন্য প্রতি চার রাত থাকার জন্য দুই রাতের জন্য ৫০% ছাড় দেওয়া হয়েছে। দশ রাতের ভ্রমণসূচীর জন্য, মোট চার রাতের জন্য ৫০% ছাড় দেওয়া হবে।
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<BookingDates>
<DateRange start="2022-01-01" end="2022-05-31"/>
</BookingDates>
<Discount>
<FreeNights stay_nights="4" discount_nights="2" discount_percentage="50" night_selection="cheapest" repeats="true"/>
</Discount>
</Promotion>
</HotelPromotions>
</Promotions>
পরবর্তী উদাহরণে, নির্দিষ্ট তারিখের রেঞ্জে প্রতি তিন রাত থাকার জন্য এক রাতের ভাড়ায় ৫০% ছাড় দেওয়া হয়েছে। ছাড়ের জন্য উপযুক্ত হতে শুধুমাত্র ওভারল্যাপ করা রাতের সংখ্যাই গণনা করা হয়। নিম্নলিখিত ভ্রমণসূচীর জন্য, যেখানে চেক-ইন ২০২২-০১-০১ তারিখে এবং চেক-আউট ২০২২-০১-০৭ তারিখে, সেখানে উপযুক্ত থাকার রাত এবং ছাড় নিম্নলিখিতভাবে প্রযোজ্য হবে।
- ২০২২-০১-০১ (থাকার জায়গা)
- ২০২২-০১-০২ (থাকার জায়গা)
- 2022-01-03
- ২০২২-০১-০৪ (ছাড়যুক্ত)
- ২০২২-০১-০৫ (থাকার জায়গা)
- ২০২২-০১-০৬ (থাকার জায়গা)
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<StayDates application="overlap">
<DateRange start="2022-01-01" end="2022-01-02"/>
<DateRange start="2022-01-04" end="2022-01-06"/>
</StayDates>
<Discount>
<FreeNights stay_nights="3" discount_nights="1" discount_percentage="50" night_selection="last" repeats="true"/>
</Discount>
</Promotion>
</HotelPromotions>
</Promotions>
র্যাঙ্ক করা সিলেকশন
নিম্নলিখিত উদাহরণে দুটি ছাড় অফার করা হয়েছে, একটি ২০% ছাড় এবং অন্যটি ১৫% ছাড়। মূল্যায়নের সময়, শুধুমাত্র ১৫% ছাড় প্রয়োগ করা হয়েছে কারণ এটির র্যাঙ্ক কম।
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="Property_1">
<Promotion id="1">
<Discount percentage="15" rank="25"/>
</Promotion>
<Promotion id="2">
<Discount percentage="20" rank="50"/>
</Promotion>
</HotelPromotions>
</Promotions>
BestDailyDiscount
নিচের উদাহরণে দুই রাত থাকার জন্য BestDailyDiscount-এর সাথে Discount স্ট্যাক করে
ছাড় দেওয়া হয়েছে।
<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_xyz"
id="123_abc"
timestamp="2020-05-18T16:20:00-04:00">
<HotelPromotions hotel_id="HotelID" action="overlay">
<Promotion id="general">
<BestDailyDiscount fixed_amount="20"/>
</Promotion>
<Promotion id="may">
<BestDailyDiscount fixed_amount="50"/>
<StayDates application="overlap">
<DateRange start="2023-05-01" end="2023-05-31"/>
</StayDates>
</Promotion>
<Promotion id="fiesta">
<Discount fixed_amount_per_night="5"/>
<Stacking type="any"/>
</Promotion>
</HotelPromotions>
</Promotions>
৩০ এপ্রিল, ২০২৩ থেকে ২ মে, ২০২৩ পর্যন্ত দুই রাত থাকার কথা বিবেচনা করুন হিসাব করার জন্য, সেরা দৈনিক ডিসকাউন্টের কম্বিনেশন যা সবচেয়ে বেশি ডিসকাউন্ট দেয় তা প্রথমে খুঁজে বের করা হয়।
প্রথম রাতের জন্য, "সাধারণ" প্রোমোশন হল একমাত্র উপযুক্ত পরিমাণ যার সাথে ২০-এর একটি নির্দিষ্ট ছাড় রয়েছে।
দ্বিতীয় রাতের জন্য, "মে" প্রোমোশন "সাধারণ" ডিসকাউন্টের চেয়ে বেশি ডিসকাউন্ট অফার করে। তাই, "মে" বেছে নেওয়া হলে, নির্দিষ্ট ছাড়ের পরিমাণ হল ৫০।
তারপর থাকার জন্য, "উৎসব" প্রোমোশন প্রতি রাতে ৫ বা মোট ১০ ছাড় দেয়। এটি সেরা দৈনিক ডিসকাউন্টের কম্বিনেশনের সাথে স্ট্যাক করা যেতে পারে
কারণ "fiesta"-এর স্ট্যাকিং টাইপ any-এ সেট করা আছে। এটি base-এ সেট করা থাকলে, সেরা দৈনিক ছাড়ের কম্বিনেশন অথবা "fiesta" ছাড়ের মধ্যে যেটি বেশি সেটিই শুধু প্রযোজ্য হবে। আরও তথ্যের জন্য
Stacking-এর বিবরণ দেখুন।
`সামগ্রিকভাবে, থাকার মূল্যের উপর ২০ + ৫০ + ১০ = ৮০ নির্দিষ্ট পরিমাণ ছাড় পাওয়া যায়।
প্রতিক্রিয়া
সিন্ট্যাক্স
PromotionsResponse মেসেজে নিম্নলিখিত সিনট্যাক্স ব্যবহার করা হয়:
<?xml version="1.0" encoding="UTF-8"?>
<PromotionsResponse timestamp="timestamp"
id="message_ID"
partner="partner_key">
<!-- Either Success or Issues are populated. -->
<Success/>
<Issues>
<Issue code="issue_code"
status="issue_type">
issue_description
</Issue>
</Issues>
</PromotionsResponse>
এলিমেন্ট ও অ্যাট্রিবিউট
PromotionsResponse মেসেজে নিম্নলিখিত এলিমেন্ট ও অ্যাট্রিবিউট থাকে:
| এলিমেন্ট / @অ্যাট্রিবিউট | বিষয়বস্তু | ধরন | বিবরণ |
|---|---|---|---|
| PromotionsResponse | 1 | Complex element | রুট এলিমেন্ট যা প্রাপ্ত প্রোমোশন অনুরোধ মেসেজের সাফল্য বা সমস্যা নির্দেশ করে। |
| PromotionsResponse / @timestamp | 1 | DateTime | এই মেসেজটি তৈরি করার তারিখ ও সময়। |
| PromotionsResponse / @id | 1 | string | সংশ্লিষ্ট প্রোমোশন মেসেজ থেকে পাওয়া অনন্য শনাক্তকারী। |
| PromotionsResponse / @partner | 1 | string | এই মেসেজের জন্য পার্টনার অ্যাকাউন্ট। |
| PromotionsResponse / Success | 0..1 | Success | এটি দেখায় যে প্রোমোশন মেসেজ কোনও সতর্কতা, সমস্যা বা ব্যর্থতা ছাড়াই
প্রসেস করা হয়েছে।
প্রতিটি মেসেজে |
| PromotionsResponse / Issues | 0..1 | Issues | প্রোমোশন মেসেজ প্রসেস করার সময় এক বা একাধিক সমস্যার জন্য
কন্টেনার।
প্রতিটি মেসেজে |
| PromotionsResponse / Issues / Issue | 1..n | Issue | প্রোমোশন মেসেজ প্রসেস করার সময় কোনও সতর্কতা, সমস্যা বা ব্যর্থতার বিবরণ। এইসব সমস্যার বিবরণ ফিড স্ট্যাটাস সংক্রান্ত ত্রুটি মেসেজ-এ পাওয়া যাবে। |
| PromotionsResponse / Issues / Issue / @code | 1 | integer | সমস্যার শনাক্তকারী। |
| PromotionsResponse / Issues / Issue / @status | 1 | enum | যে ধরনের সমস্যা হয়েছে। সঠিক ভ্যালু হল |
উদাহরণ
সফল হয়েছে
প্রোমোশন মেসেজ প্রসেস করার পরে এই উত্তর দেওয়া হয়েছে।
<?xml version="1.0" encoding="UTF-8"?>
<PromotionsResponse timestamp="2020-05-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Success/>
</PromotionsResponse>
সমস্যা
নিম্নলিখিতটি হল একটি প্রচারমূলক মেসেজের উত্তর যা সমস্যার কারণে প্রসেস করা হয়নি।
<?xml version="1.0" encoding="UTF-8"?>
<PromotionsResponse timestamp="2020-05-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Issues>
<Issue code="1001" status="error">Example</Issue>
</Issues>
</PromotionsResponse>