You can define conditions for earning points, redeeming points, expiry of points and returning points.

Overview

Earn conditions allow an org to create various conditions and define how a customer can earn points. You can have common points allocation across tiers or different allocations for each tier.

📘

For MLP enabled orgs, allocation strategies created in a program are associated only with that program and cannot be used even in the org's default program.

Configure Points Delayed Accrual

Delayed accrual allows issuing points to customer for an activity at a later date. For example, if you support item returns, say for a week from the purchase date, you can actually block customers from using those points before the return period. This avoids redundancy and fraud activities.

In Delayed Accrual, points are first issued as promised points. These cannot be redeemed by the customer. After the configured period, these points are converted and credited to the main balance.

In Delayed Accrual, the points allocation date is when points are actually issued to the customer. In the case of Delayed Accrual, the awarded date is when points get added to the current points (accrued date). Refer to the following examples for clarity.

  • If a transaction with bill date A is sent to Loyalty EMF on date B, the awarded date is date B.
  • If the transactionAdd activity of date A gets replayed on date B, the awarded date is date B.
  • If bill points with bill date A are imported on date B, the awarded date is date B.

📘

The 'delayed accrual points' are added to the 'current points' on the next morning of the delay period, i.e., (event date + the number of days of delay) specified in the point allocation strategy.

If a transaction is added on 28th Sep and the number of days of delay is 1, the delayed accrual points will get added to current points on the morning of 30th Sep (morning after 28, Sep + 1 day). The awarded date is 30 Sep.

You can create rules on the points that are redeemable, non-redeemable, or with the summation of both.

Find the details of event, action, and limitations of Delayed Accrual below -

  1. Event name: DelayedAccrual. You need to configure the DelayedAccrual activity to perform actions on Delayed Accrual.
  2. Action: To enable converting promised points to current points, for the DelayedAccrual activity, you need to set Delayed Accrual Action.
  • Other actions supported:
  • Send Messages (SMS, Email, Mobile Push)
  • Upgrade To Tier
  • Issue Coupon
  • Delayed Accrual
  1. Limitations:
  • For an activity, you cannot use both direct allocation and delayed accrual strategies. You cannot have strategies with different delay periods. For example, you cannot use one strategy with 4 days delay period and another strategy with 7 days delay period.
  • You cannot use Delayed Accrual strategies on Registration and Customer Update activities.

Points unlock ability

By now, it is very clear that brands can give delayed points to their customers from our Loyalty settings (delayed accrual strategy). However, some times brands might want to convert these delayed points also as redeemable points for their customers.

The only way available to do this is via external triggers. Till now, we have this ability only for bill level. But now, we have the ability to do this even on line item levels.

Some sample use cases:

  1. As a system integrator, I would like to be able to to configure fixed return windows for different line items, allocate promised points on each line item and convert them to redeemable points according to each line item’s return window, so that the users can get regular points on each line item, as and when the return window for the line items gets over and don't have to wait for the default return windows to get over.
  2. As a Loyalty Program Manager, I would like to be able to give my customer an option to end the return window for any transaction or any line item in the transaction and immediately convert promised points to regular points.

You can find more information on how to use this API at below link, please refer.

Points Unlock API

Configure points earn conditions

There are two allocation types available.

  • Fixed: A fixed number of points is allocated irrespective of the transaction amount.
  • Prorated: Points are issued as a percentage of the transaction amount or custom field value and through step function.

Based on the chosen allocation type, you can have the following combinations of points allocation strategies.

  • Reward points as a percentage of a transaction amount with the same percentage across tiers. For example - Tier1: 15%, Tier2: 15%.
  • Reward points as a percentage of the transaction amount with different percentages for each tier. For example - Tier1: 15% of the transaction amount, Tier2: 20% of the transaction amount.
  • Reward a fixed number of points per transaction across tiers. For example - Tier1: 15 points per transaction, Tier2: 15 points per transaction.
  • Reward a fixed number of points per transaction with different values across tiers. For example - Tier1: 10 points per transaction, Tier2: 15 points per transaction.
    To configure earning conditions, do the following.
  • Reward a fixed number of points in equal step sizes or transaction intervals. For example, allocate 10 points on every spend of Rs.200. So a person doing a transaction of 450 will get 20 points, because his transaction amount lies between 400 - 600.
  1. On Intouch, navigate to Menu > Loyalty+ > Programs.
  2. In Programs, select the program you want to edit.
  3. Click Edit Program.
  4. Click Points.
  5. Click Add Earn Conditions.
