Skip to main content
This is a paid plugin from the in-app Plugins marketplace. It installs free for Extended License holders; on a Regular License you purchase it (or upgrade your license) before installing.

Introduction

Coupons lets you give customers percentage-off discount codes at checkout. You create the codes, set how much they take off, cap how often they can be used, and either publish them for everyone or share a private code with one customer. The discount is applied on the checkout page before any payment gateway is contacted, so it behaves the same across every gateway you have enabled. Coupons are deliberately simple and safe: they are percentage-only (so one code works in any currency) and apply to one-time plans only (prepaid and lifetime). Monthly and yearly subscriptions never show a coupon field.

What it adds

  • Coupons dashboard — Admin hub under Finance: headline stats plus the full, searchable list of codes.
  • Create Coupons — generate one code or a whole batch, and set the discount, usage limits, expiry and code format.
  • Redemptions log — a running record of every successful coupon use across the platform.
  • Checkout coupon field — the “Have a coupon?” box customers see when buying a one-time plan.
  • Profile section — where customers find codes shared with them and their own redemption history.
Coupons build on the platform’s billing and checkout, which come from the SaaS Business plugin. If SaaS isn’t installed and enabled there’s no paid checkout for a coupon to discount — enable SaaS first.

Core concepts

A few rules shape everything else. Understanding these first makes the rest obvious.
  • Percentage only. Each code takes off a fixed percentage from 1% to 100% — there are no fixed-amount coupons, so currency never matters.
  • One-time plans only. Coupons apply to prepaid and lifetime plans. Monthly/yearly subscriptions are never eligible and never show the field.
  • One use per customer. A given customer can redeem a given code only once.
  • Total-use cap. Each code has a maximum number of redemptions across all customers.
  • Recorded on success only. A code is marked used only after checkout actually completes — an abandoned or failed payment never consumes it.
  • Open vs private. An open code can be used by any eligible customer up to its cap; a private code is tied to one customer’s email and only they can see and use it.

Installation

Coupons is distributed through the in-app plugin marketplace — installation happens inside your MagicAds admin. There’s no third-party download.
1

Open the Plugins marketplace

Sign in as an admin and go to Admin → General Settings → Plugins. Find the Coupons card in the marketplace catalog.
2

Install / activate

Click Install on the Coupons card. What happens depends on your license and purchase state:
  • Free / already owned → installs directly.
  • Paid → routes you to the plugin checkout to complete the purchase.
  • Extended License holders → plugins flagged “free for Extended License” install without an extra purchase.
Behind the scenes the platform downloads the archive, unpacks it, runs its setup, registers the admin routes, and adds the Coupons setting with a safe default (the customer-facing feature starts off).
Installation only makes the admin area and routes exist. The coupon field stays hidden from customers until you enable the feature (next section) — but you can still create codes in the admin right away.
If the Plugins page shows “This plugin is free only for Extended License holders”, you’re on a Regular License and must purchase Coupons (or upgrade your license) to install it.
To remove the plugin later, click Uninstall on the same card.

Configure Coupons

There’s no API key and no external service to set up — Coupons runs entirely inside MagicAds. Configuration is a single switch at Admin → General Settings → Plugins → Coupons. Toggle Enable Coupons and click Save.
Turning the feature off does not delete or deactivate any codes. It only hides the customer-facing field and profile section — existing codes simply stop being usable at checkout until you turn it back on.
Once installed, a Coupons entry appears in the admin sidebar under the Finance group. That’s where you create and manage every code.

Creating coupons

Go to Admin → Finance → Coupons → Create Coupons. The form is grouped into three parts.

General

Quantity & usage rules

Code format

Control how the generated codes look. Ambiguous characters (like 0/O and 1/I) are excluded automatically so codes are easy to read and share aloud. A live Preview shows an example code as you adjust these. When you click Generate, the plugin creates the requested number of unique codes and returns you to the dashboard.
Generating a batch (e.g. 500 codes) with Total Uses per Coupon set to 1 gives you a set of single-use codes for a campaign — handy for one-per-person giveaways or influencer drops.

Sharing a code with a specific customer

You can tie a code to one customer so it only works for them and shows up on their profile. There are two ways to do it:
  • At creation — fill in Share with a User on the Create form with the customer’s email.
  • After creation — on the Coupons dashboard, open a code’s actions menu, choose Share with user, then enter the email.
A shared code becomes private: only that customer can apply it at checkout, and it appears in the Coupons section of their profile so they can find and copy it. Open codes (no owner) can be used by any eligible customer, up to the total-use cap.

Using a coupon at checkout

This is the customer-facing experience once the feature is enabled. When a customer chooses a prepaid or lifetime plan and lands on checkout, a “Have a coupon?” box appears alongside the billing details and payment method. On monthly or yearly plans the box doesn’t appear at all — coupons don’t apply there.
1

Enter the code

The customer types the code into the coupon box and clicks Apply.
2

See the discount

On success, the order summary updates to show the subtotal, the coupon discount (with the code and percentage), and the new total due today. If the code is wrong, expired, used up, or not theirs, a clear message explains why.
3

Pay the discounted amount

The customer picks a payment method and pays. The gateway charges the already-discounted total — the discount is applied before the gateway is ever contacted, so it works the same on every provider.
The customer can click Remove at any time to drop the coupon and return to the full price.
A coupon can be used only once per customer. If the same customer tries to reuse a code they’ve already redeemed, checkout will tell them it has already been used.

When a coupon covers the full price (100%)

If the applied code is for 100%, the total becomes zero — so there’s nothing to charge. In that case:
  • The payment-method section is replaced with a “No payment required” notice.
  • The button changes to Activate plan.
  • On confirm, the plan is granted instantly without contacting any payment gateway, avoiding zero-value charge errors.

After checkout

Once the purchase completes:
  • The coupon is marked used — and only now, never before. An abandoned or failed payment never consumes it.
  • The order/transaction shows a small note with the coupon code and the percentage applied.
  • The code appears in the customer’s redeemed coupons history on their profile.

Tracking usage & reporting

Admin dashboard

Admin → Finance → Coupons shows headline stats at a glance: Below the stats, the full list of codes is searchable and sortable, and each code shows its discount, uses against its cap, whether it’s open or shared, its status and its expiry.

Per-code detail & customer profile

Open any code to see its settings and the list of customers who have used it. A separate Redemptions log on the dashboard shows every use across all codes — who used it, which code, the percentage, the amount saved and when. Each customer’s profile also has a Coupons section showing codes shared privately with them (which they can copy) and their history of redeemed codes.

Go-live checklist

1

Install the plugin

Admin → General Settings → Plugins → Coupons → Install.
2

Enable the feature

Coupons config → turn on Enable CouponsSave.
3

Create a code

Admin → Finance → Coupons → Create Coupons. Set the percentage, usage limits and code format, then Generate.
4

(Optional) Share it

Share a private code with a specific customer by email, or leave it open for everyone.
5

Verify as a customer

Log in as a customer, start checkout on a one-time plan (prepaid or lifetime), apply the code, and confirm the discounted total.
Once every step above is green, Coupons is live and customers can start redeeming codes.

Troubleshooting

A coupon is only ever consumed on a successful checkout. Applying a code and then abandoning the purchase — or a payment that fails — never uses up the code.