リクエスト
構文
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 | 宿泊施設の一意の識別子。この値は、ホテルリスト フィードの <listing> 要素の <id> を使用して指定したホテル ID と一致する必要があります。ホテル ID は 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 がサポートするデータは、最大 3 年分です。 |
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 | インベントリの一意の識別子(客室タイプ)。この値は、Transaction(宿泊施設データ)メッセージの <RoomID> にマッピングされます。 |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanCode | 1 | string | 料金プランの一意の識別子。この識別子は、Transaction(宿泊施設データ)メッセージの <PackageID> にマッピングされます。料金プランは、<StatusApplicationControl> で <OTA_HotelRateAmountNotifRQ> と <OTA_HotelAvailNotifRQ> の両方のメッセージでさらに定義され、参照されます。 |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanType | 0..1 | string | この料金改定に適用される ARI 料金モデルのタイプを示す ID。LOS ベースの料金モデルを使用する場合にのみ、値 26 を使用して指定する必要があります。この属性の除外は、日付ごとの料金更新であることを示します。 |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates | 0..1 | Rates | <Rate> 要素のコレクションのコンテナ。NotifType が "Remove" の場合、この要素を指定することはできません。それ以外の場合は、この要素を 1 回だけ指定する必要があります。 |
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 | 指定した通貨で客室料金を指定します。定員 1 人あたりの料金は、複数の <BaseByGuestAmt> 要素を使用して、それぞれで NumberOfGuests に異なる値を使用して指定できます。それ以外の場合、NumberOfGuests で定義される最大宿泊人数に対して料金が適用されます。 |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountBeforeTax | 0..1 | float |
客室料金の 1 日あたりの料金(税金と手数料を除く)。 プロモーションを使用している場合、割引は |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountAfterTax | 0..1 | float | 客室料金の 1 日ごとの料金(適用される税金と手数料を含む)。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 | 追加ゲストの種類(大人または子供)を定義します。有効なオプションは次のとおりです。
最大で 1 つの
|
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @MaxAge | 0..1 | integer | AgeQualifyingCode が 8 の場合は、MaxAge を指定する必要があります。AgeQualifyingCode が 10 の場合は指定しないでください。
値
個別の |
OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @Amount | 1 | float | 追加ゲストの基本料金に加算される税金と手数料前の金額。 居住者の年齢に応じた税金と手数料は、 |
例
このセクションでは、以下を行うためのコードサンプルを示します。
add
、overlay
、または remove
の値を設定する場合、期間は目標に応じて異なる場合があります。たとえば、overlay
を使用すると、「料金を追加」メッセージに設定された期間全体ではなく、12 月の祝日の数週間のみを設定できます。これにより、この期間のみの宿泊料金が置き換えられます。
日付ごとの料金
基本料金と合計料金を設定する
例 1
デフォルトの宿泊人数(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" CurrencyCode="USD"/> </BaseByGuestAmts> </Rate> </Rates> </RateAmountMessage> </RateAmountMessages> </OTA_HotelRateAmountNotifRQ>
例 2
デフォルトの宿泊人数(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>
料金の追加、オーバーレイ、削除
料金を追加
2021 年 10 月 20 日から 2021 年 12 月 31 日までの RoomID_1 と PackageID_1 の宿泊人数あたりの料金を追加するには、NotifType
を Delta
に設定します。Google がサポートするデータは、最大 3 年分です。
<?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、2、3 の料金が削除され、新しい定員 1 の料金のみが保存されます。より短い期間を設定することもできます(例: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>
同伴者の料金を追加、オーバーレイ、削除する
金額を追加
2021 年 10 月 20 日から 2021 年 12 月 31 日まで、定員 1 と 2 の基本料金と、宿泊 ID_1 と PackageID_1 の同伴者料金を追加するには、NotifType
を Delta
に設定します。
追加ゲスト料金は、ユーザー検索での宿泊人数によって決定される基本料金に上乗せされます。ユーザーが指定する定員は 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
に設定すると、2021 年 10 月 20 日から 2021 年 12 月 31 日までの、宿泊人数ごとの料金と RoomID_1 と PackageID_1 の追加の同伴者料金がすべて削除され、新しく指定された 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
に設定すると、定員ごとの基本料金と、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>
追加の同伴者の料金のみを削除する
空の <AdditionalGuestAmounts>
要素を使用して NotifType
を Delta
に設定すると、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="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
2020 年 5 月 18 日以降の 1 泊、2 泊、3 泊の料金を設定します。この例では、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>
で指定された商品のすべての滞在日数とチェックイン期間の料金を置き換えます。
このメッセージにより、指定された到着日のすべての滞在日数に対する 1 人あたりの宿泊料金が削除され、滞在日数 3 に対してのみ定義された 2 人部屋の料金に置き換えられます。
<?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 メッセージの処理中に発生した 1 つ以上の問題のコンテナ。各メッセージには、 |
OTA_HotelRateAmountNotifRS / Errors / Error | 1..n | Error | OTA_HotelRateAmountNotifRQ メッセージの処理中に発生したエラーの説明。これらのエラーについて詳しくは、フィード ステータスのエラー メッセージをご覧ください。 |
OTA_HotelRateAmountNotifRS / Errors / Error / @Type | 1 | integer | エラーに関連付けられている OpenTravel Alliance EWT(Error Warning Type)。値 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>