Nutzerabhängige Preise

Nutzerabhängige Preise sind eine Preisregel, mit der Sie unterschiedliche Preise anbieten können. für Reisepläne, basierend auf Kriterien wie Gerät, Land oder ob sich der Nutzer bei Google angemeldet hat.

Wenn Sie mehrere öffentliche oder nutzerabhängige Preise für einen Reiseplan oder Zimmerpaket: Der Nutzer sieht den niedrigsten Preis. Google wählt immer den niedrigsten Wert aus gültigen Preis für den Nutzer.

Übersicht

Nutzerabhängige Preise sind in den Standard-Slots sichtbar und werden nur angezeigt Nutzern präsentiert, deren Suchanfragen die Kriterien für den zugehörigen nutzerabhängigen Preis erfüllen. Diese Kriterien können auf Folgendem basieren:

Ändern Sie Folgendes, um nutzerabhängige Preise zu aktivieren:

  • XML-Datei mit Preisregeln: Definieren Sie die Bedingungen, unter denen die nutzerabhängigen Preise angewendet werden.

  • Preisfeed: Verwenden Sie die Methode <Rate>-Element in einer Transaktionsnachricht verwenden, um die Preise festzulegen.

  • Landingpage-Datei: Hinzufügen preisregelspezifische Werte für Ihre Deeplinks festzulegen.

Gerätespezifische nutzerabhängige Preise

Gerätespezifische Preise sind Hotelpreise, die nur von Nutzer auf einem bestimmten Gerät wie einem Smartphone, Tablet oder Computer. Die Preise sind von Google-Partnern bereitgestellt, sodass Endnutzer dieselben gerätespezifische Preise auf der Website des Partners zu finden.

fenced_rates

Länderspezifische nutzerabhängige Preise

Länderspezifische Preise sind Hotelpreise, die nur sichtbar und buchbar sind von Nutzern, die nach Hotels aus einem bestimmten Land suchen. Google wird das Land anhand der IP-Adresse des Endnutzers ermittelt. Die Preise werden zur Verfügung gestellt von Google-Partnern erhalten und Endnutzer können dieselben länderspezifischen finden Sie auf der länderspezifischen Website des Partners.

Sprachspezifische nutzerabhängige Preise

Sprachspezifische Preise sind nur für Nutzer sichtbar, die nach Hotels suchen wenn Sie eine bestimmte Spracheinstellung in Google festgelegt haben. Sprachspezifisch Bedingungen werden mit dem Element <LanguageCode> definiert.

Herabgetastete nutzerabhängige Preise

Herabgestufte nutzerabhängige Preise sind nur für eine zufällige Teilmenge aller berechtigten Nutzern angezeigt. Die Abtastrate wird mit <MaxUsersPercent> definiert. und wird wie folgt berechnet:

MaxUsersPercent = (number of users selected to view rate)/(total eligible users)

Nutzerabhängige Preise für angemeldete Nutzer

Die Preise für angemeldete Nutzer sind nur für Nutzer sichtbar, die sich mit einem Konto. Die Partner von Google stellen die Preise bereit und Nutzer können diese aufrufen und buchen die Preise auf der Website des Partners. Die Preise für angemeldete Nutzer werden mithilfe der <UserSignedIn>-Element.

Da Google immer den niedrigsten zulässigen Preis auswählt, wenn ein nutzerabhängiger Preis höher als der auf <Result>-Ebene festgelegte Preis ist, wird der nutzerabhängige Preis werden nie ausgewählt. Um dies zu vermeiden, entfernen Sie die Preis zum <Result> und die Bedingung für alle Preise festlegen. Wenden Sie sich alternativ an Ihren Technical Account Manager, zur Verwendung einer standardmäßigen Preisregel für Preise, die auf <Result>-Ebene festgelegt sind.

XML-Datei für Preisregeln erstellen

Preisregeln für nutzerabhängige Preise werden mithilfe einer Preisregel-XML-Datei definiert. Für Weitere Informationen finden Sie in der XML-Datei für Preisregeln Referenz.

Preisfeed aktualisieren

Nutzerabhängige Preise werden mit dem Element in einem Transaktionsnachricht:

Das <Rate>-Element kann auch als mehrere untergeordnete Elemente von <Rates> verwendet werden. innerhalb der <RoomBundle>- oder <Result>-Elemente. Um sie als Bedingung zu verwenden, müssen Sie den Wert des Attributs rate_rule_id so festlegen, mit der Preisregel-ID, die Sie in der XML-Datei für Preisregeln definiert haben.

