Referensi XML Aturan Tarif

File XML aturan tarif menentukan aturan untuk menayangkan tarif bersyarat dan tarif khusus. Anda dapat menambahkan atau mengedit file XML aturan tarif menggunakan Halaman Aturan tarif di Pusat Pengelolaan Hotel. Untuk informasi selengkapnya tentang tarif bersyarat dan tarif khusus, lihat Tarif bersyarat dan tarif khusus.

Setiap aturan tarif memerlukan id, yang dapat dirujuk dalam <Rate> pesan Transaksi. <Rate> yang merujuk, ID aturan tarif hanya ditayangkan kepada pengguna dan dalam kondisi yang ditentukan oleh aturan tarif. ID aturan tarif juga dapat dirujuk menggunakan variabel di URL halaman landing.

<RateRuleSettings>

Elemen root file XML aturan tarif. Tujuan Elemen <RateRuleSettings> (sebelumnya <PrivateRates>) berisi:

  • Elemen <UserRateCondition> yang menentukan kondisi agar cocok dengan tarif bersyarat dan tarif khusus. Misalnya, Anda dapat membuat tarif bersyarat yang sesuai dengan kondisi semua pengguna di negara.

  • <RateRule> elemen yang masing-masing menentukan aturan tarif dalam <Rate> dalam pesan Transaksi. Masing-masing <RateRule> menentukan kondisi dan perlakuan UI yang membuat tarif bersyarat atau tarif khusus.

Elemen <RateRuleSettings> muncul di tempat berikut dalam tarif aturan hierarki XML:

+ <RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

Sintaksis

Elemen <RateRuleSettings> menggunakan sintaksis berikut:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="some_id" op="[all|any|none]">
    ...
  </UserRateCondition>
  <!-- Required -->
  <RateRule id="rate_rule_id">
    <!-- Required -->
    <UserRateCondition op="[all|any|none]">
      ...
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Atribut

Elemen <RateRuleSettings> tidak memiliki atribut apa pun.

Elemen turunan

Elemen <RateRuleSettings> memiliki elemen turunan berikut:

Elemen Turunan Wajib? Jenis Deskripsi
<RateRule> Required <RateRule>

Menentukan kondisi, modifikasi, dan kelayakan untuk yang menerapkan tarif bersyarat atau tarif khusus. Memerlukan id , yang dapat direferensikan dalam <Rate> Transaksi atau dalam URL halaman landing Anda.

<UserRateCondition> Optional <UserRateCondition>

Menentukan satu atau beberapa kondisi yang jika cocok akan menghasilkan tarif bersyarat atau khusus yang dilayani.

Kondisi dapat ditentukan secara inline dengan menggunakan <UserRateCondition> elemen turunan, dengan mengacu pada elemen lainnya Elemen <UserRateCondition> menggunakan reference_id , atau keduanya secara inline dan berdasarkan referensi. Namun, setiap <UserRateCondition> dengan reference_id harus memiliki 0 anak-anak.

<UserRateCondition> tingkat teratas di bawah <RateRuleSettings> harus memiliki atribut id.

Contoh tarif bersyarat

Contoh berikut menunjukkan cara dasar untuk menentukan tarif bersyarat.

Dengan merujuk pada kondisi yang telah ditentukan, seperti yang ditunjukkan dalam contoh Pengguna seluler, yang disarankan.

Pengguna seluler

Contoh tarif bersyarat berikut menentukan aturan tarif yang sesuai semua pengguna seluler dengan merujuk ke <UserRateCondition> yang telah ditentukan:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="mobile">
    <UserDeviceType>mobile</UserDeviceType>
  </UserRateCondition>
  <RateRule id="mobile">
    <!-- Referencing pre-defined conditions is recommended -->
    <UserRateCondition reference_id="mobile"/>
  </RateRule>
</RateRuleSettings>

Pengguna AS

Contoh tarif bersyarat berikut menentukan aturan tarif yang sesuai semua pengguna yang menelusuri AS dengan merujuk ke <UserRateCondition>:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="us">
    <UserCountry>US</UserCountry>
  </UserRateCondition>
  <RateRule id="us">
    <UserRateCondition reference_id="us"/>
  </RateRule>
