If you want to create a loyalty program that is extensive in functionality and rewarding for your customers, then the MyRewards points and reward plugin for WooCommerce is the best. You can offer your customers points on multiple actions, such as orders, signing up, amount of money spent, past orders, and product reviews.
Admins can also manage all points and rewards on a single screen and add/subtract points. It also has a premium version available that provides advanced features such as create badges, set expiration dates, include widgets.