条件の組み合わせ

条件の組み合わせを使用すると、1 つの宿泊施設に対して複数の客室タイプを定義できます。 客室の旅行プランと料金機能(追加サービス)を 標準を超える販売レートや条件をユーザーに提供 提供します。

主なコンセプトとワークフロー

条件の組み合わせを使用すると、物理的な客室タイプの組み合わせを追加できます さまざまなサービスパッケージで 利用できます

次の図は、条件の組み合わせの例を示しています。

この例では、最初のセットは基本の客室で、割引が適用されるのは 1 つの部屋のみです。 大人の同居人には必要です。2 つ目は別の部屋タイプで 大人 3 人の宿泊人数に3 つ目は、同じ組織内の別の客室タイプです。 プロパティです。4 つ目は「プレミアム」ですベースルームのパッケージです。 無料の朝食やレイト チェックアウトなどのサービスも利用できる。

次の図は、料金の特徴の例を示しています。

条件の組み合わせと料金に関する機能を検索結果に表示するかどうかは、 標準の客室料金と同じ方法で選択されます。

条件の組み合わせ

条件の組み合わせと料金機能は、トランザクション メッセージで定義します。ルート トランザクション メッセージの要素は <Transaction> です。

Transaction メッセージの構造は、実行する処理によって異なります。 条件の組み合わせや料金機能に関するメタデータの定義、 条件の組み合わせの料金または空室状況。

メタデータ
条件の組み合わせと料金機能のメタデータを <PackageData> を使用して <PropertyDataSet> 要素を使用します。詳しくは、会議室と パッケージ メタデータ。条件の組み合わせでは既存の <RoomData> 要素を使用します 説明しました
料金と空室状況
<RoomBundle> 要素で条件の組み合わせの料金と空室状況を定義する パッケージ/旅行プランの組み合わせごとに <Result> に格納します。詳細 詳しくは、料金と空室状況を定義するをご覧ください。

基本客室の料金、税金、その他の手数料が必須要件 <Result>(条件の組み合わせで使用されていない場合)、次の場合に削除できます 条件の組み合わせで使用できますライブルールを使って条件の組み合わせを実装する場合、 手順は次のとおりです。

  1. 基本客室の料金、税金、その他の手数料を <Result> 以下に記載してください。 基本条件の組み合わせと一致する条件の組み合わせを 1 つ追加します。

  2. 必要に応じて、同じ <Result> ブロック内で追加の条件の組み合わせを定義します。 その宿泊施設の他の客室タイプや異なるサービス パッケージについて確認できます。

  3. 条件の組み合わせが開始されたら、基本客室の料金、税金、 かかる可能性があります。

条件の組み合わせのメタデータ

条件の組み合わせと料金機能を定義する際は、通常、 説明、料金に含まれる追加サービス、その他の 事前に条件の組み合わせに関する情報を入手できます。この情報は 条件の組み合わせのメタデータ。次に、このメタデータを参照して、 料金更新メッセージに含めないでください。

条件の組み合わせを定義する際は、条件の組み合わせに対して既存の <RoomData> 要素を使用します。 物理的な客室の説明と料金対象物の <PackageData> 要素 会議室の物理的な説明に含まれない用語や用語を検索できます。

<RoomData> 要素と <PackageData> 要素を使用すると、 ホテルリストとホテル料金のサイズを小さくする フィードは、 トランザクション メッセージで送信される繰り返しデータの量。

たとえば、部屋の名前や説明などのデータは一般に 自動的に設定されます<RoomData><PackageData> を使用できます。 要素を使用して、このタイプのデータを一度定義します。旅行プラン固有の条件の組み合わせデータ 保存された客室およびパッケージの定義と結合され、 あります。

Google はお客様のメタデータと旅行プラン固有のデータを照合して、 自動的に適用されます。名前とメタデータの組み合わせには特別な処理が <RoomData> 要素と <PackageData> 要素から説明を取得し、 <RoomData> で記述される実際の客室、料金機能、 パッケージの詳細が <PackageData> にある。

1 つの客室または Room に客室データとパッケージ データの両方を定義した場合 Bundle の場合、Google は両方をハイフンで区切って広告出力に含めます。

写真に関するガイドライン

客室の写真を送信する際のガイドラインは次のとおりです。 写真がユーザーに表示されるようにします。

  • 各客室タイプの写真(バリアフリーの写真を含む)を送信する 部屋(さまざまな浴室を備えた、指定されたバリアフリーの部屋など) シャワー室などの設備を充実させようとします。

  • 部屋の写真 4 枚以上と、 浴室。

  • 写真は、宿泊施設の写真ではなく、部屋の写真を使用する必要があります。最も ベッド、部屋全体、浴室、リビング スペース、 部屋からの眺め(他の部屋も同じ写真に写っています) (該当する場合は、バルコニー、パティオ、テラス)で撮影します。

    デスクやキッチン、コーヒーメーカー、 客室の特徴などです

  • 人物や財産(外観や施設など)の写真は使用しないでください 観光や観光、食事などのサービスを提供しています。

  • 脚付きグラスのクローズアップなど、被写体のクローズアップ写真は避けてください。

  • ブランド名やブランド名は避ける。ただし、ブランド名やブランド名が入ったアメニティは、 浴室エリア全体を撮影した写真に含める必要があります。写真 長いテキスト、ロゴ、透かしを入れないでください。

  • 画角の広い、標準的な横向きの写真 魚眼レンズや歪んだ写真は避けましょう。最高の解像度で写真を撮影する おすすめします同じ写真をさまざまな色で送信する必要はありません。 解決します。

