# Coupons

Pro Feature

The **Coupons** screen needs [WCPOS Pro](/fr/getting-started/pro-license.md). Applying a coupon your store already has works on the free plugin too: see [Applying Coupons](/fr/sell/cart/apply-coupon.md).

The **Coupons** screen is your store's list of WooCommerce coupons, inside the POS. Use it to look a coupon up, make a new one for a promotion, change an amount or an expiry date, or take an old coupon away. Every change goes to your store, so the coupon is the same in **WP Admin › Marketing › Coupons** and on your website, and your other tills get it when they sync.

Open it from the **Coupons** icon in the menu on the left. On a phone, open the menu first.

On the free plugin: what the screen looks like

On the free plugin the screen opens as a blurred view of the list, with a card on top. Nothing on it can be changed. You can still make coupons in **WP Admin › Marketing › Coupons**, and [apply them in the cart](/fr/sell/cart/apply-coupon.md). See [What Pro looks like on the free plugin](/fr/getting-started/free-vs-pro.md#pro-screen).

![The Coupons screen on the free plugin: the coupon list blurred under a card with Upgrade to Pro, View Demo and Upgrade to Pro buttons](/img/2.x/coupons/index/en/tablet-light-regular--cm-9-free-preview.png)1234

1. **Coupons** — the screen in the menu.
2. **Upgrade to Pro** — the card says **Manage and apply coupons by upgrading to WCPOS Pro**. Applying a coupon in the cart is free all the same.
3. **View Demo** — opens the Coupons screen on the WCPOS demo store.
4. **Upgrade to Pro** — opens the WCPOS Pro page on wcpos.com.

## The coupon list[​](#coupon-list "Lien direct vers The coupon list")

Newest coupons are at the top. Scroll down to load more.

A change you make in the list goes to your store as you make it. There's no Save button: to undo a change, change it back.

![The Coupons screen searched for 10: the search box, the add and display buttons, the Status, Discount Type and Expires filters, and eight coupons with their active state, code, amount, type, description, usage and expiry date, the first one Inactive because it expired on 31 Dec 2025](/img/2.x/coupons/index/en/tablet-light-regular--cm-1-coupon-list.png)12345678910

1. **Search Coupons** — type part of a code or a description.
2. **+** — [make a coupon](#creating-coupons).
3. **Display options** — choose which columns show. **Status**, **Date created** and **Date modified** are hidden at first.
4. **Status** — **Published**, **Draft**, **Pending** or **Trash**. The list holds your store's published coupons; a coupon you set to **Draft** or **Pending** on this device shows here until the till next fetches coupons.
5. **Discount Type** — show only one type of coupon.
6. **Expires** — show only coupons that expire between two dates you pick.
7. **Active** — green **Active** when the coupon is published and hasn't expired; **Inactive** otherwise. It's a label, not a switch. Usage limits and spend rules can still stop an **Active** coupon: see [When the till refuses a coupon](/fr/sell/cart/apply-coupon.md#refused).
8. **Code** — what the customer gives you. Tap it to change it.
9. **>** — opens the coupon to [change it](#edit).
10. **Showing 8 of 47** — how many coupons are in the list out of all your store's coupons. Press the arrow beside it to fetch the latest from your store.

The other columns, close up, on the first two coupons above:

![Amount, Type and Description for two coupons: both 10, Percentage, with an empty description box](/img/2.x/coupons/index/en/tablet-light-regular--cm-6-row-detail.png)123

1. **Amount** — tap it to change the amount on a keypad.
2. **Type** — tap it to filter the list to that type.
3. **Description** — the coupon's [internal note](#fields). Tap the box to change it.

![Usage and Expiry Date for the same two coupons: usage 0 with expiry 31 Dec 2025, and usage 1 / 100 with no expiry date](/img/2.x/coupons/index/en/tablet-light-regular--cm-7-row-usage.png)12

1. **Usage** — how many times the coupon has been used, then its limit: **1 / 100** is one use of a hundred. With no limit you see the count alone, like the **0** above it. A one-time coupon nobody has used yet shows **0 / 1**.
2. **Expiry Date** — tap it to pick a new date. **31 Dec 2025** has passed, so that coupon shows **Inactive**.

### Filter the list[​](#filters "Lien direct vers Filter the list")

Press a filter and choose from its list. The filter then shows what you chose, with a **✕** to take it off. With two or more filters on, **Clear all** takes them all off.

![The Status, Discount Type and Expires filters with Discount Type open, listing Percentage Discount, Fixed Cart Discount and Fixed Product Discount](/img/2.x/coupons/index/en/tablet-light-regular--cm-5-filter-type.png)1234

1. **Discount Type** — the filter, open.
2. **Percentage Discount** — a percentage off the items.
3. **Fixed Cart Discount** — an amount off the whole order.
4. **Fixed Product Discount** — an amount off each matching item.

When nothing matches, the list says **No coupons match these filters**, with **Clear filters** below it.

## Make a coupon[​](#creating-coupons "Lien direct vers Make a coupon")

1. Press **+** at the top of the Coupons screen.
2. Type a code, or press **Generate**.
3. Choose the discount and type the amount.
4. Choose when it expires.
5. Leave **Status** at **Select status** to use the coupon straight away: it saves as **Active**, which the list's **Status** filter calls **Published**. Choose **Draft** or **Pending** to hold it back.
6. Add any limits you need, then press **Add Coupon**.

![The Add Coupon dialog over the coupon list: a generated code, the Generate button, Percentage chosen with 10 percent, 1 Week chosen for expiry with its date, the One-time use switch, buttons to add limits such as Minimum spend, and the Add Coupon button](/img/2.x/coupons/index/en/tablet-light-regular--cm-2-add-coupon.png)12345678

1. **Code** — what the customer gives you at the till. Capitals don't matter there.
2. **Generate** — makes a code such as **POS-UA43**, without letters that are easy to misread (0 and O, 1, I and L).
3. **Discount** — **Percentage**, **Amount off order** or **Amount off products**. See the [types](#coupon-types).
4. **Amount** — the percentage, or the amount in your store's currency.
5. **Expires** — **Never**, **End of Day**, **1 Week**, **1 Month** or **Pick a Date**. **End of Day**, **1 Week** and **1 Month** run to the end of that day in your store's time zone, and the date shows below.
6. **One-time use** — the coupon stops working after it's used once.
7. **Minimum spend** and the other buttons — add a limit or a setting to the coupon. See [What each setting does](#fields).
8. **Add Coupon** — saves the coupon to your store. **Cancel** closes without saving.

The new coupon is in the list, and in the cart's coupon list, straight away.

To make a coupon during a sale and put it on the order at once, use **New coupon** in the cart: see [Discounts](/fr/sell/cart/discounts.md#new-coupon).

### Coupon types[​](#coupon-types "Lien direct vers Coupon types")

The POS and WooCommerce name the three types differently:

* **Percentage** (WooCommerce: *Percentage discount*) — a percentage off the items in the cart. `10` takes 10% off.
* **Amount off order** (WooCommerce: *Fixed cart discount*) — an amount off the whole order. `5.00` takes $5 off the order.
* **Amount off products** (WooCommerce: *Fixed product discount*) — an amount off each matching item. `2.00` takes $2 off each T-shirt.

### What each setting does[​](#fields "Lien direct vers What each setting does")

The form always shows **Status**. Each button under it adds one more setting: the spend and use limits, **Internal note** and the rest. Each added setting gets a **Remove** button that takes it off again. Open the list below for what each one does.

Coupon settings and limits

| Setting                       | What it does                                                                                                                                                                                                                                                                        |
| ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Status**                    | **Active**, **Draft** or **Pending**. **Active** is **Published** in WooCommerce and in the list's **Status** column. A Draft or Pending coupon shows **Inactive**, and leaves the list the next time the till fetches coupons. A new coupon is Active unless you choose otherwise. |
| **Minimum spend**             | The order must reach this amount before the coupon applies.                                                                                                                                                                                                                         |
| **Maximum spend**             | The coupon doesn't apply above this amount.                                                                                                                                                                                                                                         |
| **Total uses**                | How many times the coupon can be used, by everyone together. Not offered while **One-time use** is on.                                                                                                                                                                              |
| **Uses per customer**         | How many times one customer can use it.                                                                                                                                                                                                                                             |
| **Max discounted items**      | How many items the coupon takes money off. Only for **Percentage** and **Amount off products**.                                                                                                                                                                                     |
| **Cannot be combined**        | The till refuses this coupon if the order already has another coupon.                                                                                                                                                                                                               |
| **Also grants free shipping** | Free shipping methods that need a coupon become available on the order.                                                                                                                                                                                                             |
| **Internal note**             | The coupon's description in WooCommerce. The cart's coupon list shows it under the code, and a receipt printed from your store shows it in place of the code, so customers can see it. Don't put anything private in it.                                                            |
| **Custom field**              | A key and value of your own, stored on the coupon.                                                                                                                                                                                                                                  |

Some WooCommerce settings aren't in the POS form: **Products** and **Exclude products**, **Product categories** and **Exclude categories**, **Exclude sale items** and **Allowed emails** (which takes a `*` wildcard, such as `*@yourcompany.com` for staff only). Set them in **WP Admin › Marketing › Coupons**. They still apply at the till; see [When the till refuses a coupon](/fr/sell/cart/apply-coupon.md#refused). **Exclude sale items** also skips an item whose price you lowered at the till: see [How POS Price Changes Interact with Coupons](/fr/sell/cart/discounts.md#how-pos-price-changes-interact-with-coupons), and for developers the [POS Discount Reference](/fr/developers/discount-records.md).

## Change a coupon[​](#edit "Lien direct vers Change a coupon")

No Save button

Each change goes to your store as you make it. **Close** doesn't undo anything: to go back, change the field again.

Press **>** at the end of the coupon's row. On a phone, tap the coupon.

![The Edit welcome5 dialog over the coupon list: the code with Generate, Amount off order chosen with 5.00, 1 Month chosen for expiry, One-time use on, Status Active, Minimum spend with Remove, Hidden fields with Show, and the Sync and Close buttons](/img/2.x/coupons/index/en/tablet-light-regular--cm-3-edit-coupon.png)1234567891011

1. **Code** — change it here, or press **Generate** for a new one.
2. **Generate** — makes a new code. The old code stops working.
3. **Discount** — the type.
4. **Amount** — the amount.
5. **Expires** — the date it stops working.
6. **One-time use** — on here, so **Usage** in the list shows **0 / 1**.
7. **Status** — **Active**, **Draft** or **Pending**. **Active** is what the list's **Status** filter calls **Published**.
8. **Remove** — takes a setting off the coupon. A coupon saved in WP Admin often shows **Minimum spend** and **Maximum spend** at **0.00**, which sets no limit.
9. **Show** — fields that plugins add. See **Hidden fields and the JSON tab** below.
10. **Sync** — fetches this coupon again from your store, for a change made in WP Admin since.
11. **Close** — closes the dialog.

Hidden fields and the JSON tab

**Show** opens the coupon's hidden custom fields. Plugins use them to store their own settings, so change them only if a plugin's instructions tell you to.

The **JSON** tab at the top of the dialog shows the coupon as your store sends it.

If **Sync** can't reach your store, a message says **Couldn't refresh. The copy on this device is unchanged — check your connection and try again.**

## Delete a coupon[​](#delete "Lien direct vers Delete a coupon")

**Delete** is at the bottom of the coupon's dialog, for staff allowed to delete coupons.

1. Open the coupon and press **Delete**.
2. Tick **Confirm**, then press **Delete**.

The dialog warns: **Deleted coupons will be placed in the Trash on the server.** The coupon goes to the **Trash** in WooCommerce and can't be used. To bring it back, open **WP Admin › Marketing › Coupons**, choose **Trash** and restore it. To stop a coupon working without deleting it, give it an expiry date instead: after that day the till refuses it.

## Who can make and change coupons[​](#permissions "Lien direct vers Who can make and change coupons")

Making, changing and deleting coupons each need their own permission, set in **WP Admin › POS › Settings › Access**:

* **Create & edit coupons** — a Cashier has it by default. Without it, **+** is greyed out and the list can't be changed.
* **Delete coupons** — a Cashier doesn't have it by default. Without it, the coupon's dialog has no **Delete**.

Hover the greyed-out **+** to see why. See [Accessing the POS](/fr/manage-store/staff-permissions.md) to change a role.

## Use a coupon on a sale[​](#apply "Lien direct vers Use a coupon on a sale")

In the cart, press **+** and choose **Add Discount**, then switch to **Coupon**, pick the coupon and press **Apply**. This works on the free plugin too. See [Applying Coupons](/fr/sell/cart/apply-coupon.md).

## If something goes wrong[​](#goes-wrong "Lien direct vers If something goes wrong")

**A coupon made in WP Admin isn't in the list.** Press the arrow beside **Showing … of …** at the bottom of the list to fetch the latest. Hold it down for **Clear and Refresh**, which empties this device's copy of the list and fetches it all again.

**+ is greyed out.** On the free plugin it says **Upgrade to Pro**. Otherwise your role can't create coupons: see [Who can make and change coupons](#permissions).

**A change flips back.** Your store refused it. The POS puts the store's value back and logs **Reverted a change your store rejected**. A new coupon your store refuses, such as a code that already exists, is listed in **Store health**.

**A coupon says Inactive.** It has expired, or its status isn't **Active**. Open it and change **Expires** or **Status**.

**The till refuses a coupon.** See [When the till refuses a coupon](/fr/sell/cart/apply-coupon.md#refused).

## Related Documentation[​](#related-documentation "Lien direct vers Related Documentation")

[Applying CouponsPut a coupon on a sale, and what to do when the till refuses it](/fr/sell/cart/apply-coupon.md)

[DiscountsTake money off without a coupon, and how price changes meet coupons](/fr/sell/cart/discounts.md)

[Accessing the POSChoose which staff can make, change and delete coupons](/fr/manage-store/staff-permissions.md)
