Points & Rewards

Extension page: http://ecommerce.aheadworks.com/magento-extensions/points-and-rewards.html

This Magento extension offers points & rewards system implemented as well as the referral program. Points can be awarded automatically (and manually by the merchant) for making purchases, reviewing products, inviting friends, or carrying out any other admin-specified action. Later these points can be redeemed for discounts.


  • Allows customer to earn points for purchasing products
  • Allows customer to spend earned points on real products purchasing
  • Allows customer to earn points for registration, voting, products reviewing, newsletter subscribing, and products tagging
  • Allows customer to earn points by rules
  • Allows customer to invite friends and earn points for invintation
  • Allows store administrator to enlarge or reduce customers points balance
  • Reward Points tab in customer account which allows checking points balance as well as history and subscribing for points updates
  • Invitation tab in customer account which allows customers to invite friends and view previous invitations
  • Rates system with ability to set exchange rules from points to money and vice versa
  • Ability to limit maximum available points balance
  • Ability to limit points amount available to redeem
  • Ability to add related blocks displayed on the cart page by any rule
  • Ability to convert P&R coupon codes to points
  • Ability to enable/disable earn rate if rule matched
  • Automatic Points balance update if an order is refunded/cancelled (Separate options for Cancelling Earned points and Refunding Spent points)
  • Integration with Market Segmentation Suite
  • Backend option for calculating the earned points amounts "Before Tax" or "After Tax" 
  • Current Points Balance widget
  • Points can be added on Customer's Birthday event
  • Multistore support
  • Complete transactions history
  • Notifications about balance update and other events
  • Extension block displayed on the Cart page
  • "Learn more" link in the customer's area
  • Ability to specify rewarded points expiration date
  • Ability to reset all transactions with 1 click
  • If grand total is 0 the payment method is set as 'Free'
  • Easy 2-minutes installation
  • Meets Magento programming practices for most versions and customizations compatibility
  • 100% open source


Clear the store cache under var/cache and all cookies for your store domain. Disable compilation for Magento 1.4+. This step eliminates almost all potential problems. It's necessary since Magento uses cache heavily.

Backup Your Data

Backup your store database and web directory.

Download and Extract

Download and unzip extension contents on your computer and navigate inside the extracted folder.

Upload Files

Step 1

Navigate inside step_1 directory. If you use a different from default theme - be sure to rename step_1/app/design/frontend/default/default and step_1/skin/frontend/default/default folders to your store's values. Using your FTP client upload content of step_1 directory to your store root.

Step 2

Navigate inside step_2 directory and upload its content to your store root the same way as it was done in Step 1. 

Step 3

One more time clear the cache under var/cache and login to Magento backend (admin panel). In case you have already been logged in during the installation, logout and login back.

Set up cron

The Rewards & Points extension uses cron for checking points expiration and sending notifications about points expiration. Read the following instructions on setting cron job for your Magento store: http://www.magentocommerce.com/wiki/how_to/how_to_setup_a_cron_job . If you have already configured cron jobs for your Magento installation then you can skip this step.

Generally it would be enough to run in SSH console of your server: 

crontab -e

And add the following line: 


*/3 * * * * wget 'http://your-store/cron.php'
Don't forget to confirm saving request when exit.
If you are not sure how to do that or experiencing any troubles with it, contact your server administrator or hosting provider regarding the matter.

Once cronjob is set up and running, the extension will be saving every action in the log, which can be viewed in 
System->Configuration->aheadWorks Extensions->Info->aheadWorks Extensions logging->View log. If you think that the extension does not work as expected, it is recommended to check the log first. If it is empty or contains very few records, it may indicate that your cronjob is not set or set improperly. Normally, every cron launch should add 1 or more entries. Actual quantity of the entries depends on the number of processed events per given cronjob.


Basic configuration

Enable the extension on the System > Configuration > aheadWorks Extensions > Points & Rewards page.
To give customer an ability to earn and spend money while buying orders, you must configure earn and spend rates at Promotion > Rewards > Points Rates.

To define whether points can be earned or spent considering tax, go to System->Configuration->aheadWorks Extensions->General:

  • Points earning calculation: defines whether to add the points for the subtotal+tax or for the subtotal only.
  • Points spending calculation: defines whether to apply the points before or after tax calculation, i.e.:
    After tax: Grand Total = (Subtotal + TAX - Discounts) - Points * Spend Rate + Shipping Price
    Before Tax: Grand Total = (Subtotal - Discounts) - Points * Spend Rate + TAX + Shipping Price

Earning points

  • Earning points for different actions made by customer:
    Go to System > Configuration > Points & Rewards > Earning Points. Here you can set the amount of points earned by customer for different actions and limit points amount which can be earned daily.
    *Newsletter signup and Customer registration actions can be applied only once.
    Also you can restrict reviews points gaining only for those who purchased products in your store. 
  • Earning points for friend invitation
    Go to System > Configuration > Points & Rewards > Refferal System. Firstly, you can enable or disable referral system. Also you can set up the following fields:Invitation to registration conversion - amount of points, which will be gained by customer for invitation.
    Invitation to registration conversion points/day limit - limit of points, which can be gained per day.
    Invitation to purchase conversion - if the invited person makes a purchase, percent or fixed amount of this purchase can be given to the customer.
    If you want to give points to customer only for the first purchase of the invited person, use the First Order option. Also use Each order. If you want to add fixed amount of points to customer for the purchase of the invited person, you can set Invitation to purchase conversion fixed amount, also you can set Invitation to purchase conversion (% from amount). You can use both these options together.
  • Earning points for products purchasing
    If earning rates are set (Promotions > Rewards > Points Rates > Earn Rate), customer can gain points for every purchase. After order has been invoiced, an amount of points will be added to customer's reward points balance according to the earn rate.
  • Earning points for rules
    Go to Promotions > Rewards > Reward Rules. You can configure rules, and if the conditions of the rule are met, points are given to customer after order invoicing.
  • Adding/deducting points by admin
    Go to Promotions > Rewards > Transaction. Here you can see a list of transactions for the whole store. If you want to add a transaction to change the customers' balance, click the Add New button. Then select customers, insert comment and points amount. Save the transaction.