データの優先度

条件の組み合わせデータはすべてのソースから収集され、優先順位に基づいて結合されます 特定のホテル、旅行プラン、条件の組み合わせの最終データを生成します。 優先順位が低いものから高いものの順に、次の順序で並べられています。

  1. (最小)パートナー データ
  2. 宿泊施設データ
  3. <RoomData>。ここで、<RoomID><RoomID> <RoomBundle> ブロック
  4. <PackageData>。ここで、<PackageID><PackageID> <RoomBundle> ブロック
  5. (最高)<RoomBundle>

料金と空室状況を定義する

条件の組み合わせの料金と空室状況を定義するには、<RoomBundle> 要素を 各パッケージまたは旅行プランの組み合わせに対するトランザクション メッセージ。「 <RoomBundle> 要素は <Result> 要素内に含める必要があります。サンプルコード 2 つの <RoomBundle> 要素に対する構成を以下に示します。この例では、 2 つの <RoomBundle> 要素が客室とパッケージのメタデータを参照する <RoomID><PackageID>

<Result> ごとに、含まれている条件の組み合わせのセットによって その宿泊施設または旅行プランの組み合わせの既存のセットを取得します。ラベルを <Result> 要素内の条件の組み合わせまたは料金機能、その次にすべての客室 条件の組み合わせが削除され、そのホテルや旅行プランの基本的な客室のみが表示される 表示されます。

条件の組み合わせをわかりやすくするために、<Name> などの要素を使用してください 見込み顧客を惹きつけるようなホテルの ランディングページを選びます できます。この例では、名前などの説明的な情報を定義します。 あります。

<RatePlanID> は省略可能で、客室の一意の識別子を表します。 パッケージの組み合わせです。レートプラン ID を変数として使用し、 動的なランディング ページ(旧 POS)の URL を作成します。詳しくは、 変数と条件の使用

条件の組み合わせでは、次の要素は省略可能です。

<Baserate>
<Tax>
<OtherFees>
<RoomID>
<PackageID>
<Occupancy>
<OccupancyDetails>

ライブ アカウントに条件の組み合わせを実装する場合、<Baserate> の後に 条件の組み合わせが有効になっています。

<Result>
  <!-- Note: When using Room Bundles, the top level result price is no
       longer necessary. -->
  <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 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>060773-P54321</RatePlanID>
  </RoomBundle>
  <!-- Premium Room Bundle -->
  <RoomBundle>
    <RoomID>436233</RoomID>
    <PackageID>P12345</PackageID>
    <!-- Price for 4 ("occupancy") -->
    <Baserate currency="USD">298.88</Baserate>
    <Tax currency="USD">42.12</Tax>
    <OtherFees currency="USD">10.00</OtherFees>
    <RatePlanID>436233-P12345</RatePlanID>
  </RoomBundle>
</Result>

客室とパッケージのメタデータを定義する

条件の組み合わせのメタデータを定義するには、<PackageData> 要素と <RoomData> 要素を使用します。 トランザクション メッセージの <PropertyDataSet> 要素内。

客室とパッケージのメタデータは、 料金と空室状況のデータとは別のものです。これを定義することで、 料金更新の際に繰り返しの繰り返しを含める必要も 写真の説明、写真の URL、設備、その他のデータなど、 すべての旅行プランのすべての客室やパッケージに 料金を支払います

メタデータは Google によって保存され、広告が表示されるときに広告に挿入されます 表示されます。客室とパッケージのメタデータは、 トランザクション メッセージ。

トランザクション メッセージでは、ブロックごとにパッケージ ID と客室 ID を設定しました。 これを料金更新の <Result> ブロックで参照できます。

客室とパッケージのデータが変更された場合(新しい客室を追加した場合など) 新しい Transaction メッセージを送信して、 更新された客室とパッケージのデータ - Google によって、 新しいデータが含まれる客室またはパッケージです。

初期設定時にメタデータを定義することをおすすめします。変更後 メタデータを事前に定義している場合、必要な操作は、<RoomID> と 価格に <PackageID> の値が含まれている すべて含めるのではなく、 確認できます。Google はこれらの ID を使用して客室と条件の組み合わせを照合します 基づいて取得されます。これにより、キャンペーン全体のサイズを大幅に トランザクション メッセージ。

