Gift Cards and Vouchers for WHMCS
Sell gift cards as a WHMCS product, email a unique code to the recipient, and let them redeem it to account credit, with balance and expiry tracked.
What will the gift card module do?
It turns a gift card into a product in your WHMCS store. The buyer picks a value you set, enters the recipient's name, email address and a short message, and pays the invoice. Once it is paid, the module creates a unique code and emails it to the recipient, straight away or on a date the buyer chose. The recipient signs in, enters the code, and moves all or part of the value to their account credit, which WHMCS applies to orders and renewals. The rest stays on the code until it expires.
It is built to order: you get the license key at purchase, once I have checked your account, and the download within 10 business days.
What does WHMCS already do, and what does this add?
WHMCS keeps a credit balance on every account, filled through Add Funds or by staff, and applies it to new invoices automatically. Its promotion codes give a discount on an order, but they hold no balance and cannot be bought for someone else. This module adds paid-for codes that a recipient redeems into that credit balance.
What is included?
| Part | What you get |
|---|---|
| Gift card product | Values you set, in each currency you sell in |
| Recipient details | Name, email, message and send date taken at order |
| Codes | Long random codes, created only after payment |
| Review hold | Optional staff approval before codes are sent |
| Redemption | Client area page, full or partial amount to credit |
| Balance and expiry | Tracked per code; staff can extend expiry |
| Vouchers | Codes issued by hand, singly or in a batch |
| Admin list | Buyer, recipient, value, balance and status; resend or void |
Who is it for?
Hosts and agencies whose customers want to pay for hosting or a domain on someone else's behalf, such as a client covering a freelancer's hosting. Vouchers issued by hand also cover giveaways, partner deals and goodwill credit.
What do you need, and what are the limits?
Requirements: WHMCS 8.13 or 9.x (I confirm your exact version at purchase), PHP 8.1 or newer, and the standard WHMCS cron for scheduled sends.
Limits: a code is redeemed only by an account in the currency it was bought in, and credit cannot be turned into cash. Redemption adds credit without a second payment record, so the sale is counted once, on the buyer's invoice. Some countries and US states set a minimum validity for gift cards or forbid expiry, and vouchers may be taxed at sale or at use, so match the expiry and tax setting to the rules where you sell. The review hold, limits on wrong code attempts and WHMCS's own order fraud checks guard against stolen cards.
It costs $49 once for a lifetime license with twelve months of updates and support, and a seven-day refund window. I check each account by hand, which can take up to 24 hours, before the license key is issued, and the download follows within 10 business days of purchase.
Key features
- Gift cards sold as a WHMCS product in values you set
- Recipient name, email, message and send date taken at order
- Unique code emailed after the invoice is paid, now or on a set date
- Optional staff review before any code is sent
- Redemption to account credit from the client area, in full or in part
- Balance and expiry date tracked for every code
- Vouchers issued by hand, singly or in a batch
- Admin list to search, resend, extend or void codes
- Limits on wrong code attempts per account and IP address
Why customers buy this module
- →Customers can pay for hosting or domains on someone else's behalf
- →Gift money becomes credit that WHMCS applies to invoices on its own
- →Every code's balance is visible, so nothing is redeemed twice
- →Giveaways and goodwill credit go out as codes instead of manual edits
Frequently asked questions
How is a gift card different from a WHMCS promotion code?
A promotion code is a discount on an order, set by you and used at checkout. A gift card is money someone has paid for. Redeeming it adds that amount to the recipient's credit balance, which WHMCS spends on any invoice, renewals included, and the code keeps track of what is left on it.
Can the recipient use part of a gift card and keep the rest?
Yes. When they redeem, they choose how much to move to account credit, and the remaining balance stays on the code until its expiry date. Staff see the original value, every redemption and the balance left in the admin list, and can extend the expiry date if you allow it.
When will I get it, and what if you can't deliver?
It is built to order. I check your account by hand, which can take up to 24 hours, then issue the license key, and the download follows within 10 business days of purchase. If I do not deliver it in that time, you get a full refund. Once it is delivered, the store's 7-day refund window applies.
Technical specifications
- WHMCS
- 8.13 and 9.x (confirmed at purchase)
- PHP
- 8.1+
- Redeems to
- WHMCS account credit, full or partial
- Code delivery
- Email to the recipient, now or on a set date
- Availability
- Built to order, delivered in 10 business days
- License
- Lifetime, 1 year of updates and support included
- Delivery
- License key after a manual account check (up to 24 hours); download when built
- Refund window
- 7 days
Related modules
SM Reseller Hub: White-Label Reseller Platform for WHMCS
SM Reseller Hub lets your WHMCS clients resell hosting, servers, licences, SSL and domains under their own brand. They get a white-label store and client area on their own domain, a REST API for their own website and a reseller dashboard, while you keep control of prices, margins, payments and every customer.
Abandoned Cart Recovery Emails for WHMCS
I built this module to win back WHMCS orders that stall at checkout. It detects abandoned carts, sends an email sequence you write, can add a discount code, and reports which emails bring buyers back.
Bulk Edit and Mass Update Tool for WHMCS
An admin-only WHMCS module I built for changes too large to click through and too risky for raw SQL. Filter the records, preview the result, apply it as a background job, and reverse it later if needed.
