Skip to content

Magento 2 Reward Points Manual

reward points mageworx

Introduction

Magento 2 Reward Points allows you build a powerful loyalty system and reward your customers for activity in your store.

These reward points can get added to the customer account balance (i.e. for completing such actions as placing an order, leaving a review or subscribing for newsletters), as well as assigned to it on special occasions (i.e.birthdays). Additional conditions can be applied so that the customer gains a reward only if they are met.

The extension supports different methods of assigning the reward points, such as:

  • fixed number of points;

  • number of points for a specific amount spent;

  • number of points for a specific qty of items;

  • number of points for a specific amount/qty of items starting with a certain amount/qty.

The customers can check their reward points balance in the special tab of their customer account. These points can be easily applied or canceled during the checkout.

Requirements and Installation

Reward Points supports both Community and Enterprise edition of Magento starting from version 2.2. The current version of Magento installed on your website can be found in the lower right corner of any backend page.

Reward Points extension has 3 separate ways of installation:

1) Copy the code (ready-to-paste package);
2) Use MageWorx Repository;
3) Use local Composer.

Extension Configuration

Backend Setup

Log into the Magento Admin panel and go to STORES ⟶ Configuration ⟶ MAGEWORX ⟶ Reward Points. The extension configuration has 3 tabs: Main Settings, Expiration Date Settings and Email Settings.


Main Settings


reward points mageworx

The Enable setting provides the possibility to temporary disable/re-enable the extension functionality from the backend.

Static Block for "My Reward Points" Section sets a selected static block to be shown at My Reward Points tab in the customer’s account. It supports all the blocks that are shown on the CONTENT ⟶ Elements ⟶ Blocks grid.

Cover with the points allows applying credits to an order’s subtotal and/or shipping and/or tax. The system analyses this selection and applies credits to what is chosen. For example, if the store owner doesn't want to allow customers to pay shipping costs using credits, you need to remove the selection ‘Shipping & Handling’. Thus, customers will need to pay for shipping using other payment methods.

Points Exchange Rate provides the possibility to change the cost of 1 Reward Point in the Website Base Currency.

Assign to Customer Groups sets customer credit functionality to the selected customer groups. If not selected, the customers won’t be able to use internal credits.

The next section of the extension's configuration provides the setup for the messages that will be visible for the customers in the header of the website and in the minicart popup.

reward points mageworx

If the Display Points Message setting is enabled, the text will appear in the header of the webpage.

reward points mageworx

This message can be changed in the Points Message field. The following variables are available: [p] displays the number of points the customer will receive after completing an order; [c] displays the reward value expressed in the store currency.

Display Mini-cart Points Balance Message adds the message to the minicart popup.

This message is shown if the customer has the reward points in the account. The text can be changed in the Mini-cart Balance Message field. Same variables can be used here as well.



This message is shown if the customer doesn't have the reward points in the account. The text can be changed in the "Zero Balance" Message for Mini-cart field.

The last extension's configuration block presents these settings:

reward points mageworx

If the Annul the received points upon the full order refund is enabled, the reward points will be removed from the customer account in case they were applied to the order that was refunded afterward.

The Return Spent Points in Case of Order Cancellation configuration makes it possible to return the points the customers received for the orders if the order has been cancelled.

The Time of Day for Birthday Greetings specifies the time when the reward points will be added on the customer’s birthday.


Expiration Date Settings

reward points mageworx

If Enabled, these settings provide the possibility to give the rewards points the expiration period. The store owner may change this time interval by giving the number of days for the rewards points in the Default Expiration Period configuration block.

The situation when the store owner decides to change or enable the expiration date settings is quite possible. The logic of such store points management is configured in the Update Existing Expiration Dates setting.

  • If No is selected, the customers with both expired and not expired balances the new expiration period won't change. It will be changed for them only in case some new reward points will be added to their account.

  • If For balances if expiration date exists setting is selected, this new expiration period will be changed only for those customers who have some points available with the expiration date set in their customer account. All of them will be able to use their points during the time interval that was defined in the Default Expiration Period setting.

  • If For all balances setting is selected, this new expiration period will be changed for all the customers, even for those that don’t have the expiration date set in future in their customer account.