945
  1. In Name, enter the condition name.
281
  1. In Description, describe the condition.
278
  1. In Module Using this Condition, select the module (Loyalty/Campaigns - Engage+) where you want to use this condition.

📘

  • If you choose Campaigns, you can see only two options- Fixed and Round up.
279
  1. In Allocate Based On, select your preferred option, based on which the points are allocated.
OptionDescription
TiersThis is the default option. Points are allocated to customers according to their tiers.
Loyalty RegistrationPoints are allocated to customers based on the information they provide during the registration. You can select any one of the custom fields.

For example, if you select an age group of 25-30, points are allocated to customers belonging to this exact age group.
Loyalty TransactionPoints are allocated to customers on the basis of their Loyalty transaction. For example, if you select order_channel, points are awarded only to customers who made a transaction through a particular channel(For example- Instore).
280
  1. In Allocation Type, select your preferred allocation type to define the criteria for giving points to customers.
OptionDescription
FixedTo reward a fixed number of points (irrespective of the transaction amount).
For example - 10 to issue 10 points per transaction.
Prorated- in terms of %To reward points as a percentage of the transaction amount.
For example - 10 to issue points of 50 points if the transaction amount is 500.
Points Multiplier- in terms of %To reward extra points to the customer along with existing points. For example, 5x of the current points allocation strategy. This is used in promotions (run for a shorter period) along with an existing allocation strategy.
For example, if an org issues 10 points to customers in the lowest tier, during Diwali season the org can issue 10X points to attract customers in the lowest tier to make more purchases with the org. The customer will receive 100 points (10 multiplied by 10) if they make a transaction with org during the Diwali season.
Prorate - In terms of step functionTo reward fixed number of points for equal transaction intervals or steps. For example, allocate 6 points on every transaction of 150. So on every step of 150, allocate 6 points. This way, transaction amount lying between 151-300 get 6 points, lying between 301-450 get 12 points and so on.
  1. Enable Same for all Tiers and enter the point value.
    The point value will be the same for all the tiers in the program, If disabled, you can enter different point values for different tiers.
186
  1. In Enable Delayed Accrual, enable the checkbox and enter the days after which the customer is able to redeem points.
  • DELAYED ACCRUAL: Points are reflected in the customer's account immediately after the transaction but are only redeemable after the prescribed number of days. For example, if an apparel store has a return policy of seven days, and a customer buys a shirt and gets 20 points on this purchase. The points are reflected in the customer's account right after the purchase, but if the customer decides to return the shirt on the third day, the points will disappear from the account and the customer is unable to use the acquired points. Delayed accrual prevents customers from misusing points.
458
  1. Click Done.

Allocate points on Custom Field values

You can also reward points to your customers based on the custom field values that are submitted on the customer registration and profile update screens of InStore. This works only for the custom fields with integer values (example: 20) and not for string values (example: John). It is recommended to use a fixed points allocation type for custom fields.

To configure rewarding points based on the custom fields, do the following:

  1. In Earn conditions click Add earn condition to create a new point earning condition (or) to modify an existing condition, navigate to the earn condition and click the respective edit button.
  2. In Allocate based on, choose either Loyalty Registration or Loyalty Transaction and select your desired custom field accordingly.
256 245
  1. In the Allocation type, choose Fixed to allocate a specific number of points for every transaction (irrespective of the transaction amount). Choose Prorated to allocate points as a percentage of the transaction amount.
  2. Click Done.

Configure points round-up for campaigns

Earn condition configuration for Campaigns has an additional Allocation type - Round up. This lets you round up points that are in a specific range for each tier. For example, when running campaigns, you can round up points that are between 30-100 to 100 for all customers in the base tier.

📘

If Same for all Tiers is disabled, Round up configuration will vary for each tier.

526
  1. In Allocation type, choose Roundup.
  2. In Points range, configure from, to, and round up to the range of points and the value that you want to have for the roundup. For example, if a customer has 40 points (current points) in his/her account and when the campaign is triggered, an additional 60 points will be added to his/her account making it 100 as configured.

Configure rules for points allocation strategy

Once you create a strategy, you need to configure the relevant activity and define rules based on which you want to execute specific points earning conditions.
Allocation Points is an action that allows you to award points to customers based on certain activities (registration, transaction, profile update, coupon redemption, points redemption, tier upgrade).

To configure Rules for Points Allocation:

  1. In Workflow, go to Customer Activity and click TransactionAdd.
  2. In Select Customer Activity, choose the activity for which you want to define earn condition rules. While defining actions, you can choose the desired allocation strategy in Earn Condition as shown.
