בקשות
תחביר
ההודעה OTA_HotelRateAmountNotifRQ
מבוססת על התחביר הבא:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
EchoToken="message_ID"
TimeStamp="timestamp"
Version="3.0"
NotifType="[Overlay|Delta|Remove]"
NotifScopeType="[ProductRate]">
<POS>
<Source>
<RequestorID ID="partner_key"/>
</Source>
</POS>
<RateAmountMessages HotelCode="HotelID">
<RateAmountMessage>
<StatusApplicationControl Start="YYYY-MM-DD"
End="YYYY-MM-DD"
Mon="boolean_value"
Tue="boolean_value"
Weds="boolean_value"
Thur="boolean_value"
Fri="boolean_value"
Sat="boolean_value"
Sun="boolean_value"
InvTypeCode="RoomID"
RatePlanCode="PackageID"
RatePlanType="[26]" />
<Rates>
<Rate>
<BaseByGuestAmts>
<BaseByGuestAmt AmountBeforeTax="float"
AmountAfterTax="float"
CurrencyCode="currency"
NumberOfGuests="integer"/>
</BaseByGuestAmts>
<AdditionalGuestAmounts>
<AdditionalGuestAmount Amount="float"
AgeQualifyingCode="[10|8]"
MaxAge="integer"/>
</AdditionalGuestAmounts>
</Rate>
</Rates>
</RateAmountMessage>
</RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>
רכיבים ומאפיינים
הודעת OTA_HotelRateAmountNotifRQ
כוללת את הרכיבים הבאים וגם
:
רכיב / @Attribute | מופעים | סוג | תיאור |
---|---|---|---|
OTA_HotelRateAmountNotifRQ | 1 | Complex element | רכיב הבסיס של הודעת תעריפים. |
OTA_HotelRateAmountNotifRQ / @xmlns | 0..1 | string (URI) | מרחב השמות של XML. |
OTA_HotelRateAmountNotifRQ / @EchoToken | 1 | string | מזהה ייחודי להודעת הבקשה הזו. הערך הזה מוחזר
בהודעת התשובה. התווים המותרים הם a-z , A-Z , 0-9 , _ (underscore) ו-- (dash) . |
OTA_HotelRateAmountNotifRQ / @TimeStamp | 1 | DateTime | התאריך והשעה של יצירת ההודעה הזו. |
OTA_HotelRateAmountNotifRQ / @Version | 1 | decimal | גרסת ההודעה ב-OpenTravel. |
OTA_HotelRateAmountNotifRQ / @NotifType | 0..1 | enum | סוג ההתראה שצריך להחיל על כל
הערכים החוקיים כוללים: כדי להבין איך המאפיינים האלה פועלים, אפשר לעיין הדוגמאות.
|
OTA_HotelRateAmountNotifRQ / @NotifScopeType | 0..1 | enum | ההיקף של הערכים החוקיים כוללים:
|
OTA_HotelRateAmountNotifRQ / POS | 0..1 | POS | מאגר לציון חשבון השותף להודעה הזו (משמש בדרך כלל אם הקצה העורפי מספק פידים של מחירים עבור מספר חשבונות שותפים). |
OTA_HotelRateAmountNotifRQ / POS / Source | 1 | Source | שדה חובה אם השדה <POS> קיים. קונטיינר של
<RequestorID> |
OTA_HotelRateAmountNotifRQ / POS / RequestorID | 1 | RequestorID | שדה חובה אם השדה <POS> קיים. מגדיר את השותף
חשבון. |
OTA_HotelRateAmountNotifRQ / POS / RequestorID / @ID | 1 | string | חשבון השותף שאליו שייכת ההודעה הזו. ערך המחרוזת הזה הוא
מפתח שותף הערך שרשום ב
ה
דף הגדרות החשבון ב-Hotel Center.
הערה:אם יש לכם קצה עורפי שמספק פידים של כמה
חשבונות, ערך זה צריך להתאים לערך |
OTA_HotelRateAmountNotifRQ / RateAmountMessages | 1 | RateAmountMessages | אוסף של יסודות <RateAmountMessage>
להגדיר קצבים. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / @HotelCode | 1 | string | המזהה הייחודי של הנכס. הערך הזה חייב להתאים לערך מזהה המלון צוין באמצעות הפרמטר <id> באזור הרכיב <listing> במלון הצגת רשימה של פידים. מזהה המלון מופיע גם ב-Hotel Center. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage | 1..n | RateAmountMessage | מאגר להגדרת מחירים למחיר לחדר (סוג חדר ומחיר בשילוב של כמה תוכניות בטווח תאריכים מסוים). |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl | 1 | StatusApplicationControl | הגדרת טווח התאריכים והמזהים של סוג החדר
(InvTypeCode ) ותוכנית תמחור ותשלומים (RatePlanCode ). |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Start | 1 | Date | תאריך ההתחלה (לפי אזור הזמן של הנכס), כולל טווח התאריכים. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @End | 1 | Date | תאריך הסיום (על סמך אזור הזמן של הנכס), כולל
טווח תאריכים. חייב להיות שווה לערך start או גדול ממנו.
אם הערכים של start ושל end זהים, העדכון יחול
עד לתאריך הזה. שימו לב ש-Google תומכת בנתונים של עד שלוש שנים. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Mon | 0..1 | boolean | צריך להגדיר ל-true או ל-1 כדי לכלול באופן מפורש
ימי שני.
אם הערך הוא |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Tue | 0..1 | boolean | צריך להגדיר ל-true או ל-1 כדי לכלול באופן מפורש
ימי שלישי.
אם הערך הוא |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Weds | 0..1 | boolean | צריך להגדיר ל-true או ל-1 כדי לכלול באופן מפורש
ימי רביעי.
אם הערך הוא |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Thur | 0..1 | boolean | צריך להגדיר ל-true או ל-1 כדי לכלול באופן מפורש
ימי חמישי.
אם הערך הוא |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Fri | 0..1 | boolean | צריך להגדיר ל-true או ל-1 כדי לכלול באופן מפורש
ימי שישי.
אם הערך הוא |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sat | 0..1 | boolean | צריך להגדיר ל-true או ל-1 כדי לכלול באופן מפורש
ימי שבת.
אם הערך הוא |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sun | 0..1 | boolean | צריך להגדיר ל-true או ל-1 כדי לכלול באופן מפורש
ימי ראשון.
אם הערך הוא |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @InvTypeCode | 1 | string | המזהה הייחודי של המלאי (סוג החדר). הערך הזה ממפה
אל <RoomID> בהודעה לגבי עסקה (נתוני נכס). |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanCode | 1 | string | מזהה ייחודי של תוכנית התמחור והתשלומים. המזהה הזה ממופה אל
<PackageID> בעסקה (נתוני נכס)
הודעה. תוכנית התעריפים מוגדרת בצורה מפורטת יותר, ומופיעה כאן
ב-<StatusApplicationControl> בשני
<OTA_HotelRateAmountNotifRQ> והקבוצה
<OTA_HotelAvailNotifRQ> הודעות. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanType | 0..1 | string | מזהה שמציין את סוג מודל התמחור של ARI
רלוונטי לעדכון התמחור הזה. יש לציין זאת רק, באמצעות
של 26 , כשמשתמשים במודל תמחור מבוסס LOS. החרגה
המאפיין הזה מציין שמדובר בתמחור לפי תאריך.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates | 0..1 | Rates | קונטיינר של אוסף של רכיבי <Rate> . אם המיקום
NotifType הוא "Remove" , אסור לרכיב הזה
תציינו. אחרת, צריך לציין את הרכיב הזה פעם אחת בלבד. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate | 1 | Rate | קונטיינר של אוסף של <BaseByGuestAmts>
רכיבים. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @RateTimeUnit | 0..1 | String | היחידה שלפיה צוין משך השהייה. הדרך היחידה שנתמכת
הערך הוא "Day" , כלומר משך השהייה יהיה
שצוין בימים.
כדי להשתמש בתמחור מבוסס LOS:
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @UnitMultiplier | 0..1 | Integer | המספר של RateTimeUnits שאורך האורך שלהם הוא
להישאר במחיר הזה.
לדוגמה, אם הערך של תעריפי האורחים שצוינו בשדה כדי להשתמש בתמחור מבוסס LOS:
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts | 1 | BaseByGuestAmts | קונטיינר לאוסף של חיובים בסיסיים. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt | 1..n | BaseByGuestAmt | מציינת מחירי חדרים במטבע שצוין. המחיר יכול להיות
ל-<BaseByGuestAmt> לפי תפוסה
שלכל אחד מהם ערך שונה עבור NumberOfGuests .
אחרת, המחיר רלוונטי למספר מקסימלי של אנשים.
הוגדרה על ידי NumberOfGuests . |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountBeforeTax | 0..1 | float |
המחיר היומי של מחיר החדר, לפני מיסים ועמלות. גם אם משתמשים במבצעים,
ההנחה תחול על |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountAfterTax | 0..1 | float | המחיר היומי של מחיר החדר, לאחר כולל מיסים רלוונטיים
עמלות. אם מציינים AmountAfterTax , צריך להפריד בין הנכסים
אין צורך לשלוח <TaxFeeInfo> הודעות. הזה
אפשר להשתמש במאפיין הזה בשילוב עם המאפיין AmountBeforeTax
לספק גם תעריף בסיס וגם מחיר כולל שמוצג למשתמשים
באזורים מסוימים.
אזהרה: אם אתם משתמשים במבצעים, מומלץ מאוד
לא מומלץ להשתמש ב הערה: אם |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @CurrencyCode | 1 | enum | קוד תווי אלפא של ISO 4217 (3) בשביל יחידה כספית ספציפית.
כדאי לעיין ברשימת הנתמכים שנתמכים מטבעות. |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @NumberOfGuests | 0..1 | integer | המספר המקסימלי של אורחים שיכולים להתארח לפי התעריף הזה.
אם לא מזינים ערך, ברירת המחדל היא 2 אורחים.
הערה: אם |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts | 0..1 | AdditionalGuestAmounts | מאגר לאיסוף חיובים של אורחים נוספים.
התחביר הזה שימושי אם תעריפים נוספים לאורחים או לילדים
בהתאם לתאריך. אולי כדאי להשתמש
לדוגמה, נניח ששיעורי הבסיס צוינו עבור 1 ו-2 למבוגרים.
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount | 0..n | AdditionalGuestAmount | קביעת מחירים על סמך סוג האורח, כפי שצוין דרך
AgeQualifyingCode ואם רלוונטי, גיל האורח
שצוינו באמצעות MaxAge .
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @AgeQualifyingCode | 1 | enum | מגדיר את סוג האורחים הנוספים – מבוגר או ילד. נתונים תקפים
האפשרויות הן:
אפשר להגדיר את צריך לציין את |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @MaxAge | 0..1 | integer | צריך לציין את MaxAge כאשר
AgeQualifyingCode היא 8 . אסור
מצוין כאשר AgeQualifyingCode הוא 10 .
ציון ערך של ערכים שגדולים מ- ניתן לציין טווחי גילאים מרובים של ילדים באמצעות
רכיבי |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @Amount | 1 | float | הסכום לפני מיסים ועמלות, בנוסף לתעריף הבסיסי עבור כל אחד
אורח נוסף.
מיסים ועמלות שתלויים בקרב הנוסעים יש לציין גילים באמצעות
את הרכיב |
דוגמאות
בקטע הזה מפורטות דוגמאות לקוד שמדגישות איך:
- הגדרת תעריפים בסיסיים ותעריפים כוללים
- הוספה, שכבת-על והסרה של תעריפים
- הוספה, שכבת-על והסרה של סכומים נוספים של אורחים
- הגדרת תעריפים שמבוססים על LOS
- הוספה, שכבת-על והסרה של תעריפים שמבוססים על LOS
כשמגדירים את הערכים add
, overlay
או remove
, טווחי התאריכים יכולים
זהים או שונים בהתאם ליעדים. לדוגמה, אפשר להשתמש ב-
overlay
כדי להגדיר רק שבועות ספורים של חגי דצמבר
כל הטווח שהוגדר עבור "קצב הוספה" הודעה. הפעולה הזו תחליף את מספר האורחים
מחירים לתקופה הזו בלבד.
תמחור לפי תאריך
במחיר של חדר מסוים או לפי תוכנית תמחור ותשלומים לכל היותר, יכולים להיות עד 50 תעריפים לחדרים לנכס. אם התעריפים זהים לכל האורחים, צריך פשוט לשלוח את מספר האורחים המקסימלי במחיר הנדרש. כך Google מסיקה גם התושבים הנמוכים יותר מקבלים אותו תעריף בסיס.
הגדרת תעריפים בסיסיים ותעריפים כוללים
דוגמה 1
תעריף בסיסי (לא כולל מיסים או עמלות) לחדרים שמוגדרים כברירת מחדל (זוגי). כאן
יש להגדיר את המיסים והעמלות עבור הנכס באמצעות
הודעה אחת (<TaxFeeInfo>
). מחיר הבסיס יהיה גבוה יותר
בולט למשתמשים שמחפשים מאזורים מסוימים.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-23" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" CurrencyCode="USD"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
דוגמה 2
התעריף הבסיסי והתעריף הכולל לחדרי ברירת מחדל (זוגי). במודל הזה, המיסים
והעמלות לא צריכות להיות מוגדרות בנפרד באמצעות המאפיין <TaxFeeInfo>
הודעות. מחיר הבסיס יהיה בולט יותר למשתמשים שמחפשים מתוך
באזורים מסוימים.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-23" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" AmountAfterTax="110.00" CurrencyCode="USD"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
דוגמה 3
התעריף הכולל (כולל מיסים ועמלות) למספר חדרים. במודל הזה,
אין להגדיר מיסים ועמלות בנפרד באמצעות המאפיין <TaxFeeInfo>
הודעות.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-23" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountAfterTax="100.00" CurrencyCode="USD" NumberOfGuests="1"/> <BaseByGuestAmt AmountAfterTax="110.00" CurrencyCode="USD" NumberOfGuests="2"/> <BaseByGuestAmt AmountAfterTax="120.00" CurrencyCode="USD" NumberOfGuests="3"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
דוגמה 4
המחיר הבסיסי והתעריף הכולל למספר סוגי חדרים ותוכניות תעריפים טווחי תאריכים שונים.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-23" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" AmountAfterTax="110.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> <RateAmountMessage> <StatusApplicationControl Start="2020-05-01" End="2020-05-31" InvTypeCode="RoomID_2" RatePlanCode="PackageID_2"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="200.00" AmountAfterTax="220.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
הוספה, שכבת-על והסרה של תעריפים
יש מגבלה של 5,000 מוצרים – סוג החדר והחבילה שלו.
שילובים – לכל נכס. שימוש בהתראה Overlay
או Remove
כדי להסיר מוצרים שהוגדרו קודם לכן.
הוספת מחירים
צריך להגדיר את NotifType
ל-Delta
כדי להוסיף תעריפים לחדרים עבור
RoomID_1 ו-PackageID_1 בין 20 באוקטובר 2021 ל-31 בדצמבר 2021. שימו לב
Google תומכת בנתונים של עד שלוש שנים.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Delta" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" CurrencyCode="USD" NumberOfGuests="1"/> <BaseByGuestAmt AmountBeforeTax="110.00" CurrencyCode="USD" NumberOfGuests="2"/> <BaseByGuestAmt AmountBeforeTax="120.00" CurrencyCode="USD" NumberOfGuests="3"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
שיעורי שכבות-על
כדי למחוק את כל נתוני האורחים, יש להגדיר את NotifType
לערך Overlay
מחירים ל- RoomID_1 ו-PackageID_1 בין 20 באוקטובר 2021 ל-31 בדצמבר 2021
ולהחליף אותם בתעריפים החדשים לפי תפוסה.
לדוגמה, אם ההודעה הזו נשלחה אחרי 'הוספת תעריפים' הודעה, תעריפים של אורחים 1, 2 ו-3 יימחקו, ורק מספר האורחים החדש 1 יאוחסן. אפשר גם להגדיר טווח תאריכים קצר יותר (למשל: 20.12.2021 ו-31 בדצמבר 2021) כדי להחליף רק חלק מהמשתתפים מחירים בתאריכים מסוימים, למשל בחגים.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Overlay" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="200.00" CurrencyCode="USD" NumberOfGuests="1"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
הסרת התעריפים
יש להגדיר את NotifType
לערך Remove
כדי למחוק את כל יחידות האירוח לפי חדר
מחירים ל-roomID_1 ול-PackageID_1 בין 20 באוקטובר 2021 ל-31 בדצמבר 2021.
לדוגמה, אם ההודעה הזו נשלחה אחרי אחת מהדוגמאות האחרות לא יישמרו תעריפים לפי תפוסה.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Remove" NotifScopeType="ProductRate">> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
הוספה, שכבת-על והסרה של סכומים נוספים של אורחים
הוספת סכומים
צריך להגדיר את NotifType
לערך Delta
כדי להוסיף תעריפים בסיסיים עבור
תפוסה 1 ו-2, וכמויות נוספות של אורחים, עבור RoomID_1 ו
PackageID_1 בין 20 באוקטובר 2021 ל-31 בדצמבר 2021.
סכומים נוספים של אורחים יחולו בנוסף לתעריף הבסיס, ייקבע לפי מספר האורחים בחיפוש של המשתמש. המשתמש ציין מספר האורחים חייב להיות בקיבולת של RoomID_1.
בדוגמה הזו, סכומים נוספים של אורחים יחולו באופן הבא:
- ₪5 לילדים בטווח הגילאים 0 עד 10 (כולל).
- 10$ לילדים בטווח הגילאים 11 עד 17 (כולל).
- 20$ למבוגר.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Delta" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" CurrencyCode="USD" NumberOfGuests="1"/> <BaseByGuestAmt AmountBeforeTax="110.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> <AdditionalGuestAmounts> <AdditionalGuestAmount Amount="5.00" AgeQualifyingCode="8" MaxAge="10" /> <AdditionalGuestAmount Amount="10.00" AgeQualifyingCode="8" MaxAge="17" /> <AdditionalGuestAmount Amount="20.00" AgeQualifyingCode="10" /> </AdditionalGuestAmounts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
סכומי שכבות-על
כדי למחוק את כל נתוני האורחים, יש להגדיר את NotifType
לערך Overlay
התעריפים וכל הסכומים הנוספים של האורחים עבור RoomID_1 ו-PackageID_1
בין 2021 ל-20 באוקטובר 2021 ל-31 בדצמבר 2021 ולהחליף אותם בערכים
תעריפים ללילה במלון וסכומים נוספים.
לדוגמה, אם ההודעה הזו נשלחה אחרי 'הוספת תעריפים' הודעה, תעריפים לתפוסה 1 ו-2 יימחקו, ורק הבסיס החדש תעריף לחדר שהייה אחד יישמר. הקבוצה הקודמת של האורחים הנוספים הסכומים יימחקו, ורק קבוצת הסכומים החדשה תישמר. מעכשיו, עבור סכומים נוספים של אורחים, ייעשה שימוש בתעריף החדש לתפוסה 1. מחיר הבסיס. חשוב לדעת שאחרי העדכון הזה, לא יהיו עוד משתתפים לחיובים שהוגדרו לילדים.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Overlay" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="200.00" CurrencyCode="USD" NumberOfGuests="1"/> </BaseByGuestAmts> <AdditionalGuestAmounts> <AdditionalGuestAmount Amount="30.00" AgeQualifyingCode="10" /> </AdditionalGuestAmounts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
הסרת סכומים
כדי למחוק את כל נתוני האורחים, יש להגדיר את NotifType
לערך Delete
תעריפי הבסיס וכל הסכומים הנוספים של האורחים עבור RoomID_1 ו-PackageID_1
בין 20 באוקטובר 2021 ל-31 בדצמבר 2021.
לדוגמה, אם ההודעה הזו נשלחה אחרי אחת מהדוגמאות האחרות הודעות, ללא תעריפי בסיס לחדר או סכומים נוספים של אורחים יישמרו.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Remove" NotifScopeType="ProductRate">> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
הסרת כמויות נוספות של אורחים בלבד
הגדרה של NotifType
לערך Delta
עם ערך ריק
רכיב <AdditionalGuestAmounts>
למחיקת הכול
כמויות נוספות של אורחים עבור RoomID_1 ו-PackageID_1 בלי להשפיע
מחירים בסיסיים בין 20 באוקטובר 2021 ל-31 בדצמבר 2021.
לדוגמה, אם ההודעה הזו נשלחה אחרי אחת מהדוגמאות האחרות רק את הערכים הבסיסיים יישמרו.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Delta" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1"/> <Rates> <Rate> <AdditionalGuestAmounts/> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
תמחור לפי LOS
הגדרת תעריפים שמבוססים על LOS
דוגמה 1
יש להגדיר תעריפים לשהייה של לילה אחד, 2 ו-3 לילות החל מ-18 במאי 2020. התעריף הכולל לשהייה של 1, 2 ו-3 לילות בדוגמה הזו יהיה 100$. 180$ ו-240 $בהתאמה.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-18" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1" RatePlanType="26"/> <Rates> <Rate UnitMultiplier="1" RateTimeUnit="Day"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="100.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> <Rate UnitMultiplier="2" RateTimeUnit="Day"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="90.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> <Rate UnitMultiplier="3" RateTimeUnit="Day"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="80.00" CurrencyCode="USD" NumberOfGuests="2" /> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
הוספה, שכבת-על והסרה של מחירים שמבוססים על LOS
הוספת משך השהייה
בתמחור שמבוסס על LOS, פעולת Delta
מאפשרת להגדיר תעריפים
עדכון מצטבר עבור טווחי תאריכי הצ'ק אין שצוינו ב
<StatusApplicationControl>
ולכל משך השהייה
מצוין בכל רכיב צאצא של רכיב Rate
UnitMultiplier
לכל תאריך צ'ק אין רלוונטי ומשך שהייה, כל מספר האורחים יש לציין תעריפים.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0" NotifType="Delta" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-18" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1" RatePlanType="26"/> <Rates> <Rate UnitMultiplier="3" RateTimeUnit="Day"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="80.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
משך השהייה בשכבות-על
עם תמחור שמבוסס על LOS, פעולת Overlay
הפונקציה הזו מחליפה את התעריפים לכל משך השהייה של המוצר ותאריך הצ'ק-אין
הטווח שמצוין ב-<StatusApplicationControl>
.
בהודעה הזו, תעריפים לחדרים לכל משך השהייה תאריכי ההגעה שצוינו יוסרו ויוחלפו בתפוסה כפולה תעריף שמוגדר רק למשך שהייה של 3.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2020-05-19T20:50:37-05:00" Version="3.0" NotifType="Overlay" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2020-05-18" End="2020-05-18" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1" RatePlanType="26"/> <Rates> <Rate UnitMultiplier="3" RateTimeUnit="Day"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="80.00" CurrencyCode="USD" NumberOfGuests="2"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
הסרת משך השהייה
בתמחור שמבוסס על LOS, פעולת Remove
מסירה את התעריפים
לגבי כל משך השהייה של המוצר וטווח תאריכי הצ'ק אין שצוינו
<StatusApplicationControl>
.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0" NotifType="Remove" NotifScopeType="ProductRate"> <RateAmountMessages HotelCode="Property_1"> <RateAmountMessage> <StatusApplicationControl Start="2021-10-20" End="2021-12-31" InvTypeCode="RoomID_1" RatePlanCode="PackageID_1" RatePlanType="26"/> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
תשובות
תחביר
ההודעה OTA_HotelRateAmountNotifRS
מבוססת על התחביר הבא:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
TimeStamp="timestamp"
EchoToken="echo_token"
Version="3.0">
<!-- Either Success or Errors will be populated. -->
<Success/>
<Errors>
<Error Type="12" Status="NotProcessed" ShortText="issue_code">issue_description</Error>
</Errors>
</OTA_HotelRateAmountNotifRS>
רכיבים ומאפיינים
הודעת OTA_HotelRateAmountNotifRS
כוללת את הפרטים הבאים
רכיבים ומאפיינים:
רכיב / @Attribute | מופעים | סוג | תיאור |
---|---|---|---|
OTA_HotelRateAmountNotifRS | 1 | Complex element | הרכיב הבסיסי של התשובה להודעת זמינות. |
OTA_HotelRateAmountNotifRS / @TimeStamp | 1 | DateTime | התאריך והשעה של יצירת ההודעה הזו. |
OTA_HotelRateAmountNotifRS / @EchoToken | 1 | string | המזהה הייחודי של האפליקציה
הודעה אחת (OTA_HotelRateAmountNotifRQ ). |
OTA_HotelRateAmountNotifRS / Success | 0..1 | Success | מציין שההודעה של OTA_HotelRateAmountNotifRQ
עובדה בהצלחה.
|
OTA_HotelRateAmountNotifRS / Errors | 0..1 | Errors | מאגר שמתאר בעיה אחת או יותר במהלך העיבוד של
הודעה אחת (OTA_HotelRateAmountNotifRQ ).
|
OTA_HotelRateAmountNotifRS / Errors / Error | 1..n | Error | תיאור של שגיאה שאירעה במהלך עיבוד
הודעה אחת (OTA_HotelRateAmountNotifRQ ). פרטים על
אפשר למצוא שגיאות בהודעות שגיאה של סטטוס פיד. |
OTA_HotelRateAmountNotifRS / Errors / Error / @Type | 1 | integer | OpenTravel Alliance EWT (סוג אזהרת שגיאה) המשויך אל
שגיאה. נעשה שימוש רק בערך 12 (Processing exception) . |
OTA_HotelRateAmountNotifRS / Errors / Error / @Code | 1 | integer | קוד השגיאה OpenTravel Alliance ERR (קוד השגיאה) שמשויך לשגיאה.
נעשה שימוש רק בערך 450 (Unable to process) . |
OTA_HotelRateAmountNotifRS / Errors / Error / @Code | 1 | enum | סטטוס הבקשה המקורית. רק הערך
נעשה שימוש ב-NotProcessed . |
OTA_HotelRateAmountNotifRS / Errors / Error / @ShortText | 1 | string | המזהה של Google לבעיה. פרטים על השגיאות האלה יכולים להיות נמצאת בהודעות שגיאה של סטטוס הפיד. |
דוגמאות
הפעולה הצליחה
התגובה הבאה נשלחה בהצלחה הודעת OTA_HotelRateAmountNotifRQ.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0"> <Success/> </OTA_HotelRateAmountNotifRS>
שגיאות
זו תשובה להודעה OTA_HotelRateAmountNotifRQ שלא בגלל שגיאות.
<?xml version="1.0" encoding="UTF-8"?> <OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="12345678" TimeStamp="2021-10-20T20:50:37-05:00" Version="3.0"> <Errors> <Error Type="12" Code="450" Status="NotProcessed" ShortText="8001">Example</Error> </Errors> </OTA_HotelRateAmountNotifRS>