Referral Program
The referral program gives every customer a unique referral code and a shareable link. When a friend they invite signs up and/or places a qualifying first order, both the referrer and the referee can be credited to their wallet. The program is off by default and is configured from the WalletPro settings in WooCommerce.
Overview
Each customer has a stable referral code (an 8 character code generated the first time they need one and stored on their account). The code is turned into a shareable link by appending it as a ?wpref=CODE query argument to your store home page, for example https://yourstore.com/?wpref=AB12CD34. When someone opens that link, WalletPro stores the code in a browser cookie that lasts 30 days.
The reward is two sided. When a referral qualifies, the referrer is credited (ledger entry "Referral reward") and the referee is credited (ledger entry "Referral welcome"). Each side is only paid if its configured amount is greater than zero, so you can run a one sided program by leaving one amount at 0. All credits go through the wallet ledger as referral type entries and are subject to the same balance rules as any other wallet credit.
The program is off by default. Until you enable it and set a reward amount, no referral credit is issued. The customer Referrals page is still available, but with the program disabled no rewards will be awarded.
How It Works
- Customer A opens their Referrals page under My Account and copies their link, which carries their code as
?wpref=CODE. - Customer A shares the link. When a new visitor opens it, WalletPro saves the code to a cookie that persists for 30 days.
- The visitor registers a new account. WalletPro reads the code from the cookie at registration and attributes the new user to Customer A. Attribution is recorded only once per referee, and a self referral or a referral to the same email address is rejected.
- Depending on the configured trigger, the reward fires:
- On signup, immediately when the referee registers.
- On first order, when the referee's order is completed, provided the order total meets the minimum spend gate.
- When the trigger fires, both sides are credited (each only if its amount is non zero): the referrer gets the referrer reward, the referee gets the welcome reward.
A referee is rewarded only once per trigger. If the trigger is "first order", only the first qualifying completed order pays out; later orders from the same referee do not generate more credit.
Configuration
Referral settings live on the Referrals section of the WalletPro settings page in WooCommerce. The trigger is a text field that accepts one of three values: signup, first_order, or both.
| Setting | Description | Default |
|---|---|---|
| Enable referral program | Master toggle. While off, no referral credit is issued. | Off |
| Referrer reward amount | Amount credited to the referring customer's wallet when a referral qualifies. Set to 0 to skip the referrer side. | 0 |
| Referee reward amount | Welcome amount credited to the new customer's wallet when their referral qualifies. Set to 0 to skip the referee side. | 0 |
| Referral trigger | When the reward is issued: signup (when the referee registers), first_order (when the referee's order is completed and meets the minimum spend), or both. |
signup |
| Referral first-order minimum spend | Minimum order total the referee's first completed order must meet for a first-order reward. Only applies to the first-order trigger. Set to 0 for no minimum. | 0 |
| Per-referrer cap per 30 days | Maximum number of credited referrer awards a single referrer can earn within a rolling 30 day window. Once the cap is reached, further referrer awards are skipped until older awards age out of the window. Set to 0 for no cap. | 0 |
The minimum spend gate only applies to the first_order trigger. With the signup trigger the reward fires at registration, before any order exists, so there is no order total to check.
Setting Up the Referral Program (Merchant)
- Open the WalletPro settings in WooCommerce and go to the Referrals section.
- Check Enable referral program.
- Set Referrer reward amount to the credit you want the referring customer to receive (for example
10.00). - Optionally set Referee reward amount to also welcome the new customer. Leave it at
0for a referrer only program. - Set the Referral trigger to
signup,first_order, orboth. Usefirst_orderif you only want to pay out once a referee actually buys. - If you chose
first_orderorboth, set a first-order minimum spend to keep tiny orders from qualifying. - Set a per-referrer cap per 30 days if you want to limit how many awards one person can earn in a month.
- Save changes.
- Test with two accounts: copy one account's link, register the second account through that link, and (for the first-order trigger) complete an order for the second account.
After saving, open the Referrals page under My Account as a logged-in customer to confirm the code and the Copy Link button appear before announcing the program.
Customer Experience
The Referrals page
WalletPro adds a Referrals item to the WooCommerce My Account menu (it sits just before the Logout link) backed by a real account endpoint. The page is read only and always scoped to the logged-in customer, so a customer only ever sees their own referral activity. It shows three things: their code, their headline stats, and their recent referrals.
Code and Copy Link
The top of the page shows the customer's referral code and their full link, which is the store home page with their code attached as ?wpref=CODE. A Copy Link button copies the link to the clipboard, and a status message announces the result for assistive technology. The link is also rendered as a plain anchor, so it still works and can be copied manually if JavaScript is unavailable.
Stat tiles
Three tiles summarise the customer's results as a referrer:
- Friends invited, the number of distinct people attributed to this customer.
- Converted, the number of those friends who earned the customer at least one credited referrer side award.
- Earned, the total wallet credit the customer has earned as a referrer, shown as a formatted currency amount.
The "Earned" figure only counts credited referrer side awards. Welcome credits paid to the referees, and any awards that were later reversed, do not inflate it.
Recent referrals
Below the tiles is a list of the customer's most recent referrals (up to 10, newest first), one row per invited friend. If the customer has not referred anyone yet, a short empty state message is shown instead. Each row has four columns:
| Column | Description |
|---|---|
| Friend | The friend's name, masked to initials (for example "Jane Smith" appears as "J. S.") so the page never exposes a friend's full identity. Friends without a name fall back to a generic label. |
| Date | When the friend was first attributed to the customer, in the site's date format. |
| Status | Earned if the customer has been credited a referrer reward for that friend, otherwise Pending. A friend who signed up but has no qualifying first order yet, or whose only award was reversed, shows as Pending. |
| Earned | The amount the customer earned from that friend, as a currency amount. Pending rows show zero. |
Reward Reversal on Refund
If a qualifying order is refunded, WalletPro reverses the referral awards tied to that order:
- Each side that was credited for the order is debited back: the referrer for the referrer reward, and the referee for the welcome reward if one was paid.
- The matching referral records are marked reversed, so a reversed award no longer counts toward the customer's "Converted" count or "Earned" total, and its recent referrals row falls back to Pending.
- If a wallet does not have enough balance to cover the reversal, the debit is capped at the available balance. A wallet is never driven negative by a reversal.
Abuse Controls
Two guards limit abuse of the program:
- Self and same-email guard. A referral is only valid between two distinct accounts with distinct email addresses. A customer cannot refer themselves, and a code cannot be attributed to an account that shares the referrer's email.
- Per-referrer velocity cap. The optional per-referrer cap limits how many credited referrer awards one person can earn in a rolling 30 day window. When the cap is reached, additional referrer awards are skipped until earlier awards fall outside the window.
Merchant Analytics
Referral results roll up into the Wallet Program Analytics page under the WooCommerce menu. The Referral conversion section reports, for the selected date range:
- Signups, customers attributed to a referrer in the range.
- First-order conversions, attributed customers who went on to place a qualifying order.
- Conversion rate, conversions as a percentage of signups.
- Reward cost, the total referral credit issued in the range.