The CRM loyalty module allows you to configure, issue, and manage multiple types of rewards for your loyalty members. Rewards can support reservation-based benefits, room booking incentives, generic reward items, and credit-based rewards.
Before you start
Permissions required: You must have access to loyalty setup and campaign management tools.
Prerequisites:
Loyalty module must be activated.
For room rewards, your booking engine or CRS must be integrated with loyalty.
Hotel strategies for eligibility, value, validity periods, and redemption paths should be defined prior to setup.
Understand reward types
The CRM loyalty module supports four reward types:
Room rewards
Room rewards are redeemed against future bookings and applied through rate code logic in an integrated booking engine. Guests must log in to view and redeem room rewards.
Use cases:
Complimentary night certificates.
Discounted room rate vouchers.
Upgrade credits applied at booking
Technical requirements:
Integrated Booking Engine or CRS.
Rate code configuration in PMS.
Authentication required for redemption
Points redemption: Room rewards can be configured to allow guests to purchase them using loyalty points or credits instead of issuing them automatically.
Reservation rewards
Reservation rewards are applied to existing reservations on the books, such as complimentary breakfast or spa credits. These rewards may append notes to the reservation through the PMS interface.
Use cases:
Welcome amenities.
Complimentary services such as breakfast, parking and Wi-Fi.
Property credits applied to folio.
Technical requirements:
PMS integration for reservation notes.
Visibility in arrivals report for front office teams. +
Partner rewards
Partner rewards are third-party rewards issued through integrated partners such as Tango Card. Guests can redeem these rewards for gift cards from external brands and merchants.
Use cases:
Retail gift cards such as Amazon or Target.
Restaurant gift cards.
Experience vouchers.
Travel rewards from partner brands.
The CRM integrates with Tango Card to issue digital gift cards. When a partner reward is issued, the system calls the Tango Card API to generate the gift card and sends the redemption details to the guest.
Generic rewards
Generic rewards are highly flexible and may support unique QR codes for controlled inventory items.
Use cases:
Spa vouchers.
Food and beverage credits.
Complimentary drinks.
Property-specific rewards.
Benefits of using QR codes:
Prevents duplicate use.
Easy validation at outlets.
Real-time status tracking.
Credit or points-based rewards
Room rewards, partner rewards, and generic rewards can be configured to allow guests to purchase them using loyalty points or credits. This provides flexibility in how guests earn and redeem rewards:
Automatic issuance: Rewards are issued automatically when guests meet campaign criteria for example birthday, tier upgrade or stay milestone.
Points-based purchase: Guests can browse available rewards in the guest portal and choose to purchase them using their accumulated loyalty points or credits.
The points redemption structure is configured in the loyalty program settings and determines how many points are required for each reward type.
πNote: All rewards issued to the guest appear in the guest portal automatically, even if an email notification is not configured.
Configure a reward formula
Follow the steps below to create a new reward formula.
From the left navigation menu, click Loyalty Setup and click Reward Formula Setup and click Add Reward Formula.
Enter general information:
Reward code β Unique internal identifier for the reward.
Reward type β Select from Room Reward, Reservation Reward, Partner Reward, or Generic Reward.
Internal reward name β Name visible only to CRM users.
External reward name β Name displayed to guests in booking and redemption paths.
Reward description β Optional internal notes about the reward.
Membership tiers β Select which loyalty tiers are eligible to earn and redeem this reward.
Max earning β Maximum number of times the reward can be issued to a single profile.
Email template β Check this box if you want to notify guests when a reward is issued.
π€Tip: Use clear guest-facing naming for external reward names to improve redemption clarity.
If you selected Room Reward as the reward type, complete these additional fields:
Book link β Base URL for the Booking Engine.
Request method β Select GET for CRS or integrated booking engines. Post is reserved for future functionality.
Book parameters β Direct parameters passed to the booking engine.
Available book parameters:
hgID β Hotel Group ID (identifies a multi-property hotel group)
langID β Language ID (numeric identifier for the interface language; see language ID reference below)
checkin β Check-in date (format: {0} for dynamic date insertion)
nights β Number of nights for the stay
rooms β Number of rooms requested
adults β Number of adult guests
children β Number of child guests
vouchercode β Voucher/Offer code Dynamic and specific to the CRM integration (format: {1} for dynamic voucher code insertion)
Click Save to create the reward.
Configure dates:
Start date β The date when the system begins evaluating profiles for issuance.
End date β The date when the system stops evaluating profiles for issuance.
Configure issuance trigger β Select how the reward should be triggered:
Member tier level β Issue based on loyalty tier.
Segment β Issue when a guest joins a specific segment.
Reservation history β Issue based on past booking behavior.
Reservation timing this is for reservation rewards only β Issue relative to arrival or departure dates.
Reservation timing options:
Arrival + Days β Number of days after arrival.
Arrival β Days β Number of days before arrival.
Departure β Days β Number of days before departure.
Time of Booking β Issue immediately when the reservation is created.
Configure validity and expiration:
Valid from:
Upon issue β Reward is valid immediately when issued.
By date β Reward becomes valid on a specific date.
By timeframe β Reward becomes valid a relative number of days after issuance.
Expiration type:
By date β Reward expires on a specific date.
By timeframe β Reward expires a relative number of days after issuance.
Enter Max Usage β The maximum number of times the reward can be redeemed within this campaign.
Enter Rate Code β The rate code used in the booking engine to redeem the reward. This field supports up to 2,048 characters for room rewards only.
πNote: If using CRS with a complimentary or zero-value rate, you must enable the bypass minimum bookable rate setting in client manager and click My Properties.
Check the Auto Assignment box if you want the system to automatically assign the reward without manual intervention, this step is optional.
Check the Active box only when the campaign is ready to issue live rewards.
β οΈImportant: Activating a reward or campaign before testing may result in unintended mass issuance.
Example book parameters: hgID=XXXX&langID=1&checkin={0}&nights=1&rooms=1&adults=1&children=1&vouchercode={1}
ID | Code or Name | ID | Code or Name |
0 | Empty / Undefined | 17 | Dutch (nl) |
1 | English (en-US) β Default fallback | 18 | Hungarian (hu) |
2 | French (fr-FR) | 19 | Romanian (ro) |
3 | Spanish (es-ES) | 20 | Slovak (sk) |
4 | German (de-DE) | 21 | Korean (ko) |
5 | Italian (it-IT) | 22 | Indonesian (id-ID) |
6 | English (en-GB) | 23 | Danish (da-DK) |
7 | Chinese Simplified (zh-CN) | 24 | Thai (th-TH) |
8 | Russian (ru) | 25 | Azerbaijani (az-AZ) |
9 | Japanese (ja) | 26 | Norwegian (nb-NO) |
10 | Chinese Traditional (zh-TW) | 27 | Hebrew (he-IL) |
11 | Portuguese (pt) | 28 | Malay (ms-MY) |
12 | Czech (cs) | 29 | Finnish (fi-FI) |
13 | Swedish (sv) | 30 | Turkish (tr-TR) |
14 | Arabic (ar) | 31 | Vietnamese (vi-VN) |
15 | Greek (el) | 32 | Bulgarian (bg-BG) |
16 | Hindi (hi) | 33 | Polish (pl-PL) |
πNote: If langID is not provided or is invalid, the system defaults to 1 (English). The system can also accept lang (language code like "en", "fr", "es") or locale as alternatives to langID.
Configure reward exceptions
Reward exceptions prevent specific reservations from counting toward reward issuance. Use this feature to exclude test bookings, employee reservations, or other non-qualifying stays.
From the left navigation menu, click Loyalty Setup and click Reward Exception Setup.
Enter codes in any of the following fields to exclude reservations from reward issuance. Multiple codes can be entered in each field, separated by semicolons (;):
Available exception fields:
Rate code β Exclude specific rate codes for example employee rates, test rates or complimentary rates.
Room type β Exclude specific room types.
Group code β Exclude group booking codes.
Package code β Exclude package codes.
Channel code β Exclude specific booking channels for example test channels.
Rate access code β Exclude specific rate access codes.
Market code β Exclude specific market segment codes.
Example entries:
Rate code: EMPLOYEE;TEST;COMP
Room type: HOUSE;OWNER
Group code: TESTGRP;STAFF
πNote: Each field supports up to 50,000 characters, allowing for extensive exception lists.
Click Save to apply the exceptions.
How exception logic works
Reward exceptions use OR logic. If a reservation matches any value in any exception field, the reservation is excluded from reward issuance. For example:
If you enter EMPLOYEE;TEST in the rate code field and TESTGRP in the group code field, any reservation with:
Rate code = EMPLOYEE, OR
Rate code = TEST, OR
Group code = TESTGRP
Will be excluded from receiving rewards.
β οΈImportant: Empty fields are ignored. Only fields with exception codes will filter reservations.
πNote: Only one exception condition must be met to exclude the reservation.
Test before activation
Follow these steps to test your reward configuration before activating it for all guests.
Recommended testing workflow
Configure the full reward and campaign settings.
Add one or more Test Accounts to validate eligibility.
Use the Test functionality to preview issuing behavior.
Unpublish the segment if the reward should not yet be active.
Activate the reward only after all validation is complete.
π€Tip: For room rewards, always test with at least one CRS-connected profile to confirm the booking flow.
Guest experience overview
Guests interact with rewards in three stages:
Earning the reward: Guests earn rewards based on loyalty activity, reservation behavior, or manual issuance by hotel staff.
Receiving the reward: The CRM issues the reward automatically when campaign rules are met.
The guest receives an email if an email template is configured.
The reward appears in the guest portal automatically.
Redeeming the reward: Guests redeem rewards using:
Integrated Booking Engine (Room Rewards).
QR code or onsite validation (Generic Rewards).
PMS-visible notes for Reservation Rewards.
Guest Portal access for all reward types.
Reward redemption workflows
Outlined below are room rewards, reservation rewards, generic rewards and credit rewards workflows.
Room rewards
Room Rewards require an integrated Booking Engine or CRS. Guests must log in to view eligible rewards. When selecting a reward, they are taken directly to the pre-configured booking link using the book parameters defined in the reward formula. When the reservation is confirmed, the PMS or CRS receives the reward's rate code.
πNote: Reservation agents will also see the room reward rate returned in CRS availability results when the guest is authenticated.
Reservation rewards
Reservation rewards apply to reservations already on the books. The system may append a note to the reservation via the PMS interface.
Hotel teams can view redemptions in the CRM arrivals report.
Generic rewards
Generic rewards are highly flexible and may support unique QR codes for controlled inventory items.
Benefits of using QR codes:
Prevents duplicate use.
Easy validation at outlets.
Real-time status tracking.
Credit rewards
Credit rewards represent loyalty currency earned or purchased by guests. Guests redeem credits for reward items configured within loyalty rules. Credits appear in the guest portal immediately after issuance.
Administrative settings and operational impact
Outlined below will give an overview on administrative settings and operational impact.
Front office visibility
Operational teams can refer to the arrivals report to view guests who have redeemed rewards.
For reservation rewards, CRM may append internal notes to the PMS reservation.
Outlet teams may validate generic rewards using QR codes or guest confirmation details.
Tracking and reporting
The CRM provides detailed reporting on loyalty rewards, including:
Total rewards issued.
Total rewards redeemed.
Revenue generated from room rewards.
Usage by tier.
Reward activity by date range.
Guest-level reward activity.
π€Tip: Use reporting to refine reward availability, revenue impact, and guest engagement patterns.
Frequently asked questions
Outlined below are some of the most frequently asked questions.
How can I make my reward program successful?
Use clear reward descriptions so guests immediately understand the value. Offer a variety of room, reservation, and generic rewards to maximize engagement. Time reward issuance close to relevant stay dates to increase conversions. Customize email templates based on the member's room type or tier.
Do rewards need to be discounted?
No. Rewards may represent complimentary value or standard rate value. Discounts are optional and may be used to reward loyalty tiers or influence slower periods. The reward type used determines what options are available.
Do front-office or reservations teams need training?
Minimal. Rewards are issued and redeemed automatically. Front-office teams only need to view arrivals or PMS comments for reservation rewards.
Are upsell, pre-stay emails, and rewards combined?
No. Reward issuance is governed by loyalty rules and booking parameters. Pre-stay and upsell emails are triggered separately by the email day setup configuration.
What if a rate code is complimentary or zero value?
CRS systems may require special configuration to allow zero-value bookings. Enable the bypass minimum bookable rate setting in Client Manager and click My Properties.
Can guests redeem room rewards by phone?
Yes. If the guest calls reservations, authenticated agents will see the eligible room reward rate code in CRS availability results when using the SHR Voice Application. If using the PMS, users will need to validate the reward in the CRM, make the reservation in the PMS and manually redeem the reward in the CRM on the profile.
Do rewards automatically appear in the guest portal?
Yes. All issued rewards appear in the guest's portal regardless of whether an email is configured.