716 479
  1. You can also set up notifications to send to customers on the successful execution of the activity. Configure SMS, email, WeChat, and/or Mobile Push templates accordingly.

Configure customer activity for points allocation at the transaction item level

To allocate points at the transaction item level, you need to have a forward case in which the transaction item is enabled. To issue points on a transaction item based on the item price enable Use proportions.

📘

  • Transaction item is available only for forward cases (Forward to set action).
  • Use proportions and Maximize point allocation options are visible only after you enable Enable transaction item.
459 365
  1. Enable transaction item: Enable this option to issue points at the line-item level.
  2. Use proportions: Enable this option to split points according to the price of transaction items. For example, consider a transaction with a bill amount of $300 consisting of two line items lineitem1 of $100, and lineitem2 of $200. If points allocation is 10% of the transaction amount, then 10 points will be issued for lineitem1 and 20 for lineitem2.
  3. Maximize point allocation: Enable this option to set a cap on points allocated to customers.
  4. Enable tender unroller: Enable this option to configure rules on payment modes.

Limit points issual per customer for each set

You can limit points issued to customers on transaction amount, line-item amount, and tracker value for each set and subset separately per customer.

📘

  • After adding and deleting the capping value, click Save.

The following are the different capping configurations supported.

  • Total Points capping: Limit the maximum amount of points allocated to a customer across all actions inside a set and all its subsets. This is applicable for all sets of the TransactionAdd customer activity.

To limit total points per customer for a condition in the TransactionAdd customer activity, do the following.

  • On Workflow, select TransactionAdd customer activity. Click +Add capping.

  • In Add capping page, click Total points.

  • In Total points, set the limit per customer.

  • Click Save.
  1. Source value capping
    Set a limit on the value based on which points are calculated and awarded to customers. For example, if there is x% discount on bill amount and source value is set as 5000, the customer receives x% on bill amount or x% on 5000 as points (whichever is lower). This is applicable for Set1 and its subsets of the TransactionAdd customer activity.

To limit points per customer for a condition in the TransactionAdd customer activity.

  • On Workflow, select TransactionAdd customer activity. Click +Add capping.

  • In Add capping page, click Source value.

  • In Source value, set the limit per customer.

  • Click Save.

Sum of tender amounts
This option lets you limit points based on eligible payment methods. For example, issue points for the payments through ABC credit card up to 10000 of the cumulative transaction amount (from the configured time).

This is applicable for Set1 and its sub-sets of the TransactionAdd customer activity.

To limit points per customer on tracker values TransactionAdd customer activity.

  • On Workflow, select TransactionAdd customer activity. Click +Add capping.

  • In Add capping page, click Sum of tender amount.

  • In Sum of tender amount, enable/disable the toggle button to include/exclude the tender mode. Choose the tender mode from the drop-down options.

  • Click Save.

Tracker source value
This option is available for TrackerSet to limit issuing points on tracker value. For example, you can have a tracker condition to capture the quantity of petrol and limit points to issue per customer for up to 1000 liters of petrol. You can define multiple tracker conditions for a set.

This is applicable only for the sub-sets of TrackerSet (TransactionAdd customer activity).

To limit points per customer on tracker values:

On Workflow, select TransactionAdd customer activity.

Select sub-set of TrackerSet, click +Add capping.
In the Add capping page, click Tracker source.

Choose the Tracker for which you want to set the limit. After selecting the tracker a text box appears.

Enter the capping value in the text box.

Expiry Conditions

To configure expiry conditions, do the following.

  1. On Intouch, navigate to Menu > Loyalty+ > Programs.
  2. In Programs, select the program you want to edit.
  3. Click Edit Program.
  4. Click Points.
  5. Click Add Expiry Conditions.

In Name, enter the condition name.
In Description, describe the condition.
In Select module for this condition, select the module (Loyalty+/Engage+) for which the condition is applicable.
In Expire Pts. Based on, select your preferred option to define the criteria for points expiry.