The Send Expiration Date Email setting allows sending the emails about the approaching expiration date. The number of days to send the messages before the actual expiration can be setup in the Notify Customers about Expiration Date configuration.

Email Settings


reward points mageworx

The Email Sender configuration provides the possibility to select the desired sender of the emails that the customer receives when the reward points are credited to the account. These emails can be modified in STORES ⟶ Configuration ⟶ GENERAL ⟶ Store Email Addresses

Store Email Addresses

Templates provide the possibility to change the default email messages. For this, go to MARKETING ⟶ Communications ⟶ Email Templates

reward points mageworx

Click the Add New Template button.

reward points mageworx

In the Template dropdown, select the desired template and click the Load Template button. Edit the Template Content and preview the changes by the Preview Template button at the top of the page. Once the template is saved, it will be visible in the Templates Dropdown.

reward points mageworx

Reward Points Rules

To add, delete or modify the Reward Points rules, log into the Magento Admin panel and go to MARKETING ⟶ MageWorx Reward Points ⟶ Rules.

reward points mageworx

Please note that during the initial setup this grid will be empty.

To create a new reward points rule click the Add New Rule button.

The rule configuration consists of 4 sections.

Rule Information

reward points mageworx

Rule Name allows you to assign a unique name to the created rule.

The Description field provides the possibility to add the rule decription. It will be visible only in the back-end.

The store owner can temporarily disable or re-enable the rule using the Active toggle.

The Websites setting specifies the website where the rule should be applied to.

The Customer Groups configuration allows applying the rule to the specific customer groups only.

The store owner can restrict the usage of the rule by date intervals using the From and To date pickers.

If several rules can be applied and their priority needs to be handled, it can be managed by the Priority setting. The bigger the value, the higher the rule will be in the order of priority.

If Allow Notification is enabled, then the email will be sent to the customer when the reward points are credited to the balance.

Personal Email Template adds the possibility to use the template that meets exactly this particular rule. If the Use Config setting is selected, the one in the extension configuration will be picked.


Actions

The extension supports the following events to reward your customers:

  • Place order
  • Customer birthday
  • Customer registration
  • Product review
  • Newsletter subscription

For all events you can set the amount of points you want to reward your customers with if the rule is triggered: reward points mageworx

The order placing configuration is more complicated and needs to be explained. reward points mageworx

Placed Order

reward points mageworx

