**Coupons** in your admin sidebar, under Marketing, are discount
codes. A trader types one at checkout and pays less for a challenge: a
percentage of the price, or a fixed amount off it.

You need the `view_coupons` permission to open the screen and `manage_coupons`
to create, change, switch, duplicate or delete a coupon. Somebody with only the
first sees everything, with the fields switched off and a line saying why. The
revenue in the list and the head, and the Redemptions tab, also need
`view_payments`, and the Activity tab `view_activity_logs`.

## The list

The screen opens on the list alone, across its whole width, and shows no
coupon in full until you pick one.

Each row is a coupon with its code and who it is for, the discount with the
minimum price and the challenges it covers, how often it was redeemed against
its limit, when it expires in your firm's time zone and how long is left, the
revenue it brought in per currency (when you may see payments), when it was
added and where it stands. As the list gets narrower the less important columns
leave first.

A coupon stands in one of five places, read in this order:

- **Expired**: its expiry has passed. Nothing else matters any more.
- **Used up**: it was redeemed as often as its limit allows.
- **Off**: somebody switched it off, so checkout refuses it.
- **Scheduled**: switched on, but its start has not come yet.
- **Live**: checkout accepts it now.

The line under the name counts every coupon, the live and scheduled ones, the
ones your team made when the platform made others too, and how often coupons
were redeemed in all. Live, scheduled and your team's are also filters: click
one to see only those.

Search finds a coupon by its code, its note, its ID, or the name, email address
or ID of the trader it is for. The filter menu sorts the list (newest, code,
most redeemed or expiring first) and narrows it by status, by kind of discount,
by who it was made for and by who can use it. Search, filters, sort and page
live in the address, so a link shows the same list.

Most coupons your team makes. The platform makes the others, and the filter
**Made for** tells them apart:

- **Event prize**: a coupon an event awarded to a trader.
- **Affiliate welcome code**: the discount a trader gets who signed up through
  an affiliate's link.
- **Waitlist reward**: a personal code for one signup on the waitlist.

`J` and `K` move through the list and Enter opens the lit coupon. Right click a
row for everything you can do without opening it: switch it on or off,
duplicate it, copy its code, ID or link, and delete it.

## A coupon

A coupon opens beside the list, which folds into a column, and has its own
address, so a link from a payment or the command palette opens on it. The cross
or Escape folds the list back to the same filters and page.

The head shows the code (click it to copy), where the coupon stands, and what
it takes off which challenges. Under it, what you would otherwise have to look
up: the trader it is for, the event or affiliate it came from, the waitlist
signup it rewards, whether the waitlist hands it out or a popup shows it,
whether it works once per trader, and who on your team made it. Each of those
opens where it lives, when you may see that screen. Then the discount, how
often it was redeemed with how many uses are left, the revenue with the number
of sales, the start and the expiry.

The button in the head is what you most likely want next: **Switch off** while
it is live or scheduled, **Switch on** while it is off, **Duplicate** once it is
used up or expired. The more menu holds the rest.

### Setup

The first tab is the coupon itself, saved with the save dock at the bottom.

- **The code**: what the trader types, in capitals, with **Generate** for a
  code nobody guesses. Codes are unique within your firm. The note is for your
  team only, up to 280 characters: who the code is for, or where it was shared.
- **Discount**: a percentage up to 100, or a fixed amount, taken in the
  currency of the challenge bought and never more than its price. A minimum
  price makes cheaper challenges refuse the code.
- **Who can use it**: anyone with the code, or one trader you pick from a
  search. A code for one trader does not exist for anybody else. When that
  trader is deleted the code stays theirs, so nobody can redeem it until you
  pick another trader or open it to anyone. Set how often it can be redeemed in
  all, and whether each trader may use it only once. A refunded purchase gives
  that use back.
- **When it works**: a start and an expiry in your firm's time zone, both
  optional, with **Now** for the start and one click for 1 day, 1 week, 2 weeks
  or 30 days. Turning **Switched on** off keeps a code in the list while
  checkout refuses it.
- **Challenges**: every challenge, including ones you add later, or only the
  ones you tick, grouped by program, with a find field and **Whole program** to
  tick a program at once. A challenge the coupon still names but that is no
  longer on sale is listed apart, to untick when you like.

The column beside the form shows the coupon as a trader meets it at checkout:
the code, the discount, who it is for, the price on the cheapest and the
dearest challenge it covers, and when it works. Under that are the terms in
short. Before you save it warns about:

- a missing code or discount, or a percentage over 100
- a code that makes a challenge free, especially one without a limit, and a
  fixed amount that covers the whole price of some challenges
- a fixed amount over challenges priced in more than one currency
- a code renamed after it was handed out, since the old code stops working
- an expiry before the start or in the past, and a limit already reached
- no challenge ticked, a minimum price no covered challenge reaches, and
  covered challenges that are switched off or no longer on sale
- a code for one trader with no trader picked yet
- a deal running on the same challenges at the same time, when that deal gives
  the lower of the two prices rather than taking the coupon on top
- a coupon that is switched off

Only what you changed is sent. If somebody switched the coupon off from the
list while you had it open, fixing a typo in the note does not switch it back
on.

### Redemptions

What the coupon brought in, per currency: the revenue, the number sold, what
the code took off, and how many traders used it. Refunded purchases, payments
still open and abandoned checkouts are counted in the line above. Under it,
each challenge bought with the code with what it sold, and the latest fifty
purchases with the trader, the challenge, every amount the payment recorded and
where it stands. Each purchase opens its payment. A change to the coupon later
changes none of this, because a payment keeps the prices it was made at.

### Activity

When the coupon was made and every change your team saved to it, each shown as
the old and the new value. The Activity log has the same lines with every
filter. A redemption is not a change, so it shows on the Redemptions tab
instead.

## A new coupon

**New coupon** opens an empty coupon in the inspector, and the save dock
creates it. It works from the moment you create it, unless you give it a start.

**Duplicate** opens a new coupon filled from another one: the next free code
(`SUMMER` becomes `SUMMER-2`), the note, the discount, the trader, the limits
and the challenges. A start or expiry that is still ahead is copied too, one
that has passed is left empty. The copy starts switched on. When the trader of
the original was deleted, the copy stays a code for one trader with nobody
picked yet.

## Switching and deleting

**Switch off** and **Switch on** act at once and keep everything else as it is.
An expired coupon cannot be switched: give it a new expiry instead, or
duplicate it.

**Delete** asks first and only works on a coupon nothing was bought with. A
coupon with purchases stays as the record of what they paid, and the menu says
why and to switch it off instead. The dialog says what else loses the code: a
popup that shows it, the waitlist when it is the waitlist's reward, and the
event prize, affiliate welcome or waitlist signup it was made for.

## In the older designs

Propper - OG and Tactical keep their earlier list of coupons and a separate
page to create or edit one. The search, filters and sorting, the Redemptions
and Activity tabs, switching a coupon from the list, duplicating it, the note,
a code for one trader, once per trader, the warnings and the summary are only
in the standard design.

What the standard design sets still holds in the older ones: checkout enforces
the trader and once per trader whatever design the firm runs, and saving a
coupon on the older page leaves its note, trader and once per trader as they
were. A coupon with purchases cannot be deleted in any design.