</RateRuleSettings>

<RateRule>

Penampung untuk menentukan:

  • Ketentuan untuk menayangkan tarif
  • Perubahan, jika ada, pada harga dan perlakuan UI untuk tarif tersebut
  • Penggunaan format UI tersembunyi untuk tarif khusus

Elemen <RateRule> muncul di tempat berikut dalam XML aturan tarif hierarki:

+ 
<RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

Sintaksis

Elemen <RateRule> menggunakan sintaksis berikut:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings ...>
  <UserRateCondition ...>
  ...
  </UserRateCondition>
  <!-- At least one RateRule is required. The id attribute is required -->
  <RateRule id="rate_rule_id">
    <!-- One or more UserRateCondition elements (inline or referenced) are required. -->
    <UserRateCondition op="[all|any|none]"> // Inline example
      <Description>user_rate_condition_description</Description>
      <!-- Uses the member rate visible UI treatment -->
      <AlwaysEligibleMembershipProgram>program_name</AlwaysEligibleMembershipProgram>
      <LanguageCode>language_code</LanguageCode>
      <MaxUsersPercent>20</MaxUsersPercent> // 20% of users
      <!-- Requires <RateIneligibility> -->
      <MembershipProgram>program_name</MembershipProgram>
      <UserRateCondition reference_id="user_rate_condition_id"/>
      <UserCountry>country_code</UserCountry>
      <UserDeviceType>[mobile|desktop|tablet]</UserDeviceType>
      <UserListId>id</UserListId>
      <UserSignedIn>[true|false]</UserSignedIn>
      <IsDomestic>[true|false]</IsDomestic>
    </UserRateCondition>
    <RateIneligibility>
      <IneligibilityType>[exact|price_band|existence]</IneligibilityType>
      <IneligibilityReason>[program_member]</IneligibilityReason>
    </RateIneligibility>
    <RateModification>
      <HotelAmenity>[free_wifi]</HotelAmenity>
    </RateModification>
  </RateRule>
</RateRuleSettings>

Atribut

Elemen <RateRule> memiliki atribut berikut:

Atribut Wajib? Jenis Deskripsi
id Wajib string

ID unik untuk aturan tarif. ID ini dirujuk menggunakan Atribut rate_rule_id dari <Rate> dalam Transaksi untuk menayangkan tarif bersyarat atau tarif khusus. Aturan tarif id juga dapat direferensikan menggunakan variabel dan kondisi di halaman landing URL.

Jumlah karakter maksimal yang diizinkan adalah 40.

Elemen turunan

Elemen <RateRule> memiliki elemen turunan berikut:

Elemen Turunan Wajib? Jenis Deskripsi
<RateIneligibility> Optional <RateIneligibility> Menentukan nilai yang menentukan perlakuan UI spesifik untuk Tarif <MembershipProgram>.

Hanya valid jika <MembershipProgram> ditentukan dalam <UserRateCondition>.

<UserRateCondition> Required <UserRateCondition>

Menentukan satu atau beberapa kondisi yang jika cocok akan menghasilkan tarif bersyarat atau khusus yang dilayani.

Kondisi dapat ditentukan secara inline menggunakan <UserRateCondition> elemen turunan, dengan mengacu ke <UserRateCondition> lain dengan menggunakan atribut reference_id, atau inline alamat IP internal.

Namun, perhatikan bahwa jika <UserRateCondition> adalah turunan dari <RateRule>, elemen <UserRateCondition> tidak boleh memiliki atribut id dan tidak dapat direferensikan oleh atribut lain <UserRateCondition>.

<RateModification> Optional <RateModification> Memodifikasi perlakuan UI untuk tarif khusus.
<PromoCode> Optional string Menentukan kode yang akan dikaitkan dengan tarif jika aturan tarif ini diterapkan. Ditampilkan di halaman landing PROMO-CODE variabel.

<UserRateCondition>

Menentukan satu atau beberapa kondisi yang jika cocok akan menghasilkan kondisional atau tarif khusus yang dilayani.

Elemen <UserRateCondition> muncul di tempat berikut dalam hierarki XML aturan tarif:

