このページでは、XML ベースのトランザクション メッセージのリファレンスを提供します。
<Transaction>
トランザクション メッセージのルート要素
<Transaction>
です。コンテナとは何かを説明する情報
客室とパッケージ、客室とパッケージの料金と空室状況を確認できます。
<Transaction>
要素は、ファイルの次の場所に表示されます。
トランザクション メッセージの XML 階層:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
<Transaction>
をルート要素として使用するメッセージには、少なくとも 1 つの要素が必要です。
子要素で識別されます。トランザクション メッセージには、次のように任意の数の子要素を含めることができます。
メッセージの合計サイズが 100 MB を超えない限り
構文
<Transaction>
要素の構文は次のとおりです。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="timestamp" id="transaction_ID">
<!-- Defines data about a room or package (Room Bundle) -->
<PropertyDataSet>
...
</PropertyDataSet>
<!-- Updates/sets prices and availability for rooms and Room Bundles -->
<!-- (Also removes itineraries from inventory) -->
<Result>
...
</Result>
</Transaction>
属性
<Transaction>
要素には次の属性があります。
属性 | 必須かどうか | 型 | 説明 |
---|---|---|---|
id | Required | 文字列 | 各トランザクション メッセージの一意の識別子。 |
partner | Optional | string | トランザクション メッセージの対象となるパートナー アカウント。マイページ 通常、バックエンドが複数の料金フィードを提供する場合に、 できます。この文字列値は「パートナーキー」です。記載されている値 <ph type="x-smartling-placeholder"></ph> Hotel Center の [アカウント設定] ページ。 |
timestamp | Required | DateTime | トランザクション メッセージが 送信しました。 タイムスタンプが過去 24 時間以内に送信されたメッセージは 処理されていないものは破棄されます メッセージは |
子要素
<Transaction>
要素には次の子要素があります。
子要素 | 必須 | 型 | 説明 |
---|---|---|---|
<PropertyDataSet> | Optional* | <PropertyDataSet> |
特定の客室と条件の組み合わせについての説明です。通常は 別の Transaction メッセージに含めて、それぞれの要素に共通の値を 条件の組み合わせを使用して、トランザクション メッセージのサイズを小さくすることができます。 |
<Result> | Optional* | <Result> |
客室の旅行プランや
条件の組み合わせを定義する |
* <PropertyDataSet> または <Result> のうち少なくとも 1 つ
は必須です。 |
例
客室データ
次の例では、Transaction メッセージで客室データを定義します。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>5440OF</RoomID>
<Name>
<Text text="Single King Bed Room" language="en"/>
<Text text="Simple Lit de Roi" language="fr"/>
</Name>
<Description>
<Text text="One king bed with pillowtop mattresses, 300-thread-count linens,
and down comforters (bedspreads). City view. 300 square feet. Desk with
rolling chair. Multi-line phone with voice mail. Cable/satellite TV with
complimentary HBO and pay movies." language="en"/>
<Text text="Un très grand lit avec matelas à plateau-coussin, ..." language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Bathroom View" language="en"/>
<Text text="La salle de baines" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<Capacity>4</Capacity>
</RoomData>
</PropertyDataSet>
</Transaction>
料金データ
次の例では、Transaction メッセージで料金データを定義します。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-23T16:20:00-04:00" id="42">
<Result>
<Property>060773</Property>
<RoomID>RoomType101</RoomID>
<PackageID>Package101</PackageID>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">278.33</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="site1"/>
</AllowablePointsOfSale>
</Result>
<Result>
<Property>052213</Property>
<RoomID>RoomType101</RoomID>
<PackageID>Package101</PackageID>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">299.98</Baserate>
<Tax currency="USD">26.42</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="otto"/>
<PointOfSale id="simon"/>
</AllowablePointsOfSale>
</Result>
</Transaction>
1 泊の料金
次の例では、開始日が 1 ~ 7 泊の料金データを定義します 2023 年 6 月 7 日:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-08-24T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">209.99</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">419.98</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>3</Nights>
<Baserate currency="USD">614.97</Baserate>
<Tax currency="USD">21.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>4</Nights>
<Baserate currency="USD">819.96</Baserate>
<Tax currency="USD">21.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>5</Nights>
<Baserate currency="USD">999.95</Baserate>
<Tax currency="USD">21.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>6</Nights>
<Baserate currency="USD">1193.94</Baserate>
<Tax currency="USD">21.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
<Result>
<Property>1234</Property>
<Checkin>2018-06-07</Checkin>
<Nights>7</Nights>
<Baserate currency="USD">1259.93</Baserate>
<Tax currency="USD">21.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
</Result>
</Transaction>
ベースと限定価格
次の例は、Base を含む Transaction メッセージを示しています。 限定価格には次のように入力します。
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">200.00</Baserate>
<Tax currency="USD">20.00</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<Rates>
<!-- The rate_rule_id is required when using conditional rates -->
<Rate rate_rule_id="mobile">
<!-- Override base rate and taxes for conditional rates -->
<Baserate currency="USD">180.00</Baserate>
<Tax currency="USD">18.00</Tax>
<!-- NOTE: OtherFees is inherited from the above setting -->
<Custom1>ratecode123</Custom1>
</Rate>
</Rates>
</Result>
</Transaction>
在庫を削除
次の例では、いくつかの在庫(1 泊分の (複数の異なる日付)があるとします。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-05-23T16:20:00-04:00" id="42">
<Result>
<Property>1123581321</Property>
<Checkin>2023-05-23</Checkin>
<Nights>1</Nights>
<Unavailable>
<NoVacancy/>
</Unavailable>
<Tax currency="USD">0</Tax>
<OtherFees currency="USD">0</OtherFees>
</Result>
<Result>
<Property>1123581321</Property>
<Checkin>2023-05-24</Checkin>
<Nights>1</Nights>
<Unavailable>
<NoVacancy/>
</Unavailable>
<Tax currency="USD">0</Tax>
<OtherFees currency="USD">0</OtherFees>
</Result>
<!---Sending <Baserate> is optional with <Unavailable> -->
<Result>
<Property>1123581321</Property>
<Checkin>2023-05-25</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">-1</Baserate>
<Unavailable>
<NoVacancy/>
</Unavailable>
<Tax currency="USD">0</Tax>
<OtherFees currency="USD">0</OtherFees>
</Result>
</Transaction>
<PropertyDataSet>
客室とパッケージ(または条件の組み合わせ)情報のコンテナです。
メッセージ <Transaction>
。ホテルに設定された値は、パートナーに設定された値をオーバーライドします。
この情報は Google に保存されるため、毎回定義する必要はありません
料金の更新情報を送信します。
<PropertyDataSet>
要素は、ファイルの次の場所に表示されます。
トランザクション メッセージの XML 階層:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
詳しくは、条件の組み合わせのメタデータをご覧ください。
構文
<PropertyDataSet>
要素の構文は次のとおりです。
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <PropertyDataSet> <!-- (Required) ID that matches the Hotel List Feed --> <Property>hotel_ID</Property> <!-- (Optional) Defines metadata about a room --> <RoomData> ... </RoomData> <!-- (Optional) Defines package metadata to be paired with rooms (Room Bundles) --> <PackageData> ... </PackageData> </PropertyDataSet> ... </Transaction>
属性
<PropertyDataSet>
要素には属性はありません。
子要素
<PropertyDataSet>
要素には次の子要素があります。
子要素 | 必須 | 型 | 説明 |
---|---|---|---|
<PackageData> | Optional* | <PackageData> |
条件の組み合わせを表します。このデータはパートナーと
旅行プランは指定できませんこの要素は
<RoomData> 。ただし、その他の設備や利用規約について説明している
説明します。
料金の更新ではパッケージ ID を参照します。 詳細については、このモジュールの 条件の組み合わせのメタデータ。 |
<Property> | Required | string | 関連データが適用されるホテルの ID。「
この要素の値はリスティングに一致する文字列である必要があります
ホテルリスト フィードの<id> 。
|
<RoomData> | Optional* | <RoomData> |
客室の説明です。このデータはパートナーとホテルに関連付けられます
旅行プランでは利用できません
料金の更新では客室 ID を参照します。 |
* <PackageData> または <RoomData> のうち少なくとも 1 つ
は必須です。 |
例
客室とパッケージのデータ
以下の例は、1 つの Google Cloud Storage バケットに
<PropertyDataSet>
:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>180054</Property>
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Bed Room" language="en"/>
<Text text="Chambre single" language="fr"/>
</Name>
<Description>
<Text text="Non-smoking" language="en"/>
<Text text="Pas de fumiers" language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Living area" language="en"/>
<Text text="Le chambre" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
</RoomData>
<PackageData>
<PackageID>P54321</PackageID>
<Name>
<Text text="Breakfast Included" language="en"/>
<Text text="Avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Includes a delightful array of jams and jellies." language="en"/>
<Text text="Comprend une délicieuse gamme de confitures et gelées." language="fr"/>
</Description>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
この客室と条件の組み合わせの料金と空室状況を送信すると、 料金メッセージ内の客室 ID とパッケージ ID を参照します。結果は次のとおりです。 メッセージのサイズを大幅に削減できます データの重複が原因で発生する可能性があるエラーの量詳細 詳しくは、条件の組み合わせのメタデータをご覧ください。
<RoomData>
客室に関する旅行プランに依存しないメタデータを定義します。ひいては Room について
バンドル(条件の組み合わせは客室と追加アメニティの組み合わせであるため)。使用
<RoomData>
: Price 内の記述データの繰り返しを減らす
フィード。
<RoomData>
要素は、ファイルの次の場所に表示されます。
トランザクション メッセージの XML 階層:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
<RoomData>
要素に含まれる情報は次のとおりです。
旅行プランは指定できません本来の用途は、
旅行プラン以外のデータが含まれます
<RoomData>
要素は <PackageData>
に似ていますが、
実際の部屋の設備やパッケージの内容ではなく、使用しているデバイス
<RoomData>
と <PackageData>
を組み合わせて使用し、次の詳細情報を提供します。
条件の組み合わせ。パッケージに含まれない個々の部屋の場合は、単に
<RoomData>
。
<RoomData>
要素と <PackageData>
要素の両方を
同じ客室または条件の組み合わせ。その客室またはパッケージが
両方の説明が で区切られ、
ハイフンを使用します。
詳しくは、条件の組み合わせのメタデータをご覧ください。
構文
<RoomData>
要素の構文は次のとおりです。
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <PropertyDataSet> ... <RoomData> <RoomID>room_ID</RoomID> <Name> <Text text="room_name" language="language_code"/> ... </Name> <Description> <Text text="room_description" language="language_code"/> ... </Description> <Capacity>max_number_of_occupants</Capacity> <Occupancy>max_number_of_intended_occupants</Occupancy> <OccupancyDetails> <!-- optional info about the types of guests, whether adults, children, or seniors --></OccupancyDetails> <OccupancySettings> <MinOccupancy>min_number_of_occupants</MinOccupancy> <MinAge>min_age_of_occupants</MinAge> </OccupancySettings> <PhotoURL> <Caption> <Text text="photo_description" language="language_code"/> ... </Caption> <URL>photo_location</URL> </PhotoURL> <RoomFeatures> ... </RoomFeatures> </RoomData> ... </PropertyDataSet> </Transaction>
属性
<RoomData>
要素には属性はありません。
子要素
<RoomData>
要素には次の子要素があります。
子要素 | 必須 | 型 | 説明 |
---|---|---|---|
<Capacity> | Optional | integer | 会議室が物理的に確保できる最大宿泊客数
対応。客室の収容人数が次の値以上である
。
指定する場合は、この値以上の値を指定する必要があります
|
<Description> | Optional | Object | 客室の詳細な説明。この要素は
他の要素やルールで記述されていない情報を含む
<Name> 要素。大文字のみを使用するべきではない
文字を入力します。
言語ごとに個別の 次の例は、フランス語と英語版の部屋を示しています description: <Description> <Text text="Two queen-sized beds" language="en"/> <Text text="Deux lits de la reine" language="fr"/> </Description> |
<Name> | Required | string | 客室のカテゴリの名前。この値は
ホテルのランディング ページ(以前の POS)に表示されていること。設定しない
この要素の値をすべて大文字にします。
この要素は、単一の子要素
言語ごとに個別の 次の例は、フランス語と英語版の部屋を示しています name: <Name> <Text text="Standard Double Room" language="en"/> <Text text="Le chambre double" language="fr"/> </Name> |
<Occupancy> | Optional | integer | 客室が想定している宿泊客の最大数。
たとえば、大きなスイートであれば 6 人を物理的に収容できます。
最大 4 名まで宿泊可能(定員 = 6)。
この値は
|
<OccupancySettings> | Optional | Object | 特定の宿泊人数に関する要件を制限または変更できる設定です。
できます。
<OccupancySettings> <MinOccupancy>2</MinOccupancy> <MinAge>16</MinAge> </OccupancySettings> すべての子要素を含める必要はありません。 |
<PhotoURL> | Optional | Object | 指定された部屋の写真の URL と説明(省略可)
条件の組み合わせ。複数の <PhotoURL> を指定できます。
条件の組み合わせによって異なります写真の URL は、それぞれ固有の URL にする必要があります
<PhotoURL> 。
この要素では、次の子要素を使用します。
例: <PhotoURL> <URL>https://www.example.com/static/bar/image1234.jpg</URL> <Caption> <Text text="A bright and breezy way to enjoy your mornin' cuppa tea." language="en"/> <Text text="Une façon lumineuse et aérée pour profiter de votre journée tasse de thé." language="fr"/> </Caption> </PhotoURL> <PhotoURL> <URL>https://www.foo.com/static/bar/image5678.jpg</URL> <Caption> <Text text="Or, perhaps you prefer coffee." language="en"/> <Text text="Ou peut-être préférez-vous le café." language="fr"/> </Caption> </PhotoURL> |
<RoomFeatures> | Optional | <RoomFeatures> |
客室の設備や機能に関する情報が含まれています。 |
<RoomID> | Required | string | 客室の一意の ID。この ID を使用して客室データを照合する
料金の更新の <Result> ブロックで更新してください。対象
詳しくは、条件の組み合わせのメタデータをご覧ください。(
また、この ID を使用して、1 つのクラスタで共通の客室の定義を参照することも
客室データをインラインで定義する際のトランザクション メッセージ)。 |
例
客室データ
次の例では、客室データを定義します。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>5440OF</RoomID>
<Name>
<Text text="Single King Bed Room" language="en"/>
<Text text="Simple Lit de Roi" language="fr"/>
</Name>
<Description>
<Text text="One king bed with pillowtop mattresses, 300-thread-count linens,
and down comforters (bedspreads). City view. 300 square feet. Desk with
rolling chair. Multi-line phone with voice mail. Cable/satellite TV with
complimentary HBO and pay movies." language="en"/>
<Text text="Un très grand lit avec matelas à plateau-coussin, ..." language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Bathroom View" language="en"/>
<Text text="La salle de baines" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<Capacity>4</Capacity>
</RoomData>
</PropertyDataSet>
</Transaction>
会議室とパッケージのメタデータ
次の例では、客室とパッケージのメタデータを定義しています。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>180054</Property>
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Bed Room" language="en"/>
<Text text="Chambre single" language="fr"/>
</Name>
<Description>
<Text text="Non-smoking" language="en"/>
<Text text="Pas de fumiers" language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Living area" language="en"/>
<Text text="Le chambre" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
</RoomData>
<PackageData>
<PackageID>P54321</PackageID>
<Name>
<Text text="Breakfast Included" language="en"/>
<Text text="Avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Includes a delightful array of jams and jellies." language="en"/>
<Text text="Comprend une délicieuse gamme de confitures et gelées." language="fr"/>
</Description>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
複数の条件の組み合わせ
次の例では、複数の Room に対して客室とパッケージのメタデータを定義しています バンドル:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<!-- A transaction message with room types result. -->
<PropertyDataSet>
<Property>12345</Property>
<RoomData>
<RoomID>single</RoomID>
<Name>
<Text text="Single room" language="en"/>
<Text text="Chambre simple" language="fr"/>
</Name>
<Description>
<Text text="A single room" language="en"/>
<Text text="Le chambre simple" language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Living area" language="en"/>
<Text text="Le chambre" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<PhotoURL>
<URL>http://www.foo.com/static/bar/image1235.jpg</URL>
</PhotoURL>
<Capacity>2</Capacity>
</RoomData>
<RoomData>
<RoomID>double</RoomID>
<Name>
<Text text="Double room" language="en"/>
<Text text="Chambre double" language="fr"/>
</Name>
<Occupancy>1</Occupancy>
</RoomData>
<PackageData>
<PackageID>refundbreakfast</PackageID>
<Name>
<Text text="Refundable Room with Breakfast" language="en"/>
<Text text="Chambre remboursable avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Continental Breakfast" language="en"/>
<Text text="Petit déjeuner continental" language="fr"/>
</Description>
<ChargeCurrency>hotel</ChargeCurrency>
<Refundable available="1" refundable_until_days="3"/>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
<PackageData>
<PackageID>prepaid</PackageID>
<Name>
<Text text="Nonrefundable" language="en"/>
<Text text="Non remboursable" language="fr"/>
</Name>
<Description>
<Text text="Blah blah blad" language="en"/>
<Text text="Le blah blah blad" language="fr"/>
</Description>
<Occupancy>2</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="0"/>
</PackageData>
</PropertyDataSet>
</Transaction>
<RoomFeatures>
会議室で見つかった設備や機能を定義します。
<RoomFeatures>
要素は、ファイルの次の場所に表示されます。
トランザクション メッセージの XML 階層:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<RoomFeatures>
構文
<RoomFeatures>
要素の構文は次のとおりです。
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <PropertyDataSet ... > ... <RoomData> <RoomFeatures> <JapaneseHotelRoomStyle>[western|japanese|japanese_western]</JapaneseHotelRoomStyle> <Beds> <Bed size="[single|semi_double|double|queen|king]"> <Width unit="cm" number="width"/> <Length unit="cm" number="length"/> </Bed> <!-- Include with any additional beds. --> </Beds> <Suite/> <Capsule/> <Roomsharing>[shared|private]</Roomsharing> <Outdoor/> <MobilityAccessible/> <Smoking>[smoking|non_smoking]</Smoking> <BathAndToilet relation="[together|separate]"> <Bath bathtub="[false|true]" shower="[false|true]"/> <Toilet electronic_bidet="[false|true]" mobility_accessible="[false|true]"/> </BathAndToilet> <OpenAirBath/> <AirConditioning/> <Balcony/> <Views> <!-- (Optional) Defines the type of views from the room. --> <!-- Example: <OceanView/> --> </Views> </RoomFeatures> ... </RoomData> ... </PropertyDataSet> </Transactions>
属性
<RoomFeatures>
要素には属性はありません。
子要素
<RoomFeatures>
要素には次の子要素があります。
子要素 | 必須 | 型 | 説明 |
---|---|---|---|
<JapaneseHotelRoomStyle> | Optional | enum | 日本のホテルの客室のスタイルを示します。 指定できる値は次のとおりです。
|
<Beds> | Optional | Object | チャットルームと同じ数の <Bed> が含まれます。備考
日本の布団は計上されないと考えました。
各
<Bed> には次の子要素があります。
<ph type="x-smartling-placeholder">
<Beds> <Bed size="double"> <Width unit="cm" number="140"/> <Length unit="cm" number="195"/> </Bed> <Bed/> <!-- Size unknown --> </Beds> |
<Suite> | Optional | empty | この客室がスイートの場合は、この要素を指定します。 |
<Capsule> | Optional | empty | この客室がカプセルルームの場合は、この要素を指定します。 |
<Roomsharing> | Optional | enum | この部屋を他の宿泊者(オーナーなど)と共有するかどうか
できます。有効な値は shared と private です。 |
<Outdoor> | Optional | empty | この部屋が屋外の宿泊施設である場合に、この要素を指定します。 固定壁、配管設備、クライメート コントロールがあります。例: ホテルの部屋 キャンプ場はアウトドア宿泊施設ではありませんが 宿泊客が自分の RV 車をレンタルできる RV パークは屋外の宿泊施設です。 |
<MobilityAccessible> | Optional | empty | この会議室がバリアフリーの場合は、この要素を指定します。 |
<Smoking> | Optional | enum | この部屋が喫煙室か喫煙室か。有効な値
non_smoking と smoking です。 |
<BathAndToilet> | Optional | Object | 客室のバスルームとトイレに関する情報が含まれています。
属性は次のとおりです。
この要素は、必要に応じて次の子要素を使用します。
例: <BathAndToilet relation="separate"> <Bath bathtub="1" shower="1"/> <Toilet electronic_bidet="1" mobility_accessible="1"/> </BathAndToilet> |
<OpenAirBath> | Optional | empty | 貸切の露天風呂付きの客室の場合は、この要素を指定します。 |
<AirConditioning> | Optional | empty | この部屋にエアコンがある場合は、この要素を指定します。 |
<Balcony> | Optional | empty | バルコニーまたはベランダがある場合は、この要素を指定します。 |
<Views> | Optional | Object | 有効なオプションは次のとおりです。
|
例
JapaneseHotelRoomStyle
にデフォルト値はありません。省略
値によって XML エラーにならないが、リスティングが
ユーザーが部屋のスタイルやベッドでフィルタしたときに表示される検索結果。
シングルベッド 2 台
次の例は、<RoomFeatures>
の使用方法を示しています。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<RoomFeatures>
<JapaneseHotelRoomStyle>western</JapaneseHotelRoomStyle>
<Beds> <!-- Two single beds -->
<Bed size="single">
<Width unit="cm" number="97"/>
<Length unit="cm" number="195"/>
</Bed>
<Bed size="single">
<Width unit="cm" number="97"/>
<Length unit="cm" number="195"/>
</Bed>
</Beds>
<Suite/>
<Capsule/>
<Roomsharing>private</Roomsharing>
<Outdoor/>
<MobilityAccessible/>
<Smoking>non_smoking</Smoking>
<BathAndToilet relation="separate">
<Bath bathtub="1" shower="1"/>
<Toilet electronic_bidet="1" mobility_accessible="1"/>
</BathAndToilet>
<OpenAirBath/>
<AirConditioning/>
<Balcony/>
<Views>
<LakeView/>
<MarinaView/>
<BeachView/>
<ForestView/>
<MountainView/>
<NatureView/>
</Views>
</RoomFeatures>
</RoomData>
</PropertyDataSet>
</Transaction>
ダブルベッド 2 台
以下は、2 室ある western
スタイルの和室の例です。
ベッド double
台。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<RoomFeatures>
<JapaneseHotelRoomStyle>western</JapaneseHotelRoomStyle>
<Beds> <!-- Two double beds-->
<Bed size="double"></Bed>
<Bed size="double"></Bed>
</Beds>
</RoomFeatures>
</RoomData>
</PropertyDataSet>
</Transaction>
ベッドなしの和風
以下は、ベッドのない和室の例です。ベッド
japanese
スタイルの部屋の情報は必要ありません。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<RoomFeatures>
<JapaneseHotelRoomStyle>japanese</JapaneseHotelRoomStyle>
</RoomFeatures>
</RoomData>
</PropertyDataSet>
</Transaction>
ベッドを備えた和洋室
king
のある japanese_western
スタイルの部屋の例です。
。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<RoomFeatures>
<JapaneseHotelRoomStyle>japanese_western</JapaneseHotelRoomStyle>
<Beds>
<Bed size="king"></Bed>
</Beds>
</RoomFeatures>
</RoomData>
</PropertyDataSet>
</Transaction>
パートナーがjapanese_western
のベッド数情報を保有していない場合
次の例のようになります。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<RoomFeatures>
<JapaneseHotelRoomStyle>japanese_western</JapaneseHotelRoomStyle>
</RoomFeatures>
</RoomData>
</PropertyDataSet>
</Transaction>
<PackageData>
プロパティの条件の組み合わせに関する、旅行プランに依存しないメタデータを定義します。 この要素には、パートナーとホテル、 旅行プランでは利用できません本来の目的は、旅行プラン以外のすべての 旅行プランデータから参照できます
<PackageData>
要素は、ファイルの次の場所に表示されます。
トランザクション メッセージの XML 階層:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
<PackageData>
要素は <RoomData>
に似ていますが、
物理的な客室に含まれていない料金機能や条件について記載している
説明します。<RoomData>
と <PackageData>
を組み合わせて使用すると、
条件の組み合わせと料金機能の詳細を提供します。スペースのある個々の部屋に
パッケージの一部でない場合は、<RoomData>
のみを使用します。
次のように、<RoomData>
要素と <PackageData>
要素の両方を
同じ客室または条件の組み合わせにできますその客室またはパッケージが
両方の説明が で区切られ、
ハイフンを使用します。
プロパティの <PackageData>
要素を 1 つ更新する場合は、
プロパティのすべての <PackageData>
要素と <RoomData>
要素を更新します。
各 <PropertyDataSet>
は、プロパティに関するすべてのデータとみなされます。
既存のデータはすべて上書きされます。
詳しくは、条件の組み合わせのメタデータをご覧ください。
構文
<PackageData>
要素の構文は次のとおりです。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction ... >
<PropertyDataSet ... >
<PackageData>
<PackageID>package_ID</PackageID>
<Name>
<Text text="package_name" language="language_code"/>
...
</Name>
<Description>
<Text text="package_description" language="language_code"/>
...
</Description>
<Refundable available="[false|true]" refundable_until_days="number_of_days"
refundable_until_time="time"/>
<ChargeCurrency>[deposit|hotel|installments|web]</ChargeCurrency>
<Occupancy>max_number_of_intended_occupants</Occupancy>
<OccupancyDetails><!-- optional info about the types of guests,
whether adults or children --></OccupancyDetails>
<!-- For these next 3 elements, boolean_value can be 0/1 or true/false -->
<BreakfastIncluded>boolean_value</BreakfastIncluded>
<InternetIncluded>boolean_value</InternetIncluded>
<ParkingIncluded>boolean_value</ParkingIncluded>
<PhotoURL>
<Caption>
<Text text="photo_description" language="language_code"/>
...
</Caption>
<URL>photo_location</URL>
</PhotoURL>
...
<Meals>
<Breakfast
included="[true|false]" buffet="[true|false]"
in_room="[true|false]" in_private_space="[true|false]"/>
<Dinner
included="[true|false]" buffet="[true|false]"
in_room="[true|false]" in_private_space="[true|false]"/>
</Meals>
<CheckinTime>checkin_time</CheckinTime>
<CheckoutTime>checkout_time</CheckoutTime>
<MembershipBenefitsIncluded>
<ProgramName>
<Text language="en" text="Special Rewards">
</ProgramName>
<ProgramLevel>
<Text language="en" text="Platinum">
</ProgramLevel>
</MembershipBenefitsIncluded>
<OnPropertyCredit>
<Amount currency="USD">123.45</Amount>
</OnPropertyCredit>
</PackageData>
<!-- a PackageID with a MilesIncluded
rate feature -->
<PackageData>
<PackageID>room_with_miles</PackageID>
<Name>
<Text text="Room with Bundled Miles" language="en">
</Name>
<ChargeCurrency>hotel </ChargeCurrency>
<MilesIncluded>
<NumberOfMiles>1000 </NumberOfMiles>
<Provider>
<Text language="en" text="United Airlines">
</Provider>
</MilesIncluded>
</PackageData>
...
...
</PropertyDataSet>
...
</Transaction>
属性
<PackageData>
要素には属性はありません。
子要素
<PackageData>
要素には次の子要素があります。
子要素 | 必須 | 型 | 説明 |
---|---|---|---|
<BreakfastIncluded> | Optional | boolean | このパッケージに料金に朝食が含まれるかどうかを指定します。
有効な値は 0 (または false )と 1 です。
(または true )。
推奨される方法は、
次の価格を変更: |
<ChargeCurrency> | Optional | enum | ユーザーがいつ、どこで予約を支払うか。この要素では、
<Result> で <ChargeCurrency> のような構文を使用します。
デフォルト値は |
<CheckinTime> | Optional | Time | 最も早いチェックイン時間。 時刻はホテルの現地時間で 24:00 より短くする必要があります。 |
<CheckoutTime> | Optional | Time | ホテルの現地時間で可能な最も遅いチェックアウト時間。 |
<Description> | Optional | Object | パッケージの詳細な説明。この要素は
他の要素やルールで記述されていない情報を含む
<Name> 要素。大文字のみを使用するべきではない
文字を入力します。
<Description> <Text text="Two breakfast buffet certificates for each night of stay." language="en"/> <Text text="Deux certificats petit-déjeuner buffet pour chaque nuit de séjour." language="fr"/> </Description> |
<InternetIncluded> | Optional | boolean | 無料のインターネット アクセスがパッケージに含まれている場合は、
他のパッケージにはそのようなアメニティは含まれていません。設定しない
要素を使用して、すべてのユーザーに無料のインターネット接続を提供する
あります。この要素は、室内の有線インターネットまたはワイヤレスには適用されません
客室ではインターネットを利用できません。有効な値は次のとおりです。
0 (または false )、1
(または true )。
|
<Meals> | Optional | Object | このパッケージ内の食事に関する情報が含まれています。
オプションの属性は、 食事フィルタ( |
<Name> | Required | string | パッケージの名前。この値は
表示する必要がありますこの要素の値をすべて大文字に設定しないでください
使用できます。
この要素は、単一の子要素 <Name> <Text text="Bed and Breakfast" language="en"/> <Text text="Lit et petit déjeuné" language="fr"/> </Name> |
<Occupancy> | Optional | integer | 条件の組み合わせが対象とする最大宿泊客数。
たとえば、大きなスイートであれば 6 人を物理的に収容できます。
最大 4 名まで利用できます。
この値は
この要素を 注: <Occupancy> には、以下を伴います。
<OccupancyDetails> : ゲストのタイプを
(大人または子供)。構文と詳細については、<OccupancyDetails> をご覧ください。
子要素の説明です。
|
<PackageID> | Required | string | パッケージの一意の ID。この ID を使用して
(この ID を使用して、共通の条件の組み合わせ定義を参照することもできます)。 条件の組み合わせデータを定義する際に 1 つのトランザクション メッセージ内で使用する inline.) |
<ParkingIncluded> | Optional | boolean | 条件の組み合わせに無料の駐車場が含まれるかどうか、
駐車場以外は、このホテルの有料サービスとなります。指定しない
無料駐車場があるホテルの場合は、この要素の値を指定します。
有効な値は |
<PhotoURL> | Optional | Object | (<RoomData> の <PhotoURL> と同じ、
パッケージ(食事の写真など)の場合。
|
<Refundable> | Optional | Object | 全額払い戻し可能または無料の料金を提示できます
キャンセルします。指定しない場合、払い戻しに関する情報は表示されません。
<PackageData> レベルの払い戻しポリシーは、
<Result> レベル。<Rates> レベルの払い戻しポリシーはオーバーライドされる
<PackageData> レベルでの払い戻しポリシー。払い戻し可能な料金設定では
代替オプションを通じてユーザーにも
トランザクションメッセージスキーマを変更しますこれらのオプションの詳細
払い戻し可能な料金に関するポリシー
次の例は、 <Refundable available="1" refundable_until_days="7" refundable_until_time="18:00:00"/> 注: すべての属性を設定することをおすすめします。フィード ステータスに関する警告メッセージが、1 つ以上の属性が 未設定。 属性を設定しない場合、レートは 払い戻しが可能です。属性は次のとおりです。
属性を設定する際は、次の点に注意してください。
|
<MembershipBenefits |
Optional | boolean | 料金には、滞在期間中のエリート ステータスの特典が含まれます。含まれるもの
次のパラメータを指定します。
<ph type="x-smartling-placeholder">
|
<CarRentalIncluded> | Optional | boolean | 料金には滞在期間中の無料レンタカーが含まれます。 |
<MilesIncluded>> | Optional | boolean | 料金にはマイレージも含まれます。次のようなパラメータがあります。
<ph type="x-smartling-placeholder">
|
<OnPropertyCredit> | Optional | boolean | 料金には宿泊施設内のクレジットが含まれます(F&B、リゾート、スパなど)。パラメータ:
<ph type="x-smartling-placeholder">
|
<AirportTransportationIncluded> | Optional | Object | 料金には近隣の空港との無料送迎が含まれます。オプションの
direction 属性は、メッセージの方向性を指定します。
交通手段です。有効な値は次のとおりです。
<ph type="x-smartling-placeholder">
from : 空港から空港までの交通手段を
プロパティです。方向が指定されていない場合のデフォルト値です。
to : 空港から空港までの交通手段を
プロパティです。
round_trip : 発着地との間の交通手段があります。
空港です。
|
例
1 つの部屋の組み合わせ
次の例では、定員が 2 人(大人 1 人と子供 1 人)で、朝食付き:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<PackageData>
<Occupancy>2</Occupancy>
<OccupancyDetails>
<NumAdults>1</NumAdults>
<Children>
<Child age="17"/>
</Children>
</OccupancyDetails>
<PackageID>P54321</PackageID>
<Name>
<Text text="Breakfast Included" language="en"/>
<Text text="Avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Two certificates for continental
breakfast will be provided." language="en"/>
<Text text="Deux certificats pour le petit déjeuner
continental seront fournis." language="fr"/>
</Description>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
客室とパッケージのメタデータ
次の例では、客室とパッケージのメタデータを定義しています。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>180054</Property>
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Bed Room" language="en"/>
<Text text="Chambre single" language="fr"/>
</Name>
<Description>
<Text text="Non-smoking" language="en"/>
<Text text="Pas de fumiers" language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Living area" language="en"/>
<Text text="Le chambre" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
</RoomData>
<PackageData>
<PackageID>P54321</PackageID>
<Name>
<Text text="Breakfast Included" language="en"/>
<Text text="Avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Includes a delightful array of jams and jellies." language="en"/>
<Text text="Comprend une délicieuse gamme de confitures et gelées." language="fr"/>
</Description>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
複数の条件の組み合わせ
次の例では、複数の Room に対して客室とパッケージのメタデータを定義しています バンドル:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<!-- A transaction message with room types result. -->
<PropertyDataSet>
<Property>12345</Property>
<RoomData>
<RoomID>single</RoomID>
<Name>
<Text text="Single room" language="en"/>
<Text text="Chambre simple" language="fr"/>
</Name>
<Description>
<Text text="A single room" language="en"/>
<Text text="Le chambre simple" language="fr"/>
</Description>
<PhotoURL>
<Caption>
<Text text="Living area" language="en"/>
<Text text="Le chambre" language="fr"/>
</Caption>
<URL>http://www.foo.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<PhotoURL>
<URL>http://www.foo.com/static/bar/image1235.jpg</URL>
</PhotoURL>
<Capacity>2</Capacity>
</RoomData>
<RoomData>
<RoomID>double</RoomID>
<Name>
<Text text="Double room" language="en"/>
<Text text="Chambre double" language="fr"/>
</Name>
<Occupancy>1</Occupancy>
</RoomData>
<PackageData>
<PackageID>refundbreakfast</PackageID>
<Name>
<Text text="Refundable Room with Breakfast" language="en"/>
<Text text="Chambre remboursable avec le petit déjeuner" language="fr"/>
</Name>
<Description>
<Text text="Continental Breakfast" language="en"/>
<Text text="Petit déjeuner continental" language="fr"/>
</Description>
<ChargeCurrency>hotel</ChargeCurrency>
<Refundable available="1" refundable_until_days="3"/>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
<PackageData>
<PackageID>prepaid</PackageID>
<Name>
<Text text="Nonrefundable" language="en"/>
<Text text="Non remboursable" language="fr"/>
</Name>
<Description>
<Text text="Blah blah blad" language="en"/>
<Text text="Le blah blah blad" language="fr"/>
</Description>
<Occupancy>2</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="0"/>
</PackageData>
</PropertyDataSet>
</Transaction>
条件の組み合わせ料金
次の例では、条件の組み合わせに対して客室とパッケージのメタデータを定義しています 次の料金機能を使用できます。
<Transaction timestamp="2010-04-24T20:44:56-04:00" id="TXNID">
<PropertyDataSet>
<Property>12345</Property>
<RoomData>
...
</RoomData>
<!-- definitions of PackageData types including rate features -->
<PackageData>
<PackageID>room_with_addl_benefits</PackageID>
<Name>
<Text text="Acme Hotels 2017 Promotion Package" language="en"/>
</Name>
<ChargeCurrency>hotel</ChargeCurrency>
<BreakfastIncluded>1</BreakfastIncluded>
<MembershipBenefitsIncluded>
<ProgramName>
<Text language="en" text="Marriott Rewards"/>
</ProgramName>
<ProgramLevel>
<Text language="en" text="Platinum"/>
</ProgramLevel>
</MembershipBenefitsIncluded>
<OnPropertyCredit>
<Amount currency="USD">123.45</Amount>
</OnPropertyCredit>
</PackageData>
<PackageData>
<PackageID>room_with_miles</PackageID>
<Name>
<Text text="Room with Bundled Miles" language="en"/>
</Name>
<ChargeCurrency>hotel</ChargeCurrency>
<MilesIncluded>
<NumberOfMiles>1000</NumberOfMiles>
<Provider>
<Text language="en" text="United Airlines"/>
</Provider>
</MilesIncluded>
<AirportTransportationIncluded direction="from"/>
</PackageData>
</PropertyDataSet>
<!-- The actual list of prices -->
<Result>
…
</Result>
</Transaction>
食事&写真
次の例では、食事の客室とパッケージのメタデータを定義しています。 写真、チェックイン時刻とチェックアウト時刻:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<PackageData>
<PackageID>PackageID_1</PackageID>
<Name>
<Text text="Meals Included" language="en"/>
</Name>
<PhotoURL>
<Caption>
<Text text="Breakfast" language="en"/>
<Text text="朝食" language="ja"/>
</Caption>
<URL>http://example.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<Meals>
<!-- Guests can choose to have breakfast in their room or in another
space to avoid contact with other guests. -->
<Breakfast included="1" in_room="1" in_private_space="1"/>
<Dinner included="1" buffet="1"/>
</Meals>
<CheckinTime>15:00</CheckinTime>
<CheckoutTime>11:00</CheckoutTime>
</PackageData>
</PropertyDataSet>
</Transaction>
朝食
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<PackageData>
<PackageID>PackageID_1</PackageID>
<Name>
<Text text="Breakfast Included" language="en"/>
</Name>
<PhotoURL>
<Caption>
<Text text="Breakfast" language="en"/>
<Text text="朝食" language="ja"/>
</Caption>
<URL>http://example.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<Meals>
<Breakfast included="true"/>
<!-- Dinner not included needs to be explicitly specified -->
<Dinner included="false"/>
</Meals>
<CheckinTime>15:00</CheckinTime>
<CheckoutTime>11:00</CheckoutTime>
</PackageData>
</PropertyDataSet>
</Transaction>
<Result>
<Transaction>
の価格と在庫状況の更新のためのコンテナ
表示されます。
<Result>
要素は、ファイルの次の場所に表示されます。
トランザクション メッセージの XML 階層:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
<Result>
を使用して、客室料金を設定または更新し、
選択しますこの要素で定義されるアイテムは通常、
客室やパッケージに関する旅行プランに依存しないメタデータ(説明や
(設備のセット)を <PackageData>
と <RoomData>
で定義します。
通常、料金の更新を含むトランザクション メッセージを頻繁に送信します。 送信の正確な方法と頻度は、ご利用の配信モードによって異なります。
次のように、トランザクション メッセージで <Result>
を使用して旅行プランを削除できます。
広告枠の削除をご覧ください。
トランザクション メッセージを使用して料金を更新する方法について詳しくは、
在庫状況、広告枠の追加と更新をご覧ください。
1 つのトランザクション メッセージには、任意の数の <Result>
要素を含めることができます。
(メッセージのサイズが 100 MB を超えない限り)。
構文
<Result>
要素の構文は次のとおりです。
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <Result> <!-- Required --> <Property>hotel_ID</Property> <!-- Required --> <Checkin>YYYY-MM-DD</Checkin> <!-- Required --> <Nights>number_of_nights</Nights> <Baserate currency="currency_code">price</Baserate> <!-- Only required when <Baserate> contains a real price --> <Tax currency="currency_code">tax_amount</Tax> <!-- Only required when <Baserate> contains a real price --> <OtherFees currency="currency_code">fee_amount</OtherFees> <Refundable available="[false|true]" refundable_until_days="number_of_days" refundable_until_time="time"/> <RoomID>room_ID</RoomID> <PackageID>package_ID</PackageID> <ExpirationTime>expiration_time</ExpirationTime> <ChargeCurrency>[deposit|hotel|installments|web]</ChargeCurrency> <Occupancy>max_number_of_intended_occupants</Occupancy> <!-- For Baserate, occupancy value must be greater than or equal to 2. If a value is not provided for occupancy, it defaults to 2. --> <OccupancyDetails>occupancy_info</OccupancyDetails> <Rates>...</Rates> <RoomBundle>...</RoomBundle> <AllowablePointsOfSale> <PointOfSale id="landing_page_identifier"/> ... </AllowablePointsOfSale> <Custom[1-5]>custom_value</Custom[1-5]> </Result> ... </Transaction>
属性
<Result>
要素には次の属性があります。
属性 | 必須かどうか | 型 | 説明 |
---|---|---|---|
mergeable | Optional | boolean | デフォルトでは、特定のホテルと旅行プランのペアの新しい料金は、
Google のキャッシュにある以前の(期限切れでない)料金を上書きします。「
統合可能な属性を使用すると、追加の価格を Google のキャッシュに保存できます
以前の料金情報を削除せずに継続できますライブ料金クエリ
コンテキスト レスポンスでは、この属性は常に true に設定されます。
(トランザクション メッセージのレスポンスに関係なく)使用されます。 |
子要素
<Result>
要素には次の子要素があります。
子要素 | 必須 | 型 | 説明 |
---|---|---|---|
<AllowablePointsOfSale> | Optional | Object | 対象となる 1 つ以上のランディング ページが
おすすめしますランディング ページは、ユーザーの予約プロセスを処理できるウェブサイトです。
あります。特定のランディング ページを明示的に指定
など)、<AllowablePointsOfSale> を 1 つ以上追加してください
<PointOfSale> 要素の
ランディング ページ ファイル内の id 属性。
この要素を含めない場合、 ランディングページのファイルは できます。詳細については、このモジュールの ランディング ページ ファイルの構文 |
<Baserate> | Optional | float | 滞在中の客室の料金。この要素の値 以下を反映する必要があります。
その旅行プランで客室が利用できない場合、
条件の組み合わせを削除するには、条件の組み合わせを削除するの手順を実施してください。
<Baserate currency="USD">1200.40</Baserate>
|
<ChargeCurrency> | Optional | enum | ユーザーがいつ、どこで予約を支払うか。この要素は
<Result> のトランザクション メッセージで使用します。
Hotel Price または <PackageData> ブロックの要素
条件の組み合わせについては
指定できる値は次のとおりです。
デフォルト値は |
<Checkin> | Required | Date | Date を使用した旅行プランのチェックイン日
使用できます。<Nights> 要素と
<Checkin> 要素が旅行プランを構成します。 |
<Custom[1‑5]> | Optional | string | 追加のデータを渡すために使用できるカスタム フィールドを定義します
関連付けられます
次の要素名:
<ph type="x-smartling-placeholder">
<カスタム> |
<ExpirationTime> | Optional | DateTime | 料金の有効期限が切れたとみなされる日時(3 時間)
なります。
有効期限のタイムスタンプがある場合は、指定しないことをおすすめします。 料金構成にとって重要ではありません。 期限切れの料金や旅行プランは提供されません 期限切れの価格のものは <ph type="x-smartling-placeholder"></ph> ライブ料金クエリをご覧ください。 |
<Nights> | Required | integer | 旅行プランの宿泊日数。「
<Nights> 要素には正の整数を指定してください。
<Nights> と
<Checkin> が旅行プランを作成します。 |
<OtherFees> | Optional | float | 基本料金と税金以外の手数料
決定します<OtherFees> 要素は、
単一の必須属性 currency で、
料金の 3 文字の通貨コード。たとえば、USD のようにします。
次の場合は |
<Occupancy> | Optional | integer | この料金で許可される最大宿泊人数を指定します。
<Occupancy> が <Result> の直下に表示されると、
2 以上を指定する必要があります。<Occupancy> は可能性があります
必ず <OccupancyDetails> を指定します。
ゲストのタイプ(大人または子供)ゲストタイプが指定されていない場合
成人とみなされます。<OccupancyDetails> にコンサルトする
構文と説明が含まれています。もし
<Occupancy> 要素が指定されていません。定員数:
デフォルトは 2 です。
注: この機能を有効にするには、サポートチームにご連絡ください。 2 人以外の宿泊料金を送信する。 |
<PackageID> | Optional | string | 事前定義されたパッケージ データにマッピングするパッケージの一意の ID。 PACKAGE-ID ランディング ページ変数の入力にも使用されます。 詳細については、このモジュールの 部屋 バンドル メタデータ。 |
<Property> | Required | string | 関連データの影響を受けるホテルの ID(料金、
旅行プラン、条件の組み合わせ、メタデータなど)。この要素の値は、
指定します。この要素の値はリスティングと一致している必要があります
ホテルリスト フィードで定義した <id> 。
|
<Rates> | Optional | <Rates> |
1 つ以上の <Rate> ブロックのコンテナ。毎週<Rate>
<Rates> は、客室/宿泊プランに異なる料金を定義します。
組み合わせたものです。
料金が複数ある場合は、 注: |
<Refundable> | Optional | Object | 全額払い戻し可能または無料の料金を提示できます
キャンセルします。指定しない場合、払い戻しに関する情報は表示されません。
<PackageData> レベルの払い戻しポリシーは、
<Result> レベル。<Rates> レベルの払い戻しポリシーはオーバーライドされる
<PackageData> レベルでの払い戻しポリシー。払い戻し可能な料金設定では
代替オプションを通じてユーザーにも
トランザクションメッセージスキーマを変更します詳細:
払い戻し可能な料金に関するポリシー
次の例は、 <Refundable available="1" refundable_until_days="7" refundable_until_time="18:00:00"/> 注: すべての属性を設定することをおすすめします。フィード ステータスに関する警告メッセージが、1 つ以上の属性が 未設定。 属性を設定しない場合、レートは 払い戻しが可能です。属性は次のとおりです。
属性を設定する際は、次の点に注意してください。
|
<RoomBundle> | Optional | <RoomBundle> |
客室の物理的説明の情報(料金を含む)を格納するコンテナ。
アメニティのパッケージ、アメニティの購入ポリシーの詳細が
ホテルと旅行プランに基づいて作成されます。
通常、この要素は、基本客室の料金を定義するために使用します。 同じ宿泊施設で異なるタイプの客室を使用している場合可能性はありますが、 条件の組み合わせの説明をインラインで定義する場合は、 その情報を定義するトランザクション メッセージ。Google は 繰り返しではなく参照するために使用できます。 今後の料金改定についてお話しします |
<RoomID> | Optional | string | 事前定義された客室データにマッピングする一意の ID。また、 PARTNER-ROOM-ID ランディング ページ変数への入力に使用されます。 詳細については、このモジュールの 部屋 バンドル メタデータ。 |
<Tax> | Optional | float | 最終的な客室の料金に対して計算される税金。
<Tax> 要素では、単一の必須属性を指定します。
currency : 3 文字の通貨コードを定義します
税の金額です。たとえば、USD のようにします。「
次の場合は <Tax> 要素が必要です。
<Baserate> が 0 より大きい。
|
<Unavailable> | Optional | Object | 旅行プランが予約できないことを示します。用途
旅行プランが利用できない理由の詳細が表示されます。1 本
以下の利用不能理由のうち、1 つ以上が
<Unavailable> タグ:
<ph type="x-smartling-placeholder">
|
例
複数のプロパティの例
次の例では、1 つの旅行プランと 2 つの旅行プランの料金を定義しています プロパティ:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-23T16:20:00-04:00" id="42">
<Result>
<Property>060773</Property>
<RoomID>RoomType101</RoomID>
<PackageID>Package101</PackageID>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">278.33</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="site1"/>
</AllowablePointsOfSale>
</Result>
<Result>
<Property>052213</Property>
<RoomID>RoomType101</RoomID>
<PackageID>Package101</PackageID>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">299.98</Baserate>
<Tax currency="USD">26.42</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="otto"/>
<PointOfSale id="simon"/>
</AllowablePointsOfSale>
</Result>
</Transaction>
この例には、部屋に関する 説明、写真とキャプション、部屋の名前、収容人数です。
この情報は、別のトランザクションで 1 回定義できます。 というメッセージです。こうすれば、あらゆる場所でそれを参照できます。 料金や在庫の更新頻度が高くなります詳細については、このモジュールの 条件の組み合わせのメタデータ。
複数レートの例
次の例では、1 つの旅行プランと、複数の
宿泊人数に応じた料金を提示します<Rates>
要素を使用すると、次のことができます。
特定の宿泊施設に複数の料金を設定できる。次の例は、
民泊(VR)施設でも有用です。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-07-23T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2021-01-13</Checkin>
<Nights>9</Nights>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>2</Occupancy>
<Rates>
<Rate>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>1</Occupancy>
</Rate>
<Rate>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>3</Occupancy>
</Rate>
<Rate>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>4</Occupancy>
</Rate>
<Rate>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>5</Occupancy>
</Rate>
<Rate>
<Baserate currency="USD">3196.1</Baserate>
<Tax currency="USD">559.49</Tax>
<OtherFees currency="USD">543.34</OtherFees>
<Occupancy>6</Occupancy>
</Rate>
</Rates>
</Result>
</Transaction>
「使用不可」の例
次の例では、空室状況を指定できなかった 1 つの旅行プランを定義しています つまり、最小値を下回っている 1 秒に 指定した日付にすでに予約されており、 宿泊施設は到着日に閉業していますが、 滞在:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-23T16:20:00-04:00" id="42">
<Result>
<Property>060773</Property>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Unavailable>
<NotFetched/>
</Unavailable>
</Result>
<Result>
<Property>073313</Property>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Unavailable>
<NoVacancy/>
<MinNightStay value=3/>
</Unavailable>
</Result>
<Result>
<Property>052213</Property>
<Checkin>2018-06-10</Checkin>
<Nights>10</Nights>
<Unavailable>
<PropertyClosed first_open="2018-06-15" first_closed="2018-06-10"/>
</Unavailable>
</Result>
</Transaction>
<Rates>
1 つ以上の <Rate>
ブロックのコンテナ。毎週<Rate>
<Rates>
は、客室または旅行プランの組み合わせに対して異なる料金を定義します。
<Rates>
要素は、複数の料金がある場合にのみ使用します。
同じ客室または旅行プランの組み合わせである必要があります。たとえば、1 つのテーブルに
限定価格のレート
非公開レート
条件の組み合わせの限定価格。
<Rates>
要素は、ファイルの次の場所に表示されます。
トランザクション メッセージの XML 階層:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
(Can also contain<Rates>
) + ...
<Rate>
で設定された値は、
親要素 <Result>
または <RoomBundle>
のいずれかを指定します。<Rate>
で設定されていない場合、
親要素から値を継承します。単独
<AllowablePointsofSale><RoomBundle>
要素に継承されます。
構文
<Rates>
要素の構文は次のとおりです。
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <Result> <Rates> <Rate rate_rule_id="rate_rule_id"> <Baserate currency="currency_code">price</Baserate> <Tax currency="currency_code">tax_amount</Tax> <OtherFees currency="currency_code">fee_amount</OtherFees> <ExpirationTime>expiration_time</ExpirationTime> <Refundable available="[false|true]" refundable_until_days="number_of_days" refundable_until_time="time"/> <ChargeCurrency>[deposit|hotel|installments|web]</ChargeCurrency> <AllowablePointsOfSale> <PointOfSale id="landing_page_identifier"/> </AllowablePointsOfSale> <Occupancy>max_number_of_intended_occupants</Occupancy> <OccupancyDetails> <!-- optional info about the types of guests, whether adults or children --></OccupancyDetails> ... <Custom[1-5]>custom_value</Custom[1-5]> </Rate> ... </Rates> </Result> ... </Transaction>
属性
<Rates>
要素には次の属性があります。
属性 | 必須 | 説明 |
---|---|---|
rate_rule_id | Optional | <ph type="x-smartling-placeholder"></ph> 限定価格を使用すると、この ID は料金を 料金ルール定義ファイル。このフィールドの文字数制限は 40 文字です あります。 |
子要素
<Rates>
要素には次の子要素があります。
子要素 | 必須 | 型 | 説明 |
---|---|---|---|
<AllowablePointsOfSale> | Optional | Object | 対象となる 1 つ以上のランディング ページが
おすすめしますこの要素の構文は、
<Result> に <AllowablePointsOfSale> が投稿されました。 |
<Baserate> | Required | float | 滞在中の客室の料金。この要素では、
<Result> の <Baserate> のような構文を使用します。
注: 下位の |
<ChargeCurrency> | Optional | enum | ユーザーがいつ、どこで予約を支払うか。この要素では、
<ChargeCurrency> と同じ構文を
<Result> 。 |
<Custom[1‑5]> | Optional | string | 関連する追加データを渡すために使用できるカスタム フィールド。
ホテルからランディングページに
移動することもできますこの要素の構文は、
<Result> 内の <Custom[1‑5]> 。上限がある
最大 200 文字まで使用できます詳細については、このモジュールの
<ph type="x-smartling-placeholder"></ph>
ランディング ページ ファイル。
<Custom> の場合各要素は、
|
<ExpirationTime> | Optional | DateTime | 料金の有効期限が切れたとみなされる日時。この
要素の構文は、
<Result> 内の <ExpirationTime> 。 |
<Occupancy> | Optional | integer | この料金で許可される最大宿泊人数を指定します。回答が「いいえ」の場合
親レートと同じとみなされます。
|
<OtherFees> | Required | float | 最終料金に影響する基本料金と税金以外の手数料
できます。この要素の構文は、
<Result> 内の <OtherFees> 。
|
<Refundable> | Optional | Object | 全額払い戻し可能または無料の料金を提示できます
キャンセルします。指定しない場合、払い戻しに関する情報は表示されません。
<PackageData> レベルの払い戻しポリシーは、払い戻しポリシーよりも優先されます。
<Result> レベルです。<Rates> レベルの払い戻しポリシーはオーバーライドされる
<PackageData> レベルでの払い戻しポリシー。払い戻し可能な料金設定では
代替オプションを通じてユーザーにも
トランザクションメッセージスキーマを変更しますこれらのオプションの詳細
払い戻し可能な料金に関するポリシー
次の例は、 <Refundable available="1" refundable_until_days="7" refundable_until_time="18:00:00"/> 注: すべての属性を設定することをおすすめします。フィード ステータスに関する警告メッセージが、1 つ以上の属性が 未設定。 属性を設定しない場合、レートは 払い戻しが可能です。属性は次のとおりです。
属性を設定する際は、次の点に注意してください。
|
<Tax> | Required | float | 最終的な客室の料金に対して計算される税金。この
要素の構文は <Tax> と同じです。
<Result> 。 |
例
基本レートと限定価格
次の例は、基本料金を含むトランザクション メッセージを示しています。 限定価格の場合:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">200.00</Baserate>
<Tax currency="USD">20.00</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<Rates>
<!-- The rate_rule_id is required when using conditional rates -->
<Rate rate_rule_id="mobile">
<!-- Override base rate and taxes for conditional rates -->
<Baserate currency="USD">180.00</Baserate>
<Tax currency="USD">18.00</Tax>
<!-- NOTE: OtherFees is inherited from the above setting -->
<Custom1>ratecode123</Custom1>
</Rate>
</Rates>
</Result>
</Transaction>
複数の限定価格
次の例では、基本料金と複数の限定価格を定義しています
<RoomBundle>
内:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>2</Nights>
<!-- When Google receives new room bundle information for an itinerary, all
previous room bundle pricing is dropped from Google's cache. Thus, if you
want to delete a specific room bundle from Google's cache, you may do so
by simply not providing that specific room bundle in subsequent transaction
messages. -->
<RoomBundle>
...
<!-- RoomID is required, PackageID is recommended. -->
<RoomID>5</RoomID>
<PackageID>ABC</PackageID>
<!-- Baserate is required. -->
<Baserate currency="USD">275.00</Baserate>
<Tax currency="USD">27.50</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<!-- RatePlanID is optional and represents the unique identifier for a
room and package data combination. We strongly recommend using RatePlanID
as a variable to build your dynamic landing page (formerly Point of Sale)
URL. For details, see Using Variables and Conditions. -->
<RatePlanID>5-ABC</RatePlanID>
<!-- Occupancy is mandatory for RoomBundle elements. -->
<!-- Elements below will get inherited to nested rate elements. -->
<Occupancy>2</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
</OccupancyDetails>
<InternetIncluded>1</InternetIncluded>
<!-- Rate rule "mobile" overrides chargeCurrency, "us_or_gb" doesn't. -->
<ChargeCurrency>web</ChargeCurrency>
<Custom1>ratebasic</Custom1>
<!-- Neither rate overrides Custom2. -->
<Custom2>ratebasic</Custom2>
<Rates>
<Rate rate_rule_id="mobile">
<Baserate currency="USD">258.33</Baserate>
<Tax currency="USD">25.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<!-- The value below overrides ChargeCurrency from roombundle. -->
<ChargeCurrency>hotel</ChargeCurrency>
<!-- The value below overrides Custom1 from roombundle. -->
<Custom1>ratecode321</Custom1>
<!-- Custom2 is inherited from roombundle. -->
</Rate>
<Rate rate_rule_id="us_or_gb">
<Baserate currency="USD">268.33</Baserate>
<Tax currency="USD">26.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<!-- The value below overrides Custom1 from roombundle. -->
<Custom1>ratecode432</Custom1>
<!-- Custom2 is inherited from roombundle. -->
</Rate>
</Rates>
</RoomBundle>
</Result>
</Transaction>
<RoomBundle>
条件の組み合わせの料金と空室情報を
<Transaction>
メッセージの <Result>
。イベントごとに個別の要素を定義する
パッケージまたは旅行プランの組み合わせですパッケージと利用規約を定義するには、
条件の組み合わせ: <RoomData>
を使用します。
<RoomBundle>
要素は、ファイルの次の場所に表示されます。
トランザクション メッセージの XML 階層:
+<Transaction>
+<PropertyDataSet>
// Room and package metadata + <Property> +<RoomData>
+<PackageData>
+<Result>
// Pricing and availability +<Rates>
+<RoomBundle>
+ ...
詳しくは、条件の組み合わせを使用するをご覧ください。
構文
<RoomBundle>
要素の構文は次のとおりです。
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <Result> ... <RoomBundle> <!-- Required unless specified inline under<RoomData>
--> <RoomID>room_ID</RoomID> <!-- Required<PackageData>
--> <PackageID>package_ID</PackageID> <!-- Required --> <Baserate currency="currency_code">price</Baserate> <!-- Required --> <Tax currency="currency_code">taxes</Tax> <!-- Required --> <OtherFees currency="currency_code">other_fees</OtherFees> <Refundable available="[false|true]" refundable_until_days="number_of_days" refundable_until_time="time"/> <!-- Required --> <ChargeCurrency>[deposit|hotel|installments|web]</ChargeCurrency> <Occupancy>max_number_of_intended_occupants</Occupancy> <OccupancyDetails> <!-- optional info about the types of guests, whether adults or children --></OccupancyDetails> <BreakfastIncluded>boolean_value</BreakfastIncluded> <InternetIncluded>boolean_value</InternetIncluded> <ParkingIncluded>boolean_value</ParkingIncluded> <RatePlanID>rate_plan_ID</RatePlanID> <Rates>...</Rates> <Custom1>custom_value_1</Custom1> <Custom2>custom_value_2</Custom2> <Custom3>custom_value_3</Custom3> <Custom4>custom_value_4</Custom4> <Custom5>custom_value_5</Custom5> </RoomBundle> ... </Result> </Transaction>
属性
<RoomBundle>
要素には属性はありません。
子要素
<RoomBundle>
要素には次の子要素があります。
子要素 | 必須 | 型 | 説明 |
---|---|---|---|
<Baserate> | Required | float | 宿泊時の条件の組み合わせの料金を定義します。この要素では
<Result> の <Baserate> と同じ構文ですが、
次の例外があります。
<ph type="x-smartling-placeholder">
|
<BreakfastIncluded> | Optional | boolean | この条件の組み合わせの料金に朝食が含まれるかどうかを指定します。 |
<ChargeCurrency> | Optional | enum | ユーザーがいつ、どこで予約を支払うか。この要素では、
<Result> で <ChargeCurrency> のような構文を使用します。
デフォルト値は |
<Custom[1‑5]> | Optional | string | 追加のデータをランディング ページに渡すためのカスタム フィールド
条件の組み合わせによって異なりますこれらの要素の構文は、
<Result> の <Custom[1-5]> 。200 個という上限があります
最大文字数までです詳細については、このモジュールの
ランディング ページ ファイル:
<Custom> の場合各要素は、
|
<InternetIncluded> | Optional | boolean | 条件の組み合わせに無料のインターネット アクセスが含まれている場合、 他のバンドルにはそのアメニティが含まれません設定しない 要素を使用して、すべてのユーザーに無料のインターネット接続を提供する あります。この要素は、室内の有線インターネットまたはワイヤレスには適用されません 客室ではインターネットを利用できません。 |
<Occupancy> | Required | integer | この料金で許可される最大宿泊人数を指定します。たとえば、
大きなスイートは物理的に 6 名まで収容できる可能性がありますが、
"ハネムーン パッケージ"宿泊客は 2 名まで。
この値は
ランディング ページ URL で宿泊人数を定義する場合は、
注:
|
<OtherFees> | Required | float | 基本料金と税金以外の手数料
決定します<OtherFees> 要素は、
単一の必須属性 currency で、
料金の 3 文字の通貨コード。たとえば、
USD は米ドルです。 |
<PackageID> | Optional (recommended) | string | パッケージ データの一意の ID。この ID を使用して
条件の組み合わせデータと <PackageData> で送信された内容が含まれます。対象
詳しくは、このモジュールの
部屋
バンドル メタデータ。(
また、この ID を使用して、使用される共通の条件の組み合わせ定義を参照することもできます。
条件の組み合わせデータを定義するときに 1 つのトランザクション メッセージに含める
inline.) |
<ParkingIncluded> | Optional | boolean | 条件の組み合わせに無料の駐車場が含まれるかどうか、
駐車場以外は、このホテルの有料サービスとなります。指定しない
無料駐車場があるホテルの場合は、この要素の値を指定します。
有効な値は |
<RatePlanID> | Optional | string | 料金プラン ID は、各プランに固有の識別子を
組み合わせたものです。たとえば、
<RoomID> の値が 5 で
<PackageID> の値を ABC とした場合、
<RatePlanID> の 5-ABC。使用することを強く推奨します
動的なランディング ページを作成するための変数として RatePlanID を指定する
(旧称 POS)の URL を入力します。
詳細については、このモジュールの 変数と 条件。 |
<Rates> | Optional | <Rates> |
この条件の組み合わせのデフォルトをオーバーライドする料金。この
要素の構文は <Result> の <Rates> と同じです。 |
<Refundable> | Optional | Object | 全額払い戻し可能または無料の料金を提示できます
キャンセルします。指定しない場合、払い戻しに関する情報は表示されません。
<PackageData> レベルの払い戻しポリシーは、
<Result> レベル。<Rates> レベルの払い戻しポリシーはオーバーライドされる
<PackageData> レベルでの払い戻しポリシー。払い戻し可能な料金設定では
代替オプションを通じてユーザーにも
トランザクションメッセージスキーマを変更しますこれらのオプションの詳細
払い戻し可能な料金に関するポリシー
次の例は、 <Refundable available="1" refundable_until_days="7" refundable_until_time="18:00:00"/> 注: すべての属性を設定することをおすすめします。フィード ステータスに関する警告メッセージが、1 つ以上の属性が 未設定。 属性を設定しない場合、レートは 払い戻しが可能です。属性は次のとおりです。
属性を設定する際は、次の点に注意してください。
|
<RoomID> | Required | string | 客室データの一意の ID。この ID を使用して
条件の組み合わせデータと、<RoomData> で送信した内容が関連付けられます。
詳細については、このモジュールの
<ph type="x-smartling-placeholder"></ph>
条件の組み合わせのメタデータ。(この ID を使用して
1 つのトランザクション メッセージで共通のルーム定義を
インラインで編集することもできます)。 |
<Tax> | Required | float | 最終的な客室の料金に対して計算される税金。
<Tax> 要素では、単一の必須属性を指定します。
currency : 3 文字の通貨コードを定義します
税の金額です。たとえば、米ドルの場合は USD を使用します。 |
例
1 人部屋の一括販売
次の例では、1 つの宿泊人数バンドルを含むレスポンスを定義しています。
ユーザーが定員選択ツールで 1
を選択すると、最も低い料金が表示されます。
料金が適用されます。
1 人分の宿泊料金がない場合、Google は 最安値でした。1 人部屋の宿泊料金は、 2 人部屋またはそれ以上の料金がキャッシュされている場合にライブ クエリが行われます。 選択します。
この例では、事前定義された客室とパッケージのメタデータを参照しています。
<RoomID>
要素と <PackageID>
要素。<RoomData>
と
<PackageData>
要素で情報を定義します。
<!-- Efficient method of defining Room Bundles-->
<!----- Occupancy of 1 example ----->
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="12345678">
<!-- Part1: Define RoomData and PackageData in PropertyDataSet -->
<!-- Note: Once defined it does not have to be repeated for future
Transaction Messages.
PropertyDataSets can also be defined and sent in their own
Transaction Message separately from pricing. Google can be
configured to pull just PropertyDataSets once per day
(or on a predefined frequency). -->
<PropertyDataSet>
<Property>180054</Property>
<!-- Can be reused by multiple Room Bundles -->
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Queen Room - Non-Smoking" language="en"/>
<Text text="Chambre de la Roi Premium - Pas de Fumeurs" language="fr"/>
</Name>
<!-- Room can accommodate up to 4, but package data specifies occupancy
between 1 to 4 -->
<Capacity>4</Capacity>
</RoomData>
<RoomData>
<RoomID>436233</RoomID>
<Name>
<Text text="Premium King Room - Non-Smoking" language="en"/>
<Text text="Chambre de le Roi Premium - Pas de Fumeurs" language="fr"/>
</Name>
<Capacity>4</Capacity>
</RoomData>
<!-- Can be reused by multiple Room Bundles -->
<PackageData>
<PackageID>P11111</PackageID>
<Occupancy>1</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="7"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
<PackageData>
<PackageID>P54321</PackageID>
<Occupancy>2</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="7"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
<PackageData>
<PackageID>P12345</PackageID>
<Occupancy>4</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="1"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
</PropertyDataSet>
<!-- Efficient method of defining Room Bundles -->
<!-- Part 2: Reference RoomData and PackageData through ID -->
<Result>
<!-- Single occupancy pricing will be specified in a room bundle below -->
<Property>180054</Property>
<Checkin>2017-10-07</Checkin>
<Nights>2</Nights>
<!-- Base Room Bundle -->
<RoomBundle>
<RoomID>060773</RoomID>
<PackageID>P54321</PackageID>
<Baserate currency="USD">199.99</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RatePlanID>060773-P54321</RatePlanID>
</RoomBundle>
<RoomBundle>
<RoomID>060773</RoomID>
<PackageID>P11111</PackageID>
<!-- Price for 1 ("occupancy") is the lowest price and will be
displayed -->
<Baserate currency="USD">174.99</Baserate>
<Tax currency="USD">22.08</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RatePlanID>060773-P11111</RatePlanID>
</RoomBundle>
<!-- Premium Room Bundle -->
<RoomBundle>
<RoomID>436233</RoomID>
<PackageID>P12345</PackageID>
<!-- Price for 4 ("occupancy"), any eligible room bundle with 1 or more
occupancy will be displayed-->
<Baserate currency="USD">298.88</Baserate>
<Tax currency="USD">42.12</Tax>
<OtherFees currency="USD">10.00</OtherFees>
<RatePlanID>436233-P12345</RatePlanID>
</RoomBundle>
<!-- ..Continue providing all available RoomBundle rates under matched
property for 1 or more occupancies..-->
</Result>
</Transaction>
定員 2 人以上
次の例では、2 つ以上の定員を含むレスポンスを定義しています。
この例では、事前定義された客室とパッケージのメタデータを参照しています。
<RoomID>
要素と <PackageID>
要素。<RoomData>
と
<PackageData>
要素で情報を定義します。
<!-- Efficient method of defining Room Bundles-->
<!----- Occupancy of 3 example ----->
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="12345678">
<!-- Efficient method of defining Room Bundles-->
<!-- Part1: Define RoomData and PackageData in PropertyDataSet -->
<PropertyDataSet>
<Property>180054</Property>
<!-- Can be reused by multiple Room Bundles -->
<RoomData>
<RoomID>060773</RoomID>
<Name>
<Text text="Single Queen Room - Non-Smoking" language="en"/>
<Text text="Chambre de la Roi Premium - Pas de Fumeurs" language="fr"/>
</Name>
<!-- Room can accommodate up to 4, but package data specifies occupancy
between 1 to 4 -->
<Capacity>4</Capacity>
</RoomData>
<RoomData>
<RoomID>436233</RoomID>
<Name>
<Text text="Premium King Room - Non-Smoking" language="en"/>
<Text text="Chambre de le Roi Premium - Pas de Fumeurs" language="fr"/>
</Name>
<Capacity>4</Capacity>
</RoomData>
<!-- Can be reused by multiple Room Bundles -->
<PackageData>
<PackageID>P33333</PackageID>
<Occupancy>3</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="7"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
<PackageData>
<PackageID>P12345</PackageID>
<Occupancy>4</Occupancy>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="1" refundable_until_days="1"
refundable_until_time="18:00:00"/>
<ParkingIncluded>1</ParkingIncluded>
<InternetIncluded>1</InternetIncluded>
</PackageData>
</PropertyDataSet>
<Result>
<Property>180054</Property>
<Checkin>2017-10-07</Checkin>
<Nights>2</Nights>
<!-- Efficient method of defining Room Bundles -->
<!-- Part 2: Reference RoomData and PackageData through ID -->
<!-- Base Room Bundle -->
<RoomBundle>
<!-- Baserate above and attributes must match atleast one room bundle
below -->
<RoomID>060773</RoomID>
<PackageID>P33333</PackageID>
<Baserate currency="USD">499.99</Baserate>
<Tax currency="USD">55.12</Tax>
<OtherFees currency="USD">22.00</OtherFees>
</RoomBundle>
<!-- Premium Room Bundle -->
<RoomBundle>
<RoomID>436233</RoomID>
<PackageID>P12345</PackageID>
<!-- Lowest price for 3 ("occupancy"), shown below, will be displayed -->
<Baserate currency="USD">598.88</Baserate>
<Tax currency="USD">62.12</Tax>
<OtherFees currency="USD">30.00</OtherFees>
</RoomBundle>
<!-- ..Continue providing all available RoomBundle rates under matched
property for 2 or more occupancies..-->
</Result>
</Transaction>
複数の条件の組み合わせ
次の例では、複数の条件の組み合わせに定員を設定してもらっています。 提示できます。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction ... >
<Result>
...
<!-- Suite Room Bundle -->
<RoomBundle>
<RoomID>suite1</RoomID>
<PackageID>standard</PackageID>
<Occupancy>2</Occupancy>
<!-- Price for room -->
<Baserate currency="USD">80.00</Baserate>
<Tax currency="USD">5.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RoomData>
<Name>
<Text text="Suite for 2" language="en"/>
</Name>
</RoomData>
</RoomBundle>
<!-- Small Dorm Room Bundle -->
<RoomBundle>
<RoomID>small_dorm</RoomID>
<PackageID>economy</PackageID>
<Occupancy>1</Occupancy>
<!-- Price per bed -->
<Baserate currency="USD">35.00</Baserate>
<Tax currency="USD">3.50</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RoomData>
<Name>
<Text text="1 bed in small dorm" language="en"/>
</Name>
</RoomData>
</RoomBundle>
<!-- Large Dorm Room Bundle -->
<RoomBundle>
<RoomID>large_dorm</RoomID>
<PackageID>economy</PackageID>
<Occupancy>1</Occupancy>
<!-- Price per bed -->
<Baserate currency="USD">20.00</Baserate>
<Tax currency="USD">2.50</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<RoomData>
<Name>
<Text text="1 bed in large dorm" language="en"/>
</Name>
</RoomData>
</RoomBundle>
...
</Result>
</Transaction>
複数の限定価格
次の例では、基本料金と複数の限定価格を定義しています
<RoomBundle>
内:
<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2023-04-10</Checkin>
<Nights>2</Nights>
<!-- When Google receives new room bundle information for an itinerary, all
previous room bundle pricing is dropped from Google's cache. Thus, if you
want to delete a specific room bundle from Google's cache, you may do so
by simply not providing that specific room bundle in subsequent transaction
messages. -->
<RoomBundle>
...
<!-- RoomID is required, PackageID is recommended. -->
<RoomID>5</RoomID>
<PackageID>ABC</PackageID>
<!-- Baserate is required. -->
<Baserate currency="USD">275.00</Baserate>
<Tax currency="USD">27.50</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<!-- RatePlanID is optional and represents the unique identifier for a
room and package data combination. We strongly recommend using RatePlanID
as a variable to build your dynamic landing page (formerly Point of Sale)
URL. For details, see Using Variables and Conditions. -->
<RatePlanID>5-ABC</RatePlanID>
<!-- Occupancy is mandatory for RoomBundle elements. -->
<!-- Elements below will get inherited to nested rate elements. -->
<Occupancy>2</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
</OccupancyDetails>
<InternetIncluded>1</InternetIncluded>
<!-- Rate rule "mobile" overrides chargeCurrency, "us_or_gb" doesn't. -->
<ChargeCurrency>web</ChargeCurrency>
<Custom1>ratebasic</Custom1>
<!-- Neither rate overrides Custom2. -->
<Custom2>ratebasic</Custom2>
<Rates>
<Rate rate_rule_id="mobile">
<Baserate currency="USD">258.33</Baserate>
<Tax currency="USD">25.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<!-- The value below overrides ChargeCurrency from roombundle. -->
<ChargeCurrency>hotel</ChargeCurrency>
<!-- The value below overrides Custom1 from roombundle. -->
<Custom1>ratecode321</Custom1>
<!-- Custom2 is inherited from roombundle. -->
</Rate>
<Rate rate_rule_id="us_or_gb">
<Baserate currency="USD">268.33</Baserate>
<Tax currency="USD">26.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<!-- The value below overrides Custom1 from roombundle. -->
<Custom1>ratecode432</Custom1>
<!-- Custom2 is inherited from roombundle. -->
</Rate>
</Rates>
</RoomBundle>
</Result>
</Transaction>
<OccupancyDetails>
トランザクション メッセージ内の <Occupancy>
には、ゲストの最大数を指定します。
割り当てることができます。<OccupancyDetails>
には追加情報を含めることができます
宿泊客の人数や種類(大人または子供)など、さまざまな情報が含まれています。
<Occupancy>
と <OccupancyDetails>
が <Rates>
要素内に表示される場合
<Result>
または <RoomBundle>
の場合は、レートが次によって制限されている
宿泊人数の詳細です
構文
<OccupancyDetails>
の前には、常に <Occupancy>
が付きます。
次の構文に注意してください。
<?xml version="1.0" encoding="UTF-8"?> <Transaction ... > <Result> ... <Occupancy>max_number_of_intended_occupants</Occupancy> <OccupancyDetails> <NumAdults>number_of_adults</NumAdults> <Children> <Child age=age_of_one_child_guest/> <Child age=age_of_one_child_guest/> </Children> </OccupancyDetails> </Result> </Transaction>
子要素
<OccupancyDetails>
要素には次の子要素があります。
子要素 | 必須 | 型 | 説明 |
---|---|---|---|
<NumAdults> | Required | integer | 大人の宿泊客の人数。最小 1、最大 20。 |
<Children> | Optional | Object | 1 つ以上の <Child> 要素のコンテナ。 |
<Child age> | Optional | integer | この子の最長年齢(例: <Child age="17"> )。 |
例
次の例は、<OccupancyDetails>
がファイル内でどのように表示されるかを示しています。
<Results>
、<RoomBundle>
、または <Rates>
子要素。
結果のレスポンス
次の例では、1 つの旅行プランと 1 つの旅行プランの料金を定義しています
ライブ料金クエリに対するレスポンスで、ユーザーが
ゲストの数とタイプ。<OccupancyDetails>
-- 大人 2 人と
1 つの子が <Result>
に返されます。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-23T16:20:00-04:00" id="42">
<Result>
<Property>060773</Property>
<RoomID>RoomType101</RoomID>
<PackageID>Package101</PackageID>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">278.33</Baserate>
<Tax currency="USD">25.12</Tax>
<OtherFees currency="USD">2.00</OtherFees>
<AllowablePointsOfSale>
<PointOfSale id="site1"/>
</AllowablePointsOfSale>
<Occupancy>3</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
<Children>
<Child age="17"/>
</Children>
</OccupancyDetails>
</Result>
</Transaction>
評価のレスポンス
次の例では、1 つの旅行プランとその料金(大人 1 人)を定義しています
と子供 1 人。ここでは、<OccupancyDetails>
が <Rates>
の
<Result>
の要素。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Transaction id="Wtdj8QoQIWcAAbaTGlIAAAC4" timestamp="2018-04-18T11:27:45-04:00">
<Result>
<Property>8251</Property>
<Checkin>2018-06-20</Checkin>
<Nights>1</Nights>
<Baserate currency="USD">62.18</Baserate>
<Tax currency="USD">2.45</Tax>
<OtherFees currency="USD">0.00</OtherFees>
<Rates>
<Rate rate_rule_id="rule-951">
<Occupancy>2</Occupancy>
<OccupancyDetails>
<NumAdults>1</NumAdults>
<Children>
<Child age="17"/>
</Children>
</OccupancyDetails>
<Baserate currency="USD">42.61</Baserate>
<Tax currency="USD">5.70</Tax>
<OtherFees currency="USD">0.00</OtherFees>
<Custom1>abc4</Custom1>
<AllowablePointsOfSale>
<PointOfSale id="yourhotelpartnersite.com"/>
</AllowablePointsOfSale>
</Rate>
</Rates>
</Result>
</Transaction>
条件の組み合わせ
次の例では、大人 2 人と子供 1 名の宿泊人数を
2 泊で利用できましたここでは、<OccupancyDetails>
が表示されます。
<RoomBundle>
の中
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-23T16:20:00-04:00" id="42">
<Result>
<Property>6781291</Property>
<Checkin>2017-08-05</Checkin>
<Nights>2</Nights>
...
<RoomBundle>
<RoomID>10291</RoomID>
<RatePlanID>564739</RatePlanID>
<PackageID>564739</PackageID>
<Occupancy>3</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
<Children>
<Child age="17"/>
</Children>
</OccupancyDetails>
<ChargeCurrency>web</ChargeCurrency>
<Refundable available="true" refundable_until_days="1" refundable_until_time="23:59:00" />
<Baserate currency="USD">185.34</Baserate>
<Tax currency="USD">37.06</Tax>
<OtherFees currency="USD">2.22</OtherFees>
</RoomBundle>
</Result>
</Transaction>
複数の条件の組み合わせ
次の例では、複数の <RoomBundle>
料金を定義しています。
最大宿泊人数は大人 2 人と子供 2 人です。ここでは、
<OccupancyDetails>
は、<RoomBundle>
の <Rates>
要素に含まれます。
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<Result>
<Property>1234</Property>
<Checkin>2018-06-10</Checkin>
<Nights>2</Nights>
<Baserate currency="USD">275.00</Baserate>
<Tax currency="USD">27.50</Tax>
<OtherFees currency="USD">0</OtherFees>
<RoomBundle>
<RoomID>5</RoomID>
<PackageID>STD</PackageID>
<Baserate currency="USD">275.00</Baserate>
<Tax currency="USD">27.50</Tax>
<OtherFees currency="USD">0</OtherFees>
<InternetIncluded>1</InternetIncluded>
<ChargeCurrency>web</ChargeCurrency>
<Custom1>ratebasic</Custom1>
<Custom2>ratebasic</Custom2>
<Occupancy>4</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
<Children>
<Child age="17"/>
<Child age="17"/>
</Children>
</OccupancyDetails>
<Rates>
<Rate rate_rule_id="mobile">
<Baserate currency="USD">258.33</Baserate>
<Tax currency="USD">25.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<ChargeCurrency>hotel</ChargeCurrency>
<Custom1>ratecode321</Custom1>
</Rate>
<Rate rate_rule_id="us_or_gb">
<Baserate currency="USD">268.33</Baserate>
<Tax currency="USD">26.83</Tax>
<OtherFees currency="USD">1.00</OtherFees>
<Custom1>ratecode432</Custom1>
</Rate>
</Rates>
</RoomBundle>
</Result>
</Transaction>