客室または旅行プランの組み合わせの料金は、より頻繁に変更されるため メタデータを 1 回だけ定義してから、 トランザクション メッセージをより効率的に使用できます。またエラーは 不一致の問題を排除するには、メタデータを使用して 行わなければなりません

メタデータと料金を定義するために推奨される最も効率的な方法 別個に示しています。

<!-- Efficient method of defining Room Bundles -->
<!----- Occupancy of 2 and 4 example ------>

<Transaction timestamp="2019-04-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 4, but bundle is for 2 -->
      <Capacity>4</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/imageQueen.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>
    </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>
      <!-- Room can accommodate 4 and bundle is for 4 -->
      <Capacity>4</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/imageKing.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>
    </RoomData>
    <!-- Can be reused by multiple Room Bundles -->
    <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"/>
      <BreakfastIncluded/>
      <ParkingIncluded>1</ParkingIncluded>
      <InternetIncluded>1</InternetIncluded>
    </PackageData>
  </PropertyDataSet>

    <!-- Efficient method of defining Room Bundles -->
    <!-- Part 2: Reference RoomData and PackageData through ID -->
  <Result>
    <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 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>060773-P54321</RatePlanID>
    </RoomBundle>
    <!-- Premium Room Bundle -->
    <RoomBundle>
      <RoomID>436233</RoomID>
      <PackageID>P12345</PackageID>
      <!-- Price for 4 ("occupancy") -->
      <Baserate currency="USD">298.88</Baserate>
      <Tax currency="USD">42.12</Tax>
      <OtherFees currency="USD">10.00</OtherFees>
      <RatePlanID>060773-P12345</RatePlanID>
    </RoomBundle>
    <!-- Continue providing all available RoomBundle rates under matched
         property for any other occupancies -->
  </Result>
</Transaction>

占有率と収容人数

条件の組み合わせを定義する際は、条件の組み合わせと occupancycapacity:

利用率
条件の組み合わせの適用対象となる宿泊客の数。たとえば 「ハネムーン パッケージ」定員が 2 名である。ここで、 パッケージの占有率(<PackageData> 要素または <RoomBundle> 要素を使用) <Occupancy> 子要素。
容量
客室が物理的に収容できる最大人数。「 客室の定員は常に定員以上です。対象 たとえば “ハネムーンスイート”最大収容人数が 6 人の場合 宿泊人数が 2 人の場合の 1 つのセット料金を提示します。ここで、 パッケージの容量(<RoomData> 要素の <Capacity> 子を使用) 要素です。

条件の組み合わせの料金設定では、宿泊客の人数に対する料金を指定する必要があります (バンドルの <Occupancy> 要素)。<Occupancy> が 2 に設定されている場合、その価格は 荷物は 2 人分である必要があります。<Occupancy> を 4 人のゲストに設定することはできません。 セット料金(2 名利用の場合)を設定します。

共有ルーム

また、条件の組み合わせの定員と収容人数を使用して、 宿泊(ホステルなど)を検索してください。たとえば、1 対 1 のチャットを ベッドルームが 8 台のドミトリーの場合、定員を 1 に設定し、 8 の容量。<RoomData> の名前でそれを示します。参照: 例をご覧ください。

条件の組み合わせの更新

このセクションでは、利用できなくなった条件の組み合わせを削除する方法について説明します および既存の条件の組み合わせの料金を更新する方法をご説明します

条件の組み合わせの削除

条件の組み合わせは、ホテルの料金と異なり、削除する方法は異なります できます。

客室または旅行プランの組み合わせを広告枠から削除するには、 <Result> 要素の <Baserate>-1 に設定。特定の日付の <RoomBundle> 要素を Transaction メッセージの <Result> ブロック。

データフィード内の条件の組み合わせはセットとみなされ、 0 ~数十まで設定できます条件の組み合わせを Google に送信する際、 セットです。個々の条件の組み合わせの値を 以前利用できたものは利用不可としてマークできます。バンドルに含まれる 現在のトランザクション メッセージが最新のトランザクション メッセージに置き換わります。

たとえば、バンドル A、B、C、D があるとします。最初に、 条件の組み合わせ A、B、C、D のセットを定義します。後でバンドル B が売り切れた場合、 バンドル A、C、D のみを含むセット全体を再送信します。すべての条件の組み合わせが 空の条件の組み合わせ一式を送信する。

価格調整

条件の組み合わせの料金を変更するには、<Result> で新しい <Baserate> を設定します。 要素です。

トランザクションで客室/宿泊プランの <Result> ブロックを更新するたび 各メッセージに利用可能な条件の組み合わせ一式を <Result>。Google により、既存の条件の組み合わせのセットが新しい あります。<Result> に条件の組み合わせを含めない場合、 その客室または旅行プランのすべての条件の組み合わせが表示されます。

メタデータの更新

条件の組み合わせのメタデータは、Google からの <Query> に対するレスポンスで更新します。

Query メッセージには、部屋を定義するトランザクション メッセージで応答します。 指定したホテルのパッケージ メタデータです。詳細については、クエリ メッセージ