+ <RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

Sintaksis

Elemen <UserRateCondition> menggunakan sintaksis berikut:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings ...>
  <!-- "op" is required for more than one child element -->
  <UserRateCondition id="some_id" op="[all|any|none]">
    <UserDeviceType>device_type</UserDeviceType>
  </UserRateCondition>
  <UserRateCondition id="some_other_id" op="[all|any|none]">
    <UserDeviceType>device_type</UserDeviceType>
  </UserRateCondition>
  <!-- At least one RateRule is required -->
  <RateRule id="rate_rule_id">
    <UserRateCondition reference_id="some_id"/>
  </RateRule>
  <RateRule id="rate_rule_id">
    <UserRateCondition reference_id="some_other_id"/>
  </RateRule>
  <RateRule id="rate_rule_id">
    <UserRateCondition>
      <UserDeviceType>device_type</UserDeviceType>
    </UserRateCondition>
  </RateRule>
<span class="nocode"></RateRuleSettings></span>

Atribut

Elemen <UserRateCondition> memiliki atribut berikut:

Atribut Wajib? Jenis Deskripsi
id Required (if top-level under <RateRuleSettings>) string

ID unik untuk <UserRateCondition> ini. Dapat direferensikan oleh atribut <RateRule> id atau dengan <UserRateCondition> Atribut reference_id.

op Optional enum

Atribut op wajib ada jika <UserRateCondition> memiliki beberapa elemen turunan. Nilai atribut dapat berupa salah satu berikut ini:

  • all: Sertakan pengguna akhir yang cocok dengan semua kondisi yang ditentukan oleh aturan tarif ini. Nilai ini tidak dapat digunakan jika salah satu kondisinya adalah <UserListId>, kecuali hanya satu kondisi lainnya—baik <AlwaysEligibleMembershipProgram> atau <MembershipProgram>—ditentukan.
  • any: Sertakan pengguna akhir yang cocok dengan salah satu kondisi yang ditentukan oleh aturan tarif ini.
  • none: Kecualikan pengguna akhir yang cocok dengan salah satu kondisi yang ditentukan oleh aturan tarif ini. Nilai ini tidak boleh digunakan saat salah satu kondisinya adalah <UserListId>.
reference_id Optional string

Mendefinisikan elemen ini sebagai referensi ke elemen lain yang telah ditentukan <UserRateCondition> dengan id yang cocok.

Jika reference_id ada:

  • Elemen turunan tidak diuraikan
  • id dan op tidak boleh ada

Elemen turunan

Elemen <UserRateCondition> memiliki elemen turunan berikut:

Elemen Turunan Wajib? Jenis Deskripsi
<AlwaysEligibleMembershipProgram> Optional string

Menentukan bahwa tarif akan menggunakan UI yang terlihat untuk tarif anggota perlakuan.

Nilai elemen ini dapat berupa nama program keanggotaan apa pun.

<Description> Optional string Menjelaskan <UserRateCondition>. Ini untuk dokumentasi tujuan dan tidak mempengaruhi kemampuannya.
<LanguageCode> Optional string Menentukan bahwa tarif akan ditawarkan kepada pengguna yang menggunakan bahasa cocok dengan dua huruf ini kode bahasa.
<MaxUsersPercent> Optional float

Menentukan bahwa tarif akan ditawarkan secara acak ke persentase ini pengguna akhir.

Nilai harus berupa bilangan bulat antara 0 dan 100 (inklusif). Sebagai misalnya, 20 akan menargetkan 20% pengguna akhir.

<MembershipProgram> Optional string

Menentukan bahwa tarif akan menggunakan format UI program keanggotaan sebagaimana ditentukan oleh <IneligibilityReason> dari <RateIneligibility>.

Agar <MembershipProgram> valid, <RateIneligibility> harus ditetapkan.

Nilai <MembershipProgram> dapat berupa berapa pun nama program keanggotaan.

<UserRateCondition> Optional <UserRateCondition>

Menentukan satu atau beberapa kondisi yang jika cocok akan menghasilkan tarif bersyarat atau khusus yang dilayani.

<UserRateCondition> dengan reference_id harus memiliki 0 anak-anak.

