PHPackages                             viraxpress/rewardpoints - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. viraxpress/rewardpoints

ActiveMagento2-module[Utility &amp; Helpers](/categories/utility)

viraxpress/rewardpoints
=======================

ViraXpress Reward Points Module for Magento 2

1.0.0(1mo ago)00Apache-2.0PHPPHP ~8.1.0||~8.2.0||~8.3.0||~8.4.0

Since Apr 17Pushed todayCompare

[ Source](https://github.com/viraxpress/RewardPoints)[ Packagist](https://packagist.org/packages/viraxpress/rewardpoints)[ RSS](/packages/viraxpress-rewardpoints/feed)WikiDiscussions main Synced today

READMEChangelog (1)DependenciesVersions (2)Used By (0)

ViraXpress Reward Points
========================

[](#viraxpress-reward-points)

A Magento 2 extension to manage customer reward points with flexible earning rules, product-based rewards, analytics, and cart redemption.

Description
-----------

[](#description)

`ViraXpress/RewardPoints` provides a comprehensive loyalty reward program for Magento 2 stores. Store owners can define rules for earning points through orders, product purchases, reviews, newsletter signups, wishlist sharing, and referrals. Customers can track their balance and history from their account dashboard, and redeem points at checkout.

---

Features
--------

[](#features)

- Flexible reward rules for orders, products, reviews, referrals, newsletter signups, and wishlist sharing
- Product-based rules with conditions support
- Customer exchange rate configuration per store view and customer group
- Per-order claim limits and minimum points threshold
- Reward point expiry with automated email reminders
- Reward Points Analytics dashboard with earned vs spent chart
- Customer account page with balance summary, history, and email opt-in settings
- Reward point messages on product detail and listing pages
- Multi-store and customer group targeting support

---

Compatibility
-------------

[](#compatibility)

- Magento 2.4.x
- PHP 8.1, 8.2, 8.3

---

Installation
------------

[](#installation)

1. Install the extension via Composer:

    ```
    composer require viraxpress/rewardpoints
    ```
2. Run the following commands from your Magento root directory:

    ```
    php bin/magento module:enable ViraXpress_RewardPoints
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy
    php bin/magento cache:flush
    ```
3. Go to **Stores &gt; Configuration &gt; ViraXpress &gt; Reward Points** to configure the module.

---

Usage
-----

[](#usage)

### Admin — Managing Reward Rules

[](#admin--managing-reward-rules)

Navigate to **Marketing &gt; Reward Points &gt; Manage Reward Points Rules** to manage earning rules.

There are two types of rules:

**Standard Reward Rules** are triggered by customer actions:

- **Get points for order** — Awards points when a customer places an order.
- **Get points for registration** — Awards points when a new customer registers.
- **Get points for newsletter signup** — Awards points when a customer subscribes to the newsletter.
- **Get points for sharing wishlist** — Awards points when a customer shares their wishlist.
- **Get points for referral** — Awards points when a customer refers a new user.

**Product-Based Reward Rules** are linked to product interactions:

- **Get points for approved product review** — Awards points once a submitted review is approved.
- **Get points for first product review** — Awards points only on the customer's first approved review.
- **Get points for product** — Awards points when a specific product is purchased.

Each rule (both types) supports the following configuration:

- **Rule name** and **Active** toggle
- **Action** — Select the earning action from the dropdown
- **Store View** — Apply to all store views or a specific one
- **Customer Group** — Target ALL GROUPS, NOT LOGGED IN, General, Wholesale, or Retailer
- **Start At / End At** — Define the active date range for the rule
- **Reward Points** — Number of points to award
- **Conditions** (Product-Based rules) — Use product attribute conditions to restrict which products qualify. Leave blank to apply to all products.

---

### Admin — Customer Exchange Rates

[](#admin--customer-exchange-rates)

Navigate to **Marketing &gt; Reward Points &gt; Customer Exchange Rates** to define how reward points convert to cart discounts.

Each exchange rate entry supports:

- **Active** toggle
- **Store View** scope
- **Customer Group** targeting
- **Exchange Rate** — The conversion value (e.g., points-to-currency ratio)

This allows different redemption rates for different customer groups or storefronts.

---

### Admin — Configuration

[](#admin--configuration)

Navigate to **Stores &gt; Configuration &gt; ViraXpress &gt; Reward Points** to manage global settings.

**General**

- Enable or disable the Reward Points module per store view.
- Set the **Reward Points Calculation** mode to either *Before Tax* or *After Tax*.

**Order Restriction**

- Set the **Minimum points required** for a customer to be eligible to place an order using reward points.
- Enable **Restrict Reward Claim Limit** to cap how many points can be redeemed per order.
- Set the **Reward Points Claim per order** value.

**Display Settings**

- Upload a custom **Content Icon** (JPG, PNG, GIF, SVG; max 4MB) that appears alongside reward point messages on the storefront.

**Customer Account Settings**

- Toggle **Show reward points rules and descriptions** to display earning rules in the customer account.
- Enter a **Reward point description** in HTML format — this content appears in the customer's *My Reward Points* page under "About VX Reward Points".
- Enable **Restrict reward points for all customers** to block point earning globally.
- Set a **Message to restrict** that is shown to customers when their access is restricted.

**Email Settings**

- Select the **Email Sender** identity.
- Enable **Send email on earning reward points** and assign the **Reward Earning Email Template**.
- Enable **Send email when reward points are nearing expiry** and assign the **Reward Expire Email Template**.
- Set **Email Alert Before Reward Points Expiration (Days)** — how many days before expiry the alert is sent.
- Set **When to send expiration reminder email** using shorthand format: `1d` for 1 day, `1h` for 1 hour, `1m` for 1 minute.

---

### Admin — Reward Points Analytics

[](#admin--reward-points-analytics)

Navigate to **Marketing &gt; Reward Points &gt; Reward Points Analytics** to view the loyalty performance dashboard.

The dashboard includes:

- **Summary cards** — Total Earned Points, Total Spent Points, and Net Balance.
- **Statistics bar chart** — Visual comparison of Earned vs Spent points over time.
- **Filters panel** — Narrow results by Store View, Customer Group, Report Type (Earned &amp; Spent), and Date Range. Click **Refresh** to update the chart.
- **Result Breakdown table** — Lists each time range with corresponding Earned, Spent, and Net point values.

---

### Frontend — Product &amp; Category Pages

[](#frontend--product--category-pages)

When a reward rule applies to a product, earning messages are automatically displayed:

- On the **Product Detail Page** — two separate banners appear below the product title, one for purchase-based points (e.g. *"Claim 10 Reward Points on purchasing this product"*) and one for review-based points (e.g. *"Claim 10 Reward Points approved product review"*).
- On **Category / Listing Pages** — a compact "Claim X Reward Points" line appears on each eligible product card.

The icon shown alongside these messages is the one configured in **Display Settings**.

---

### Frontend — Customer Account (My Reward Points)

[](#frontend--customer-account-my-reward-points)

Logged-in customers can access their reward points from **My Account &gt; My Reward Points**.

**Reward Points Summary**Displays the customer's current net balance along with a breakdown of Total Earned (positive) and Total Spent (negative).

**Reward Points History**A paginated table showing each point transaction with the following columns:

- **Date** — Timestamp of the transaction
- **Change** — Points added or deducted (e.g. +10, -10)
- **Comment** — Description of the action (e.g. *"Product rewards for Order #000000027 on purchasing product Joust Duffle Bag"*)
- **Action** — The rule type that triggered the change (e.g. Product 3, Order, Redeemed)
- **Points Left** — Running balance after the transaction
- **Expiring (in Days)** — Days remaining before those points expire (N/A for non-expiring transactions)

Click **Show More** to load older history entries.

**About VX Reward Points**An informational section populated from the admin-configured HTML description. By default it includes rules such as no minimum balance for redemption, non-transferability, exclusion of taxes and shipping from calculations, and registered-customers-only eligibility.

**Reward Points Email Settings**Customers can manage their notification preferences:

- **Email me when I earn reward points** — Receive a notification each time points are added.
- **Email me before my reward points expire** — Receive a reminder before expiry.

Changes are saved via the **Save Changes** button.

---

Support
-------

[](#support)

For support, please contact ViraXpress at  or refer to the license agreement.

License
-------

[](#license)

This extension is licensed under the ViraXpress license agreement. See  for details.

###  Health Score

40

—

FairBetter than 86% of packages

Maintenance95

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

54d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/dfa4cf8adc10a78f5b538cdf399be5d1059c4cfecf5ca5e38e44351bcaf84367?d=identicon)[viraxpress](/maintainers/viraxpress)

---

Top Contributors

[![viraxpress](https://avatars.githubusercontent.com/u/179798477?v=4)](https://github.com/viraxpress "viraxpress (2 commits)")

### Embed Badge

![Health badge](/badges/viraxpress-rewardpoints/health.svg)

```
[![Health](https://phpackages.com/badges/viraxpress-rewardpoints/health.svg)](https://phpackages.com/packages/viraxpress-rewardpoints)
```

###  Alternatives

[mhor/php-mediainfo

PHP wrapper around the mediainfo command

120589.5k7](/packages/mhor-php-mediainfo)[gpolguere/path-to-regexp-php

PHP port of https://github.com/component/path-to-regexp

2211.8k2](/packages/gpolguere-path-to-regexp-php)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