Wenn Sie keinen Standardpreis für ein Doppelzimmer angeben, legen Sie <Baserate> fest. untergeordnetes Element der Nachricht <Result> an -1. Beliebige Bedingung <Rates>, die in diesem Fall an Google gesendet werden, gelten als gültig.

Beispiele

Basis + Bedingung

Das folgende Beispiel zeigt eine Transaktionsnachricht mit einer base nutzerabhängiger Preis und einen nutzerabhängigen Preis:

<?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 Einzel

Das folgende Beispiel zeigt eine Transaktionsnachricht, die eine Preis unter <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>

    <Baserate currency="USD">300.00</Baserate>
    <Tax currency="USD">30.00</Tax>
    <OtherFees currency="USD">2.00</OtherFees>

    <RoomBundle>
      <RoomID>single</RoomID>
      <Baserate currency="USD">300.00</Baserate>
      <Tax currency="USD">30.00</Tax>
      <OtherFees currency="USD">2.00</OtherFees>
    </RoomBundle>

    <RoomBundle>
      <RoomID>3</RoomID>  <!-- Links to data in metadata -->
      <RatePlanID>basic</RatePlanID>
      <Baserate currency="USD">275.00</Baserate>
      <Tax currency="USD">27.50</Tax>
      <ChargeCurrency>web</ChargeCurrency>
      <BreakfastIncluded>1</BreakfastIncluded>

      <Rates>
        <Rate rate_rule_id="mobile">
          <Baserate currency="USD">269.00</Baserate>
          <Tax currency="USD">2.69</Tax>
          <OtherFees currency="USD">1.00</OtherFees>
        </Rates>
      </Rates>

    </RoomBundle>
  </Result>
</Transaction>

RoomBundle – mehrere

Das folgende Beispiel zeigt eine Transaktionsnachricht mit mehreren Preise unter einer <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>

Keine Doppelbelegung in öffentlichen Verkehrsmitteln

Das folgende Beispiel zeigt eine Transaktionsnachricht mit nutzerabhängiger Preis ohne öffentlichen Doppelzimmerpreis:

<?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>

    <!-- <Unavailable/> should not be specified when available nested rates
    exist. -->
    <Baserate currency="USD">-1</Baserate>
    <Tax currency="USD">0</Tax>
    <OtherFees currency="USD">0</OtherFees>

    <Rates>
      <!-- The rate_rule_id is required when using conditional rates. -->
      <Rate rate_rule_id="mobile">
        <Baserate currency="USD">180.00</Baserate>
        <Tax currency="USD">18.00</Tax>
        <OtherFees currency="USD">1.00</OtherFees>
        <Custom1>ratecode123</Custom1>
      </Rate>
    </Rates>

  </Result>
</Transaction>

Landingpage-Datei aktualisieren

Damit berechtigte Endnutzer den rabattierten Preis über eine ändern Sie Ihre Landingpage Datei. Zusätzliche Implementierung kann auch auf der Buchungswebsite erforderlich sein, damit reduzierte Preise.

Wir erwarten, dass Partner den Preis berücksichtigen, der im Deeplink für den nutzerabhängigen Preis angezeigt wird.

In einem dynamischen Deeplink können Sie die Preisregel anhand ihres Namens, des Attribut id des Elements <RateRule> mit der Variablen RATE-RULE-ID.

Im folgenden Beispiel wird die Preisregel-ID hinzugefügt:

https://bookingsite.com/landing.do?id=(PARTNER-HOTEL-ID)&arrival=(CHECKINDAY)-(CHECKINMONTH)-(CHECKINYEAR)&departure=(CHECKOUTDAY)-(CHECKOUTMONTH)-(CHECKOUTYEAR)&lang=(USER-LANGUAGE)&currency=(USER-CURRENCY)&prid=(RATE-RULE-ID)

Die Landingpage-Datei unterstützt auch die Anweisung IF-RATE-RULE-ID, mit der definieren Sie Teile der URL bedingt, je nachdem, ob die Preisregel existiert:

https://bookingsite.com/(IF-RATE-RULE-ID)privatelanding.do(RATE-RULE-ID)(ELSE)landing.do(ENDIF)?id=(PARTNER-HOTEL-ID)&arrival=(CHECKINDAY)-(CHECKINMONTH)-(CHECKINYEAR)&departure=(CHECKOUTDAY)-(CHECKOUTMONTH)-(CHECKOUTYEAR)&lang=(USER-LANGUAGE)&currency=(USER-CURRENCY)

In diesem Beispiel wird zwischen zwei Landingpages ausgewählt, je nachdem, Regel-ID festgelegt ist.

Weitere Informationen finden Sie unter Verwenden von Variablen und Bedingungen.