OptionDescription
Event DatePoints expire on the configured date based on the last activity (transaction/registration) done by the customer. For example, if a customer buys a shirt on June 10, 2021, then the validity period for points for this customer can be set on any day after this transaction was made.
Rolling Expiry from Event DateThe current date of points expiry is reset to a new date based on the recent transaction date. That is, if a customer earns points before the expiry of existing points, the validity of all points will reset to the new points expiry date.
For example, if a customer who made a transaction on June 10, 2021, has their point expiring on July 10, 2021, but they again made a transaction on July 7, 2021, then customers’ existing points along with the newly acquired point will have a new validity period, based on the transaction made on July 7, 2021.
Note: Only the points that were issued via rolling strategies are extended.
Membership Event DatePoints expire automatically when the membership expires. This is usually used for membership-based loyalty. For example, if a customer has subscribed to a Platinum membership with a Digital store, and has his/her membership expiring in January 2022, then the points earned by this customer also expire in January 2022.
Customer's registration datePoints will expire on the registration date of the customer. This registration date refers to the date on which customer got enrolled or registered into the loyalty program. This will be same for all tiers.
Fixed datePoints will expire on a fixed date. This fixed date will be selected here, and every year points will expire on this date. This will be same for all tiers.

Enable Same for all Tiers.
In Time Unit, select your preferred option to set the validity period for points.

OptionDescription
DaysPoints expire after the configured number of days.
For example, if a customer makes a transaction on July 1, 2021, and the Days for expiry is set as 10, points will expire on July 11, 2021.
MonthsPoints expire after the configured number of months.
NOTE: Points will expire only on the last day of the month,
For example, if a customer makes a transaction on July 10, 2021, and Months for expiry is set as 1, points will expire on August 31, 2021.
DatePoints expire on the configured date.
For example, if a customer makes a transaction on June 1, 2021, and the Date for expiry is set as August 10, 2021, then points will expire on this fixed date only.
NeverPoints will never expire for the customer.

In Expire Pts. at the end of, enter the days or number of months for points to expire.
For Date, you have to select a date on which points expire. For Never, there is no configuration required.

Click Done.

Create Redeem Conditions

Redeem conditions allow you to configure points conversion ratio, eligibility criteria, and limit for points redemption. The eligibility criteria could be current points, lifetime points, or lifetime purchases.

You can configure points redemption to do the following.

  • Set-point conversion ratio
  • Define the minimum points a customer should earn.
  • Limit the number of points redemption per transaction.
  • Redeem points in multiples of 'X'.
Example
  • Customers need at least 150-lifetime points to be eligible for redeeming points
  • Redemption is allowed only in multiples of 50, and
  • A maximum of 100 points can be redeemed per transaction
  • At least one redemption strategy should be created in a loyalty program. An error is shown if you run the loyalty program without any points redemption strategy.
  • For MLP, points redemption strategies created in a program cannot be used in other org programs, not even in the org's default program.