Spending points

Points can be spent by customer at checkout page (Payment section). If customer has points and their amount is more than minimum reward points balance available to redeem (System > Configuration > Points & Rewards > Minimum reward points balance to be available to redeem), an additional Use my Reward point(s) checkbox and input for points will appear. Customer can set points amount which can be spend on order.

Note: Customer can pay with points for subtotal only. Shipping price and taxes are not included.


Go to System > Configuration > Reward Points > Notifications. Set "Enable notifications" to "Yes". You can choose a sender of the email, email for balance updates, email for points expiration, and email for invitation. If you want a customer to receive emails after his registration by default, set "Subscribe customers by default" to "Yes". If you want an email to be sent to customer whose points expire in several days automatically, you can set a required days amount in the "Email sending before points expiring (in days)" field.

Resetting all transactions

Go to System > Configuration > Reward Points > Advanced. Here you can reset all your transactions data. This operation is unrecoverable, all extension data will be lost!!!

Important notes

Points section is located at the Payment Section at the Checkout page (4th step), so if payment method with its own checkout (e.g. PayPal) is used and it is selected on the Shopping Cart page (e.g. the Check out with PayPal button is clicked) , points can not be applied as discounts. The best solution here is to disable this payment button for the Shopping Cart page (Example for PayPal Express at Magento 1.5: go to System > Configuration > Express Checkout Settings > Shortcut on Shopping Cart and set 'No')

For Magento 1.3 only: the extension is NOT compatible with PayPal.

Please, note that different Payment Gateways process the order payments in different ways, some of them do not accept the zero-subtotal orders.
If you allow your customers to fully pay the order amount with the reward points, please, make sure that your payment methods accept such orders.
In case your payment provider turns out not to allow it, you can consider the following scenarios:
- allow Zero Checkout payment method at your store;
- specify the point usage limit via the "Amount available for paying at checkout by points, %" option in System-> Configuration-> aheadWorks Extensions-> Points And Rewards-> General backend menu;
- try switching the "Points spending calculation" option between "Before Tax" and "After Tax" to see whether the payment method starts accepting the orders.


If you just need to temporary disable the extension, you can just do the steps 1-5, without deleting the files of the extension.

  1. Disable compilation, in case it is enabled.
  2. Login to your FTP, navigate to app/etc/modules/
  3. Open the file AW_Points.xml and change the following line:




    Now your Magento is unaware of the existence of this module.

  4. Clear the cache under var/cache
  5. Make sure that the site is working properly, otherwise roll back the changes and apply to our technical support.
  6. If everything works fine, it is safe to delete the files of the extension.
  7. In case you need to clean the database, backup your database and then run the following queries in MySQL: 


    DROP TABLE IF EXISTS `aw_points_coupon`;
    DROP TABLE IF EXISTS `aw_points_coupon_transaction`;
    DROP TABLE IF EXISTS`aw_points_transaction_orderspend`;
    DROP TABLE IF EXISTS `aw_points_transaction`;
    DROP TABLE IF EXISTS `aw_points_invitatioin`;
    DROP TABLE IF EXISTS `aw_points_rate`;
    DROP TABLE IF EXISTS `aw_points_rule`;
    DROP TABLE IF EXISTS `aw_points_summary`;
    delete from core_resource where code ='points_setup'; 

    Note, if you are using the table with prefixes, you must specify them in all table names. 

    If you are not sure how to do that or expect any troubles with it, please contact your server administrator regarding the matter.
    If you remove the tables as it is described above, you will need to create all rules again after the extension is reinstalled. All transactions history will be lost as well.


After the extension installation the store gives an error, or blank page, or suggests to start Magento installation procedure.

    Change the owner of the extracted extension files to the web server user and set 775 permissions on them. Clear the store cache and try again.

After the extension installation I receive 404 error in System->Configuration->Points & Rewards.

    Logout from backend and login back again.

There is no aheadWorks extensions under my configuration section, or having the extension tab clicked I get a blank page, or Access Denied error.

    Clear the store cache, browser cookies, logout and login again.

I've set up everything correctly, inserted the HTML code but there is nothing on that page.

    Clear the store cache, clear your browser cache and domain cookies and refresh the page.

My configuration changes do not appear on the store.

    Clear the store cache, clear your browser cache and domain cookies and refresh the page.


You can always find the latest version of the software, full documentation, demos, screenshots and reviews at http://ecommerce.aheadworks.com
License agreement: http://ecommerce.aheadworks.com/LICENSE-M1.txt
Copyright © 2013 aheadWorks Co. http://www.aheadworks.com