Well, I have not look into the matter that much but WooCommerce Points and Rewards seems reasonable (although pricey) choice since it is developed by the Woocommerce company.