Open Loyalty
Ask or search…


In this section, you will learn how Achievements work in Open Loyalty, as well as how to configure them according to your preferences; how to create new Achievements, and assign them to your Campaign.


The Achievements module allows members to participate in campaign-based challenges, which, once completed, give users additional benefits in the form of extra units, coupons, and other rewards.
You can have a maximum of 1,000 active achievements per tenant.
Achievement-based rules can be especially effective in boosting buying frequency and delighting your customers. This feature enables loyalty managers to define different types of achievements and configure campaigns using a new set of conditions and triggers.
Examples of challenges for users to complete include:
  • Finalizing 4 transactions per month 4 months in a row with a minimum transaction value of $20.
  • Transactions/actions done in a row e.g. logging into the mobile application seven days in a row, or purchasing a product every day of the weekend;
  • Reaching a specific milestone e.g. placing five orders above $100 or adding a minimum of 10 product reviews.
  • Buy 10 products from your favorite brands ( Quantity of products with given Custom Attribute)
  • Spend total of 100$ on products with given SKU
  • Track a workout of at least 30 minutes every day for 5 days in a row

Difference between Achievement and Campaign

  • Campaign - processes and makes decisions based on only one trigger - Transaction/ Internal event/ Custom event/ Achievement. For example:
    A transaction is sent to the system. Once the conditions are met, the system assigns units to the member account.
  • Achievement - Processes and makes decisions based on multiple triggers spread over time. For example: Several transactions are sent to the system over the course of the month. If the final condition is met, the achievement is completed.
It’s worth noting that the Achievements module itself doesn’t assign units to members’ accounts. For Achievements to be able to issue units to an account, it has to be assigned to at least one campaign. Customers then receive rewards after completing the set challenge.
The achievements module supports cases where we want to aggregate event attributes, rather than the event itself. e.g:
  • Buy 10 products from your favorite brands ( Quantity of products with given Custom Attribute)
  • Spend a total of 100$ on products with the given SKU

Multi-dimensional Achievements

The Achievements module provides the ability to create, monitor, and award members for completing specific challenges. One of the unique features of the Achievements module is the capability to define multi-dimensional achievements. These achievements are composed of several rules and each can be based on different types of actions - triggers. Members must satisfy all of these conditions overtime to complete the achievement and get the badge, units, or reward.
Here is an example of a multi-dimensional achievement: a member must walk 10 kilometers and purchase 3 products in the sports category.
This achievement combines two actions - physical exercise tracked via the custom event, and shopping behavior tracked via the transactions sent to the system.
To transform the achievement into a multi-dimensional achievement simply click the ADD RULE button.

Assigning achievements to campaigns

Assigning Achievements to campaigns is done in the ‘Campaign trigger’ section of the Campaign editor. In order to do so, select Achievements from the list of different triggers.
If we assign an achievement to a referral campaign, the trigger will always be the action of a new member.

Achievement components

  • Name - Name of the achievement
  • Description - Description of the achievement
  • Timeframe - Conditions of the achievement activity. Conditions available in this section are based on the Open Loyalty Language. If None is selected, the achievement is always active (If the Active field is set to True). With Timeframe, you can set the achievement to be active only on certain days of the week, such as Monday, Wednesday, and Friday:
  • Active - true or false - general activity of the achievement
  • Trigger - achievement trigger:
    • Transaction - achievement responds to system events based on the transaction
    • CustomEvent - achievement responds to custom events based on a predefined custom event schema.
  • Achievement counting:
    • Sum of event occurrence - determines the number of occurrences of the trigger required to achieve/complete the achievement.
    • Sum of event attribute - determines the value of the attribute of the trigger required to achieve/complete the achievement.
      • Occurrence - determines the time interval/manner in which the trigger should occur Overall or Consecutively
        • Overall - Total number of events occurring
          • Amount - the number of occurrences of the trigger that should occur and meet the conditions, to complete the achievement.
        • Consecutive day, week, month, year - Number of sequential events in a period of time.
          • Amount - Number of events in a time period
          • Value - Number of time units in which the event has to be executed e.g Log in at least 1 time per day for 7 consecutive days or make one transaction a month for a year
If you would like to edit these settings after members start participating we advise you to create a new Achievement.
  • Goal corresponds to the number of referees. Each referee needs to complete one transaction - this section allows you to define whether the goal applies to the single referred user.
The text presented at the bottom of the Achievement Goal will allow you to visualize the defined goal. eg. "Need to perform an action at least 2 times per week for 2 consecutive weeks."
  • Condition - the section allows you to define additional conditions for a given achievement trigger. For Transaction, these are conditions limited to the transaction context object. e.g. transaction.purchasePlace. For CustomEvent, these are the parameters specified in the custom event schema. Expressions can also be used to set the condition.
  • Limits - the option to set a limit on the amount of completion of an achievement. The limit can be set by:
    • Periods (days, weeks, months, years),
    • Total - In total,
    • No limit - No limit.
    The periods in the limit are counted on a calendar basis, this means that:
  • days are counted from 00:00:00 to 23:59:59
  • weeks are counted from Monday to Sunday
  • months are counted from the first to the last day of the month
  • years from January 1 to December 31 An example of a limit that allows you to complete an achievement only once a week: