Earning Rules
Earning Rules define ways for customers to earn points.
To create a new Earning Rule, go to the Reward Points > Earning Rules and press the button Add New. Fill in the following fields:
General Information (common for all types of rules)
- Rule Name - name of the rule. Used only for internal purposes.
- Type - type of the rule. There are following types of rules:
- Behaviour Rule - points can be earned for customer's actions.
- Product Rule - points can be earned for buying specific products.
- Cart Rule - points can be earned for cart amount or contents.
- Is Active - rule status.
- Active From, Active To - period of rule activity.
- Websites - websites where rule will be active.
- Customer Groups - customer groups for which rule can be applied.
- Stop further rules processing - if enabled, there are no more rules will be applied after this rule.
- Priority - order which will be used for rules sorting before applying.
Each type of rule have it's own purpose and use scope.
- Behaviour rule. It triggers on certain events, that resemble customer's actions - signing in, or writing a review for example.
- Product rule is the most simple of them. It features a hint on product pages (and on a categories - it, however, depends from theme), which shows, how much customer will receive points for buying that product. At the cart and checkout stage this rule calculates points amount only from product prices, and includes only tax, included to that price. Shipping charge and separate taxes are skipped.
- Cart rule. It does not feature hint on product page, because is applied only to cart in a whole. Therefore, points amount in this rule type is calculated from subtotal - e. q. actually paid money amount, which can include shipping fees and taxes.
Behaviour Rules
Award points to customer for their actions.
Conditions
- Event - customer's action which can trigger the rule. Available actions are:
- Rates a product
- Signs up
- Logs in
- Votes in poll
- Sends product to friend
- Signs up for a newsletter
- Tags a product
- Writes a review
- Places an order
- Has a birthday
- Is not active for long time
- Referral signs up to website
- Referral makes first order
- Referral makes any order
- Likes a page with Facebook
- Tweets a page with Twitter
Note: Events "has a birthday" and "is not active for long time" are executed using crontask, once a day.
- Conditions - customer's properties, that can be used to make rule application more precise. Available properties are:
- Group
- Lifetime sales
- Number of Orders
- Is subscriber to newsletter
- Is referral (e. q. whether he is invited to the store by other customer)
- Is referee (e. q. whether he invited to the store one or more other customers)
- Number of Reviews
- Balance points amount
- Number of referred friends signups
- Number of referred friends orders - number of orders, placed by customers
- Sum of referred friends signups - total money amount of orders, placed by customers
- Number of referred friends ordered at least once
Actions
- Number of points to give - number of points that customer receive if rule is applied.
- Maximum number of earned points for one customer per day - limit the number of points gained by customer per day.
If the limit is exceeded, points will not be added. - Assign customer to Group - allows to automatically transfer customer to desired Group on rule triggering. It is extremely used for planning Threshold Rules (e. q. when customer reaches a certain amount sales, for example) and Referral Policy.
For example, you can create the following behaviour rules in your store:
- Write a review and receive 10 points
- Refer a friend and receive 10 points when your friend makes first order
Product Rules
Award points for buying particular product. This type of rule is recommended, when products are presumably simple and have fixed prices.
Conditions
Can contain either single condition, or their combination. Rule can be applied, only if all of them are met.
- Conditions - product's properties, that can be used to make rule application more precise. Available properties are:
- Category
- Product Type (e. q. Simple, Virtual, Bundle, etc.)
- SKU - can contain one or more SKU's. When use one SKU condition should use "is" and "is not" operators, when more than one - "is one of" or "is not one of".
- Attribute Set - product attribute setup, created at Catalog -> Attributes -> Attribute Sets
- Quantity
- Base Price - base price of the product, set at the General tab in product's properties
- Special Price - special price, used for actions and sales
- Final Price - actual price, calculated when Tier of Custom prices are used
- Base Image
- Base Image Size
- Small Image
- Small Image Size
- Thumbnail
- Thumbnail Size
- PHP Condition
"PHP Condition" used, when need to filter products on a specific property - custom attribute, for example. Having attribute code, it is possible to get it by putting direct PHP expression in this condition's text field.
Here is the universal expression for any product attribute:
$object->getAttributeText([ATTRIBUTE_CODE]) == [ATTRIBUTE_VALUE]
Attribute codes can be seen at Catalog -> Attributes -> Manage Attributes. For example, to get attribute with code "manufacturer" and check, if it is equal "Adidas", we can write down:
$object->getAttributeText('manufacturer') == 'Adidas'
Also, other product's attributes can be retrieved using this special condition, if the corresponding method exists in Magento API. Quick reference can be found there: Mage_Catalog_Model_Product
Actions
- Customer Earning Style - algorithm to calculate the number of earned points.
- Give X points to customer
- Give points amount, equal to X percent of price
- For every Y, give X points
- Number of Points (X)
- Step (Y)
- Maximum Distributed Points - maximum number of possible earned points for current rule.
For example, you can create the following product rules in your store:
- Buy product A and receive 100 points.
- Buy any product with price above $100 and receive 100 points.
- Buy any product in the category Electronics and receive 1 Reward Point for each spent $1.
Cart Rules
Award points for the total amount of actually spend money at the cart. This type of rule is recommended, when using tier or special prices (with taxes, dependent from shipping country, for example), which can dynamically alter the actual product sell price.
Conditions
Can contain either single condition, or their combination. Rule can be applied, only if all of them are met.
- Conditions - cart's properties, that can be used to make rule application more precise. Available properties are:
- Subtotal
- Total Items Quantity
- Total Weight
- Payment Method
- Shipping Method
- Shipping Postcode
- Shipping Region
- Shipping State/Province
- Shipping Country
- Coupon Used - whether any Coupon Code was used by customer on this cart
- Coupon Code - whether particular Coupon Code was used by customer on this cart
- Discount Amount - whether some other discount was applied by customer on this cart
- Current Store - whether cart was created on particular storeview
- Current Currency - whether cart was created using particular Currency
Cart Rule also allows using current customer's properties as Conditions. They are identical to that described above in Behaviour Rules section.
Actions
- Customer Earning Style - algorithm to calculate the number of earned points.
- Give X points to customer
- Give X points for every spent Y
- Give X points for every Z quantity
- Number of Points (X)
- Step (Y)
- Quantity Step (Z)
- Maximum Distributed Points - maximum number of possible earned points for current rule.
For example, you can create the following cart rules in your store:
- Buy 3 products within one order and receive 100 points.
- For every spent $1, receive 1 point.
- For every ordered product, receive 100 points.
Notifications
Each earning rule has additional Notifications tab, where a history message can be specified, and a special email notification message, that will be sent to customer, if this particular rule applies.
Message in the rewards history field should contain a message, that will accompany corresponding Transaction, which is created on rule application, and can be seen in field Comment. This message can contain special variables, to make this message more personal:
- {{customer_name}} - translates to a current customer's name
- {{referred_customer_name}} - translates a name of a referral, if rule of referral used
These variables works only in History Messages.
Message for customer notification email field can contain an email template, which will be used for email notification about points awards. It also can contain variables, but the same, that used in regular transactional emails.
Your feedback about this content is important.
Let us know what you think.