Frequently Asked Questions About the Loyalty Microservice

Q)Can we create multiple loyalties with a different set of event types, action types, and priorities for each loyalty?
Yes, we can create multiple loyalties with a different set of event types, action types, and priorities for each loyalty.

Q)What is the priority in the Loyalty service? How does it work?
While creating a loyalty, we need to enter the priority number between 1 and 25 where 25 is the highest and 1
is the lowest in the priority order. The loyalty engine reads the active loyalty groups and active loyalty in it as per the priority order.

Q)What does “Stop further processing” indicates while configuring conditions in the Loyalty service?
While configuring conditions in the Loyalty service, we need to select a status, which allows us to stop further processing of the succeeding loyalty groups. The different options available are explained below:

  • Never – Whether or not the condition matches with the current loyalty group, continue to execute
    the succeeding loyalty groups. By default, this option will be selected.
  • Always – Whether or not the condition matches with the current loyalty group, the loyalty engine
    stops executing the succeeding loyalty group.
  • If condition matches – When the current loyalty group’s condition matches, the loyalty engine
    stops executing the succeeding loyalty group.
  • If stop condition matches – Enables you to define the stop condition. The loyalty engine
    stops executing when the stop condition matches. The user can specify the business rule that
    can stop the processing of the loyalty engine.

Q)What are the different types of transactions that are available?
The different types of transactions are:

  • EARNED – allocates the rewards to the user
  • APPROVED – approves the earned rewards
  • EXPIRED – expires the earned and approved rewards
  • FORFEITED – forfeits the approved rewards
  • CANCELED – cancels the earned rewards
  • BLOCK REDEEMED – blocks the reward redemption activity
  • REDEEMED – redeems the approved rewards
  • REVERSE REDEEMED – reverses the redeemed rewards in case of returns or cancelation

Q)Can we set the expiry dates for loyalty points? If yes, how?
Yes, we can set the expiry dates for loyalty points. While creating a reward, in the “Transaction Details” section, we need to select a transaction type and provide the expiration time. The expiration time is the number of days for which the loyalty points will be active.

Q)Do we have support to Opt-In and Opt-Out of any reward type by a customer?
Yes, we have support to the Opt-In and Opt-Out feature. This can be achieved by using the action type “Loyalty OptIn / OptOut Action”. And, we need to set the store property allowedRewardTypesForOptIn and collection property allowedRewardTypesForOptIn with the list of allowed reward types (LOYALTY, STORE CREDIT, etc.) for this feature.

Q)Which action type is used to set tier?
The action type “Set Tier Action” is used to set the tier of the customers.  In addition to this, you need to configure the store property tierConfigMap to hold the tier name and tier percentage of the users.

Q)Can we determine which products are eligible for earning and redeeming the loyalty points?
Yes, we can determine the products that are eligible for earning and redeeming the loyalty points. For this, we need to set the store property:

  • productPropertyToEarnRewards to set the products which are eligible for earning the loyalty points.
  • redeemloyaltyproperty to set the products which are eligible for redeeming the loyalty points.

Q)We need to let the user know the loyalty points that they will be earning before placing an order. Can we achieve this?
Yes, we need to set the store property fetchRewardsEventId to view the loyalty points that the customer will be earning before placing an order.



Revision History
2023-01-31 | AN – Page created and content added.