Sell gift cards with amount buttons or an amount the buyer chooses, email them to the recipient with a personal message, and let shoppers spend them in the cart and checkout. Give customers store credit that comes off their next order on its own. A gift card is treated as a payment, not a discount, so your tax stays right.
v1.0.0 · WordPress 6.2+ · WooCommerce 8.8+ · PHP 7.4+ · free · submitted to WordPress.org, review in progress
Tick Gift card next to Virtual and Downloadable on a simple or variable product. Offer preset amounts as buttons ($25, $50, $100, $200), let buyers enter their own amount between your lowest and highest value, or both. Buyers choose someone else or themselves, add the recipient's name and email, their own name and a message of up to 300 characters. A card sold at a fixed price is worth its regular price, so a sale price sells a $50 card for $45.
One card per item bought, each with its own 16 character code made from letters and digits that cannot be confused, with an optional prefix such as XMAS. The recipient gets a WooCommerce email with the code, the amount, the message and the expiry date. The buyer sees who each card went to on the thank you page and in their order email, never the code itself. Cash on delivery orders send their cards only when you mark them Completed.
A gift card field sits in the classic cart and checkout and in the cart and checkout blocks, and a code typed into the coupon field works too. Applied cards show as rows in the order totals with a Remove link and the balance left. The card pays for everything on the order, shipping and tax included; when it covers the whole order no payment method is needed. Balances are taken when the order is placed, with a database check that stops two checkouts spending the same balance.
Add or deduct credit for any customer with a note and an optional email. Credit comes off their next order automatically while they are logged in, and they can choose not to use it. Customers can also move a gift card into their store credit from My Account, so they never need the code again.
Cancelled orders give gift card and credit amounts back automatically. Abandoned or failed payments release what they hold after an hour. For refunds, Return to card in the order's Gift cards box gives the gift card part back, so it is never returned twice. If the order that bought cards is refunded, its cards are disabled.
Passes the WordPress Coding Standards with zero errors and zero warnings and is clean against the official Plugin Check. An automated suite of more than 200 checks covers balances, checkout races, refunds and expiry, and independent security and functionality reviews ran before release.
No external services, no tracking, no account. Cards and history live in two tables on your own database, and they stay there if you remove the plugin unless you choose to delete them: unspent balances are money your customers hold.
Small scripts load only on gift card product pages and on the cart and checkout, and are kept out of minifier bundles so an update never serves a stale copy. Shop and catalogue pages are untouched.
Upload the zip under Plugins, Add New, Upload Plugin and activate it. WooCommerce must be active.
Edit or add a product, tick Gift card next to Virtual, and open the Gift card tab to set the amount buttons and the own amount limits.
Order a card for yourself to see the email, then spend the code in your cart or checkout.
Choose the expiry, when cards are sent and the field placement under WooCommerce → Gift Cards → Settings, and let the plugin create a balance check page.

Why it matters. Gift cards bring in new customers who were sent by your existing ones, money arrives before the goods leave, and most cards are spent with a little extra on top. Treating them as payments keeps your GST reporting clean.
Free, and ready to install today.
Free · WordPress 6.2+ · WooCommerce 8.8+ · PHP 7.4+ · submitted to WordPress.org, review in progress
Download free (.zip)Upload the zip under Plugins → Add New → Upload Plugin, activate, then tick Gift card on a product. No account required, no external services, HPOS compatible.
Because that is what it is. When someone pays with a gift card the goods are still sold at their full price and tax is still due on them; the card simply pays part of the bill. Coupons reduce the price, and with it the tax, which is wrong for gift cards. The plugin keeps the order's prices, shipping and tax, and takes the gift card off the amount left to pay.
Yes. The gift card field, the applied cards and store credit appear in the order summary of the cart and checkout blocks and the total updates straight away. The classic shortcode cart and checkout are supported too, and a gift card code typed into the coupon field is applied as a gift card.
The amount taken from the gift card stays reserved on the order for an hour (you can change this), so the customer can try again. After that, or as soon as the order is cancelled, the amount goes back on the card and the order goes back to its full total.
Refund the money through WooCommerce as usual. The gift card part is given back with one click, using Return to card in the order's Gift cards box, so a refund never gives it back twice. Cancelled orders give everything back automatically.
36 months by default, which meets the 3 year minimum that applies to most gift cards sold to consumers in Australia, and the expiry date is shown in the email, in My Account and on the balance check. Change it in the settings, or set 0 for cards that never expire. Give an expired card a new date and it comes back with its balance.
Yes, for a card sold at a fixed price: put the product on sale. The card is worth its regular price and the customer pays the sale price. Cards with amount buttons are worth the amount chosen.
Yes. A Pro add-on adds delivery dates, card designs (three starter designs included), printable cards, bulk codes, CSV import, refunds to store credit and expiry reminders. Everything on this page works without it. Ask us about Pro through the contact form.
It has been submitted to the official WordPress.org plugin directory and is in review. Until it is published there, download it from this page and upload it under Plugins, Add New, Upload Plugin. Once it is approved you will be able to install and update it from your WordPress dashboard.
Loyalty points, trade accounts, gift card kiosks, custom checkout rules - this is the kind of thing we build. Tell us how your store sells and we will come back with a plan and a fixed quote.