<UserCountry> Optional string

CLDR kode negara, seperti DE atau FR. Perlu diingat, untuk beberapa negara, kode CLDR tidak sama dengan ISO 2 huruf pada kode sumber. Kode wilayah CLDR tidak didukung.

Menentukan bahwa pengguna harus berada di negara yang ditentukan. Google menentukan negara pengguna akhir dari alamat IP mereka.

<UserDeviceType> Optional enum Menentukan kondisi jenis perangkat. Nilai yang diizinkan adalah:
  • mobile
  • desktop
  • tablet
<UserListId> Optional string ID daftar pengguna Google Ads dari daftar audiens.

Ketentuan ini hanya dapat digunakan dengan <AlwaysEligibleMembershipProgram> atau <MembershipProgram>, atau jika op adalah any.

<UserSignedIn> Optional boolean Boolean yang menentukan apakah pengguna harus login atau tidak menggunakan Akun Google mereka. Nilai true menunjukkan bahwa pengguna harus login. Nilai false menunjukkan bahwa pengguna tidak boleh login. Jika Anda tidak peduli apakah pengguna login atau logout, jangan sertakan <UserSignedIn> .
<IsDomestic> Optional boolean Boolean yang menentukan apakah pengguna harus berasal dari negara yang sama tempat hotel berada. Nilai true menunjukkan bahwa pengguna harus berasal dari negara yang sama dengan hotel tersebut. J nilai false menunjukkan bahwa pengguna mungkin berasal dari negara selain negara hotel. Jika Anda ingin cara yang lebih mendetail gunakan kondisi <UserCountry>.

Contoh tarif bersyarat

Persentase pengguna

Contoh tarif bersyarat berikut menentukan bahwa tarif akan ditawarkan secara acak kepada dua puluh persen pengguna:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="20_percent_users">
    <UserRateCondition>
      <MaxUsersPercent>20</MaxUsersPercent>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

pengguna seluler dan Inggris Raya

Contoh tarif bersyarat berikut menentukan aturan tarif yang sesuai semua pengguna yang melakukan penelusuran di Inggris Raya dengan perangkat seluler menggunakan <UserRateCondition> inline:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="gb_mobile">
    <UserRateCondition op="all">
      <UserCountry>GB</UserCountry>
      <UserDeviceType>mobile</UserDeviceType>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Jepang, bukan Jepang

Contoh tarif bersyarat berikut menunjukkan satu aturan tarif yang cocok pengguna di Jepang dan aturan tarif lain yang cocok dengan pengguna di seluruh global (RoW):

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="jp">
    <UserRateCondition>
      <UserCountry>jp</UserCountry>
    </UserRateCondition>
  </RateRule>
  <RateRule id="row_not_jp">
    <UserRateCondition op="none">
      <UserCountry>jp</UserCountry>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Semua, semua, dan tidak ada

Contoh tarif bersyarat berikut menunjukkan cara op dapat digunakan untuk mencocokkan pada beberapa kondisi dengan cara yang berbeda menggunakan nilai any, all, dan none. Misalnya, seperti yang terlihat dalam Kondisi au_nz, Anda dapat menggunakan salah satu untuk mencocokkan pengguna dalam negara. Seperti yang ditunjukkan dalam aturan tarif au_nz_mobile_tablet, Anda dapat menggunakan all untuk mewajibkan pengguna mencocokkan beberapa kondisi. Tujuan row_mobile_tablet aturan tarif akan cocok dengan pengguna yang ada di dunia (baris), kecuali Australia dan Selandia Baru, dan juga cocok dengan Kondisi mobile_tablet.

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="au_nz" op="any">
    <UserCountry>AU</UserCountry>
    <UserCountry>NZ</UserCountry>
  </UserRateCondition>
  <UserRateCondition id="mobile_tablet" op="any">
    <UserDeviceType>mobile</UserDeviceType>
    <UserDeviceType>tablet</UserDeviceType>
  </UserRateCondition>
  <RateRule id="au_nz_mobile_tablet">
    <UserRateCondition op="all">
      <UserRateCondition reference_id="au_nz"/>
      <UserRateCondition reference_id="mobile_tablet"/>
    </UserRateCondition>
  </RateRule>
  <RateRule id="row_mobile_tablet">
    <UserRateCondition op="all">
      <UserRateCondition op="none">
        <UserRateCondition reference_id="au_nz"/>
      </UserRateCondition>
      <UserRateCondition reference_id="mobile_tablet"/>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Contoh tarif khusus

