要求
語法
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
訊息包含下列元素和
屬性:
元素 / @屬性 | 發生次數 | 類型 | 說明 |
---|---|---|---|
OTA_HotelRateAmountNotifRQ | 1 | Complex element | 費率訊息的根元素。 |
OTA_HotelRateAmountNotifRQ / @xmlns | 0..1 | string (URI) | XML 命名空間。 |
OTA_HotelRateAmountNotifRQ / @EchoToken | 1 | string | 此要求訊息的專屬 ID。系統會傳回這個值
。允許的字元包括 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。這個值必須符合 使用 <id> 指定飯店 ID英吋 飯店的 <listing> 元素 列出動態饋給。飯店 ID 也會列在 Hotel Center 中。 |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage | 1..n | RateAmountMessage | 用來設定房價 (房型和費率) 價格的容器 特定日期範圍內的企劃書組合)。 |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl | 1 | StatusApplicationControl | 用於定義日期範圍和客房類型的 ID
(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 | 商品目錄 (客房類型) 的專屬 ID。這個值對應
將條件設為「交易 (資源資料)」訊息中的 <RoomID> 。 |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanCode | 1 | string | 房價方案的專屬 ID。這個識別碼對應至
交易 (資源資料) 中的 <PackageID>
撰寫新的電子郵件訊息費率方案進一步定義,請參閱
<StatusApplicationControl> (兩者皆有)
「<OTA_HotelRateAmountNotifRQ> 」和
<OTA_HotelAvailNotifRQ> 則訊息。 |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanType | 0..1 | string | 用來表示 ARI 定價模式類型的 ID
適用於此定價更新只能指定這個引數,必須使用
的值為 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 | 各項基本費率外加稅金和相關費用的總金額
。
稅金與費用 (視入住人數而定)年齡必須指定
定義了 |
範例
本節提供的程式碼範例將重點放在:
,瞭解如何調查及移除這項存取權。如果您設定 add
、overlay
或 remove
的值,日期範圍就能
然後根據目標
採取相同或不同的做法舉例來說,您可以使用
overlay
:只將 12 月的節慶檔期 (而非
「新增費率」的撰寫新的電子郵件訊息這會取代入住人數
此週期的費率。
按日期計費
單一客房和房價方案最多可入住 50 人入住 資源。如果所有可住人數的費率都相同,則只需將 以規定價格提供最高可住人數進而推斷出 人數較低者也會收到相同的基本費率。
設定基本費率和總費率
範例 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>
新增、重疊及移除房價
最多只能有 5000 項產品,包括房型和套裝方案
。使用 Overlay
或 Remove
通知
移除先前定義的產品類型
新增房價
將 NotifType
設為 Delta
,即可新增以下產品的每人入住費率:
RoomID_1 和 PackageID_1 介於 2021 年 10 月 20 日至 2021 年 12 月 31 日。請注意,
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
,即可刪除所有入住人數
2021 年 10 月 20 日至 2021 年 12 月 31 日間的 RoomID_1 和 PackageID_1 費率
並替換成新指定的每人入住費率。
舉例來說,這則訊息的傳送時間晚於「新增房價」訊息, 系統只會刪除新入住人數 1、3 人和 3 人入住的費率 費率此外,您也可以設定較短的日期範圍 (例如:2021-12-20 和 2021-12-31),僅取代部分可住人數 針對特定日期 (例如假日) 的房價。
<?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
,即可刪除所有入住人數
2021 年 10 月 20 日至 2021 年 12 月 31 日期間,RoomID_1 和 PackageID_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="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 人入住 1 和 2 的入住人數,以及 RoomID_1 和的額外房客人數
PackageID_1,介於 2021 年 10 月 20 日至 2021 年 12 月 31 日。
系統會以基本費率套用額外的房客金額, 取決於使用者搜尋中可住人數。指定的使用者 可住人數必須位於 RoomID_1 的可容納人數內。
在本例中,其他房客金額的套用方式如下:
- 年齡層為 0 到 10 (含) 的兒童 $5 美元。
- 針對 11 到 17 歲 (含) 年齡層的兒童,金額為 $10 美元。
- 成人為 $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)
,並替換為
。
舉例來說,這則訊息的傳送時間晚於「新增房價」訊息, 系統只會刪除 1 個基本入住人數和 2 個基本房價,系統只會刪除新的基本房價 系統會儲存第 1 人入住費率。上一組其他邀請對象 ,而且只會儲存新的金額組合。 現在額外房客金額會採用新入住人數 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 的所有額外房客金額
介於 2021 年 10 月 20 日至 2021 年 12 月 31 日
舉例來說,如果這則訊息是在上述 或是沒有每人入住的基本費率 或其他房客數 資料。
<?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 的額外房客金額 (不影響)
基本房價介於 2021-10-20 至 2021-12-31。
舉例來說,如果這則訊息是在上述 訊息時,系統只會儲存基本金額。
<?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
設定 1 晚、2 晚和 3 晚的房價 (從 2020 年 5 月 18 日開始)。 在此範例中,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
訊息包含下列內容
元素與屬性:
元素 / @屬性 | 發生次數 | 類型 | 說明 |
---|---|---|---|
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 | 與
錯誤。僅使用 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>