To configure redeem conditions, do the following -

  1. On Intouch, navigate to Menu > Loyalty+ > Programs.
  2. In Programs, select the program you want to edit.
  3. Click Edit Program
  4. Click Points.
  5. In How much is each point worth?, specify the points conversion ratio (in terms of org's base currency). It is recommended to use a simple conversion ratio such as 0.1, 0.2, 0.5, 0.75,1.
296
  1. Click Add Redeem Conditions.
446
  1. In Name, enter the condition name.
  2. In Description, describe the condition.
  3. Enable Same for all Tiers

The condition becomes relevant for all tiers. If disabled, the condition works only for the selected tier.

164
  1. In Minimum Points to redeem, enter the minimum current points redeemable by customers. For example, if you set 50, a customer cannot redeem less than 50 points.
283
  1. In the Redemption limit, enter the maximum current points redeemable by customers. For example, if you set 100, customers cannot redeem more than 100 points per transaction.
278
  1. In the Points balance required, enter the minimum current points that a customer should have to allow redemption.
278
  1. In Allow redemption in multiples of, enter the multiples in which the customer can redeem points. For example, if 10 is multiple, then the customer can redeem points only in multiples of 10 (10/20/30/40…).
274
  1. In Lifetime points required, enter the total points that customers should earn to allow redemption.
276
  1. In Lifetime purchases required, enter the total purchases that customers should make to allow redemption.
281
  1. Click Done.

Configure Customer Activity for Points Redemption Condition

Once you create a points redemption condition, you need to configure the PointsRedemption event on the Customer Activity page to define when to execute the redemption condition.

  1. In Customer Activity, select Redeem points.
  2. Create a ruleset, and inaction set the execute action as Redeem Points.
  3. Click Save & Continue.
1169

You can also configure notifications to be sent to the respective customer on the successful execution of the event. You can notify through SMS, email, or WeChat.

Set points redemption threshold per customer

You can limit the number of points to redeem per customer for the current day, last x days, calendar week, and calendar month.

To limit points per customer, follow these steps.

  1. In Customer Activity, select Redeem points.
  2. In the Expression editor, define the condition using any of the following expressions.
  • Day limit: currentCustomer.pointsRedeemedToday
  • Weekly limit (Calendar week): currentCustomer.pointsRedeemedInCalendarWeek
  • Monthly Limit (Calendar month): currentCustomer.pointsRedeemedInCalendarMonth
  • In the last X days: currentCustomer.pointsRedeemedInPastDays(<No. of days>)
  1. Configure the actions to execute, click Save & Continue, and then Reconfigure the program.

Create Return Conditions

Return conditions allow an org to define conditions on the reissue of points after a customer returns a transaction or transaction line item.

Points are returned in two ways as explained in the following.

Reverse points
Reissue Points
Also see:

Configure customer activity for points reversal

Reverse points
You can reverse the redeemed points, such that the points expiry for those points is restored to the original. There are some configurations for points reversal depending on the reference transaction number.

Redemption without reference transaction number: If redemption is made without any transaction number then you can reverse points on the basis of redemption ID using the option Redemption reference captured in the bill. Points expiry for reversed points is restored to the original without altering the expiry date.
Redemption with reference transaction number: If redemption is made with transaction number then you can reverse points on the basis of redemption ID using the option Redemption reference captured in the bill. Points expiry for reversed points is restored to the original without altering the expiry date.
Prerequisites for points reversal support
Enable Allow_points_redemption_reversal config on EMF settings. Only the back-end team has access to this page. Please raise a ticket if you want this to enable.
Enable V2 API as points reversal is supported only in V2.0.
Enable Redemption reference captured in the bill on Points Return (Loyalty+)page.
Reissue Points
In a case where no transaction or redemption reference number is available, you can reissue points and set an expiry strategy. Hence, reissued points will have a new expiry date.

To configure points return, follow these steps.

On Intouch, navigate to Menu > Loyalty+ > Programs.
In Programs, select the program you want to edit.
Click Edit Program
Click Points.
Click Add Return Conditions.

Enable Return Used Points.

In Return used points based on, select any of the following options based on which points are returned.
Points tender mode: To reissue redeemed points in form of currency relevant for the org. You need to set the expiry strategy for the reissued points in Select expiry strategy for reissued points.
Redemption Reference in the Bill: To reverse redeemed points with the redemption reference number captured in the transaction. The expiry strategy will also be reversed to the original.
Bill Number in Redemption API: When a customer returns a transaction for which certain points are redeemed, it is required to return those redeemed points. Hence, to reverse points, you need to configure the reference number to be considered for redemption.

In Expiry condition for returned points., define how reissued points will expire for the chosen return method.
Click Done.
Configure customer activity for points reversal
In Customer Activity, two actions are supported for points reversal - 1. Reverse points and 2. Send message.

To configure events for points reversal, follow these steps.

In Workflow, go to Customer Activity and click TransactionAdd.
Select Redeemed points get reversed.

In Condition, leave the Expression and Expression equals to default - true. No rules are applicable for points reversal.
In Points redemption reversal action, leave Points Expiry to the default option. This will return the expiry of the reverse points to the original expiry.
In Channels, set the message you want to send to customers for points reversal. For more details on channel configuration, see Communications.
Click Save to save the changes.

Advanced Settings for Points

Points round off settings

Define how many decimal points are supported for points you issue. 0 is for no decimal, 1 is for one decimal point, 2 is for two decimal points, 3 is for three decimal points. For example, if 50.3458 points have to be allocated to a customer.

Round Decimals value0123
Points round-up in each case5050.350.3450.346

To configure points round-of settings, follow these steps.

  1. On Intouch, navigate to Menu > Loyalty+ > Programs.
  2. In Programs, select the program for which you want to set the points round-off setting and click Edit Program > Advanced settings.
1096
  1. Navigate to the Points page.
  2. Choose the decimal places using the drop-down list. that appears on the earn conditions. By default, the system calculates to 3 decimal places.
976
  1. Click Done.

FAQs

Can I limit the number of times my customer can earn points? You can limit the number of points a customer can earn in the points earning condition. However, there is no option to limit the number of times the points are issued for a customer.
What is the use of proportion and max point allocation? Use Proportion lets you issue points based on the line item amount. The Maximum points allocation is to set a threshold value for the number of points a customer can earn.
How is the Transaction Points Allocation action different from Allocate Points? **Transactional Points** - Points you earn as per the configured ruleset for making a transaction.

Allocate Points - Points you can assign on the transaction amount and custom field values based on the configured ruleset.