Tarif anggota terlihat 1

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="member_visible">
    <UserRateCondition>
      <AlwaysEligibleMembershipProgram>[enter your program here]</AlwaysEligibleMembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Tarif anggota terlihat 2

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="member_visible_es_only">
    <UserRateCondition op="all">
      <AlwaysEligibleMembershipProgram>[enter your program here]</AlwaysEligibleMembershipProgram>
      <UserCountry>es</UserCountry>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Rasio daftar audiens 1

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="audience_list">
    <UserRateCondition>
      <UserListId>[enter an audience list id]</UserListId>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Rasio daftar audiens 2

Contoh tarif khusus ini menunjukkan cara menentukan tarif anggota yang terlihat Format UI untuk beberapa daftar audiens:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <UserRateCondition op="all">
      <AlwaysEligibleMembershipProgram>[enter the program name here]</AlwaysEligibleMembershipProgram>
      <UserRateCondition op="any">
        <UserListId>[enter one audience list id here]</UserListId>
        <UserListId>[enter another audience list id here]</UserListId>
      </UserRateCondition>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

<RateIneligibility>

Menunjukkan cara menampilkan perlakuan UI tersembunyi tarif anggota. Jika tidak disertakan, perlakuan UI tersembunyi tarif anggota tidak ditampilkan.

Untuk menggunakan <RateIneligibility> di <RateRule>, <MembershipProgram> juga harus ditentukan dalam elemen <UserRateCondition> untuk <RateRule>.

Elemen <RateIneligibility> muncul di tempat berikut dalam tarif aturan hierarki XML:

+ 
<RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

Sintaksis

Elemen <RateIneligibility> menggunakan sintaksis berikut:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings ...>
  <UserRateCondition ...>
  ...
  </UserRateCondition>
  <RateRule ...>
    <UserRateCondition ...>
      ...
      <!-- Required when using RateIneligibility -->
      <MembershipProgram>program_name</MembershipProgram>
      ...
    </UserRateCondition>
    <RateIneligibility>
      <IneligibilityType>[exact|price_band|existence]</IneligibilityType>
      <IneligibilityReason>[program_member]</IneligibilityReason>
    </RateIneligibility>
  </RateRule>
</RateRuleSettings>

Atribut

Elemen <RateIneligibility> tidak memiliki atribut apa pun.

Elemen turunan

Elemen <RateIneligibility> memiliki elemen turunan berikut:

Elemen Turunan Wajib? Jenis Deskripsi
<IneligibilityType> Required enum

Menentukan bagaimana teks (yang ditampilkan di samping rasio garis silang) menjelaskan tarif tersembunyi.

Nilai yang valid adalah:

  • exact: Persentase diskon. Teks tersebut akan bertuliskan, "Dapatkan diskon X% dengan melakukan pendaftaran gratis".
  • price_band: Rentang diskon. Teks tersebut akan bertuliskan, "Dapatkan diskon X-Y% dengan melakukan pendaftaran gratis". Untuk diskon dari 1-5%, teksnya akan bertuliskan "Dapatkan diskon hingga 5%". Diskon yang lebih besar akan ditampilkan dengan kenaikan 5 poin, seperti "Dapatkan diskon 5-10%" atau "Dapatkan 10-15% nonaktif".
  • existence: Petunjuk tidak spesifik. Dalam hal ini, teksnya akan bertuliskan: "Dapatkan harga lebih murah dengan gratis saat ini."

Pelajari lebih lanjut tentang perlakuan UI di Tarif khusus detail dan contoh.

<IneligibilityReason> Required enum

Nilai yang valid adalah:

  • program_member: Menampilkan tarif menggunakan perlakuan UI tersembunyi tarif anggota.

Contoh tarif khusus