If the "Placed Order" event is selected, the "Give Points" setting shows. It can be further configured depending on the desired condition.

  1. The Get X Points setting allows crediting the specific (X) number of reward points to any order.

  2. The Get X Points for every Y spent credits the specific (X) number of reward points to the order that is bigger than Y threshold.
    So, for instance, the X = 10 and Y = 50.

    Grand Total Reward Points
    $49 0
    $52 10
    $99 10
    $101 20

    If the grand total is $49, then the customer doesn't receive any reward points, for the grand total $52 the customer receives 10 reward points. The customer gets 10 points as well if the grand total is $99. For $101, the customer receives 20 reward points, and so on.

  3. The Get X Points for every Y spent starting from Z spent credits the specific (X) number of reward points to the order that is bigger than Z threshold for every Y sum.
    So, for instance, the X = 10, Y = 20 and Z = 100.

    Grand Total Reward Points
    $99 0
    $119 0
    $139 10
    $141 20

    If the grand total is $99, then the customer won't receive the reward points as it is smaller than Z ($100). If the total is $119, then the customer won't receive the reward points as well, because 10 points are credited for every $20 starting from $100 and $119 is less then $120. If the total is $139, then 10 reward points will be credited to the account. 20 reward points will be added for the $141 grand total, and so on.

  4. The Get X Points for every Y quantity credits the specific (X) number of reward points to the order that has more than Y products in sum.
    So, for instance, the X = 10 and Y = 5.

    T-shirts Quantity Bags Quantity Pencils Quantity Total Quantity Reward Points
    3 1 0 3+1=4 0
    5 4 0 5+4=9 10
    7 3 1 7+3+1=11 20

    If the customer buys 3 T-shirts and 1 bag, then no reward points will be added as the total quantity 4 is less than Y. If the customer buys 5 T-shirts and 4 bags, then 10 reward points will be added (total quantity is 9). For the order with 7 T-shirts, 3 bags and one pencil 20 points will be added (total quantity is 11).

  5. The Get X Points for every Y quantity starting from Z quantity credits the specific (X) number of reward points to the order that has more products than Z threshold for every Y products.
    So, for instance, the X = 10, Y = 5 and Z = 10.

    T-shirts Quantity Bags Quantity Pencils Quantity Total Quantity Reward Points
    4 5 0 4+5=9 0
    4 5 5 4+5+5=14 0
    4 4 8 4+4+8=16 10
    7 9 5 7+9+5=21 20

    If the customer buys 4 T-shirts and 5 bags, then no reward points will be added as the total quantity 9 is less than Z (10). If the customer buys 4 T-shirts, 5 bags and 5 pencils, then the customer won't receive the reward points as well, because 10 points are added for every 5 products starting from 10 and the total quantity (14) is less than 15. If the customer purchases 16 products in total, then 10 reward points will be added to the account. 20 reward points will be added for the 21 products in total, and so on.

The "Placed order" event shows the additional field, the Calculation Type so that the quantity of reward points can be calculated as the fixed value or as the percent of the grand total.

The last, "Discard subsequent rules" configuration stops any other reward points rules from being processed in case several rules conditions are met.

reward points mageworx

This section limits the products from the whole cart that should be counted. If you have several products in the cart, and only one meets these conditions, it will be handled as if it had been the only one in the cart. If the action conditions are empty, the price will be calculated from the grand total (no rules = no limitations). If the action conditions exist and don't include the valid items, the rule will be ignored and not shown at all.

Conditions

This workspace has the same structure and logic as the previosely described Actions section. The difference is that these condition limits the whole cart so that if the condition is true, the reward point rule will be met. After that the extension will check the valid products (if any) from the Actions tab. Otherwise, the rule will be ignored and not shown at all.

Leave conditions empty to reward your customers for purchasing all products.

For better understanding, please check our quick cheat sheet for the Reward Points rules.

Labels

reward points mageworx

The Labels Section is designed for different frontend names of the reward points rule on different store views. Some rules may need to be translated and, for this matter, this section allows specifying the appropriate name. Please note that if the string is empty, the Default Rule Label for All Store Views will be used.

Backend Experience

The extension is implemented into the base Magento backend workspaces extending the standard functionality.

Order Page and Credit Memo

If the customer receives reward points for any order, this will be shown in the Notes section on the Order page:

reward points mageworx

If the customer purchases some products using the reward points, this information is available on the order totals block.

reward points mageworx

This feature provides the possibility to detect whether the reward points were used for this order or not.

If the store owner wishes to give the reward points back for the refunded order where the points had been used, it can be done on the refund totals block on the credit memo page.

reward points mageworx

The max value for the refunded reward points equals the quantity of the points spent when this order was made.

Customer Information

Log into the Magento Admin panel and go to CUSTOMERS ⟶ All Customers. Our extension adds the special tab that shows the current reward points balance directly on the grid:

reward points mageworx

Select the customer whose balance you need to edit. The customer reward points are shown on the special Reward Points tab.

reward points mageworx

The workspace consists of three tabs.

Reward Points Balance

reward points mageworx

This tab shows the grid with the customer's reward point balance on any website within one Magento installation. If the expiration period has been enabled, it will be shown here as well.

Update Reward Points Balance

reward points mageworx

This tab provides the possibility to manually credit or deduct the reward points.

The Store configuration provides the possibility to add the points to the customer in the specific store view.