Bagian ini mencakup contoh tersembunyi tarif anggota (dasar) dan tarif anggota contoh tersembunyi (beberapa kondisi). Anda juga dapat menampilkan tarif anggota untuk subkumpulan pengguna. Untuk mengetahui contohnya, lihat Contoh tarif pribadi.

Contoh tersembunyi tarif anggota (dasar)

Diskon persis

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>exact</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Diskon tali smartwatch

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>price_band</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Diskon petunjuk

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>existence</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Contoh tersembunyi tarif anggota (beberapa kondisi)

op=&quot;any&quot;

Rasio daftar audiens untuk pelanggan + tarif anggota disembunyikan (diskon keberadaan) untuk non-anggota

Contoh tarif khusus ini menentukan jenis tarif anggota existence perlakuan UI tersembunyi, yang akan ditampilkan kepada pengguna dan bukan kepada audiens daftar. Pengguna dalam daftar audiens akan melihat rasio audiens.

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>existence</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition op="any">
      <MembershipProgram>[enter program name here]</MembershipProgram>
      <UserListId>[enter you audience list id here]</UserListId>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

op=&quot;all&quot;

Tarif anggota disembunyikan hanya untuk pengguna daftar audiens

Contoh tarif pribadi ini menentukan jenis exact tarif anggota yang disembunyikan Format UI, yang dimodifikasi dengan teks tambahan "plus Wi-Fi gratis". UI ini perlakuan akan ditampilkan kepada pengguna yang cocok dengan daftar audiens.

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program_for_audience_list">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>exact</IneligibilityType>
    </RateIneligibility>
    <RateModification>
      <HotelAmenity>free_wifi</HotelAmenity>
    </RateModification>
    <UserRateCondition op="all">
      <MembershipProgram>[enter program name here]</MembershipProgram>
      <UserListId>[enter you audience list id here]</UserListId>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

UI transparan/terlihat

Contoh ini menunjukkan cara menentukan tarif anggota dengan dua perlakuan UI (UI transparan dan terlihat) untuk pengguna di daftar audiens dan tarif tersembunyi untuk semua pengguna lain.

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>existence</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition op="any">
      <MembershipProgram>[enter program name here]</MembershipProgram>
      <UserRateCondition op="all">
        <UserListId>[enter you audience list id here]</UserListId>
        <AlwaysEligibleMembershipProgram>program_name</AlwaysEligibleMembershipProgram>
      </UserRateCondition>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

<RateModification>

Memodifikasi perlakuan UI untuk tarif khusus.

Elemen <RateModification> muncul di tempat berikut dalam hierarki XML aturan tarif:

+ 
<RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

Atribut

Elemen <RateModification> tidak memiliki atribut apa pun.

Elemen turunan

Elemen <RateModification> memiliki elemen turunan berikut:

Elemen Turunan Wajib? Jenis Deskripsi
<HotelAmenity> Optional enum

Gabungkan dengan <MembershipProgram> dan <RateIneligibility> untuk mengubah perlakuan UI tersembunyi tarif anggota.

Nilai yang valid adalah:

  • free_wifi: Menambahkan plus free wifi pada teks.
<PriceMultiplier> Optional float

Memodifikasi harga dengan mengalikan nilai ini dengan tarif dasar, pajak, dan biaya. Misalnya, jika PriceMultiplier = 0,9, basis rate = $100, pajak = $20, biaya = $10; lalu setelah menerapkan pengganda: tarif dasar = $90, pajak = $18, biaya = $9.

Tindakan ini memungkinkan Anda menerapkan diskon ke semua tarif dengan tarif tertentu aturan.

Contoh tarif khusus

Fasilitas hotel

Tarif anggota disembunyikan untuk semua pengguna (diskon band) + Wi-Fi gratis

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>price_band</IneligibilityType>
    </RateIneligibility>
    <RateModification>
      <HotelAmenity>free_wifi</HotelAmenity>
    </RateModification>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Pengganda harga

Terapkan diskon 5% untuk tarif seluler di Feed Harga

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="mobile">
    <RateModification>
      <PriceMultiplier>0.95</PriceMultiplier>
    </RateModification>
    <UserRateCondition>
      <UserDeviceType>mobile</UserDeviceType>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>