The Update Points supports both positive (to credit) and negative (to deduct) values.

The store owner can specify the New Expiration Period. Please note that in case the customer already has some available reward points (both without and with the expiration date set), the new period will be applied to them as well.

If the Send Notification is set to Yes, the customer receives the email with the default email template.

The Comment for Customer allows the store owner to write some particular text for the customer to be visible in the customer account.

Reward Points Transaction

reward points mageworx

This tab shows the grid with the customer's reward points transactions history.

Point Transaction

To observe the full log of the transactions made by your customers, log into the Magento Admin panel and go to MARKETING ⟶ MageWorx Reward Points ⟶ Point Transaction.

reward points mageworx

Import/Export Reward Points

Log into the Magento Admin panel and go to SYSTEM ⟶ Data Transfer ⟶ Import/Export Reward Points.

reward points mageworx

To check the structure of the reward points, click the Export Reward Points Balance button or the Download Example CSV. The CSV structure is as follows:

"Website Code","Customer Email","Points","Action","Comment for Customer (not required)"
"base","[email protected]","20","replace","Hello! Your balance now is 20 points"
"base","[email protected]","10","add","Hello! 10 points were added to your balance"
"base","[email protected]","5","deduct","Hello! 5 points were deducted from your balance"

The action column manages the balance change. For instance, assume that the original balance is 100 and the value of the number points is 25.

  1. The replace value changes the customer's balance to the exact value of points (25)

  2. The add sums the number of points to the original one (100+25=125)

  3. The deduct subtracts it (100-25)=75.

If the deduct value is bigger then the original one, the final value will stay 0.

Frontend Experience

The extension is implemented into the base Magento frontend workspaces extending the standard functionality.

Customer Account

The customer reward points are shown on the special Reward Points tab on the customer information page.

reward points mageworx

Here, the customer can observe the exact quantity of the reward points and the reward point transactions history. The expiration date, if enabled, is shown here as well. The comment for сustomer from the backend is shown in the Message column.

Checkout

reward points mageworx

The extension shows the Reward Points block on the checkout with the possibility to apply them to get the discount.

reward points mageworx

The customer can cancel the usage of the reward points usage if necessary.

If the customer doesn't have any reward points at all, this block will be hidden.

Cheat Sheet

We've made the special quick guide for the reward points rules to understand them better. Please, check it here.

API Support

1) Get applied Reward Points amount for the current Customer cart:

GET /V1/mw-rewardpoints/mine/points

2) Add a custom amount of the Reward Points to the current Customer cart:

PUT /V1/mw-rewardpoints/mine/points/:pointsAmount

3) Add all customer's Reward Points to the current Customer cart:

PUT /V1/mw-rewardpoints/mine/points/all

4) Remove applied Reward Points from the current Customer cart:

DELETE /V1/mw-rewardpoints/mine/points

5) Get applied Reward Points amount for a specified Customer cart:

GET /V1/mw-rewardpoints/carts/:cartId/points

6) Add a custom amount of the Reward Points to a specified Customer cart:

PUT /V1/mw-rewardpoints/carts/:cartId/points/:pointsAmount

7) Add all customer's Reward Points to a specified Customer cart:

PUT /V1/mw-rewardpoints/carts/:cartId/points/all

8) Remove applied Reward Points from a specified Customer cart:

DELETE /V1/mw-rewardpoints/carts/:cartId/points

9) Get a customer Reward Points balance for a specific website ID and customer ID:

GET /V1/mw-rewardpoints/balance/customer/:customerId/website/:website_id

10) Change a customer Reward Points balance for a specific website ID and customer ID:

POST /V1/mw-rewardpoints/balance

Got Questions?

MageWorx offers FREE lifetime support and updates for any extension developed for Magento. Need help with the extensions? Feel free to submit a ticket from https://www.mageworx.com/support/

MageWorx offers outstanding services developing custom-tailored solutions for Magento platform to attain your eCommerce objectives. Our professional impassioned team provides profound and custom oriented development of your project in a short timeframe.