For the complete documentation index, see llms.txt. This page is also available as Markdown.

Why a Discount Code Will Not Apply

Why a coupon code can be refused at the basket even when it is active, and what each customer message really means.

A coupon being active only means it exists and has not yet expired. Whether it actually applies for a particular customer at the basket depends on a few extra checks you set when you create the coupon. If one of those checks is not met, the code is refused and the customer sees a short message explaining why.

The good news: the customer is never left guessing. So when you are testing a promo and it does not apply, read the on-screen message first rather than assuming the code is broken. In most cases the code is working exactly as configured.


The most common reasons a code is refused

Here is what each coupon setting does at the basket, and the message a customer sees when it stops the code from applying.

The code has expired

A code works right up until its expiry date, then stops the moment that date passes. The customer is told the code was not found or has expired. If a promo was working yesterday and is not today, check the Expiry Date first.

New Customers Only

When New Customers Only is ticked, the code works only for a customer who has never placed a completed, paid order.

There is one nuance worth knowing. A customer who has only ever entered free or zero-cost competitions still counts as new and can use the code. Only a previous order they actually paid for makes them ineligible. So "first order only" really means "first paid order only". If a long-standing customer can still use a new-customer code, this is usually why.

Minimum Spend

The basket must reach this amount before the discount is applied. If the basket is below it, the code is refused and the customer is told the minimum amount required. This is measured on the basket value on its own, so the discount itself never pushes a basket under the minimum.

Maximum Spend

This one often surprises operators, so it is worth being clear.

Total Usage Limit

This is the total number of times the code can be used across all customers. It counts genuine completed orders. Orders still in progress (sitting in checkout, waiting for payment) do not count towards the limit yet, and abandoned or failed attempts never count at all.

The practical effect worth knowing is that the limit is never "used up" by people who add the code but never pay. Only genuine, completed orders move the count, so the number you see reflects real, paid uses.

Per-Customer Limit

This works the same way for a single customer. It counts only how many completed orders that person has placed using this exact code. A customer can enter the code across as many abandoned baskets as they like without using up their allowance. Only completed orders count.

Competition Restrictions (include or exclude)

These apply to the whole basket, not item by item. There is no partial discount: a code never quietly discounts only the eligible items and ignores the rest.

  • If you exclude certain competitions and the basket contains any of them, the whole code is refused. The customer is told exactly which competition or competitions to remove to continue.

  • If you include only specific competitions and the basket contains anything outside that list, the whole code is refused again, naming the competitions the code is limited to.

In both cases the customer needs to adjust their basket so it contains only eligible competitions, then the code applies.


Quick checklist when a code won't apply

Run through these in order when a promo is not behaving as you expect:

  1. Has the Expiry Date passed?

  2. Is New Customers Only ticked, and has this customer placed a paid order before?

  3. Is the basket above the Maximum Spend, or below the Minimum Spend (measured before the discount)?

  4. Has the Total Usage Limit or the customer's Per-Customer Limit been reached by completed orders?

  5. Does the basket contain a competition that is excluded, or one that sits outside the included list?

The message shown at the basket points you straight to the answer in almost every case.


A note on usage counts

Only completed orders count towards a usage limit, so the count reflects real, paid uses rather than abandoned attempts. This protects you from "losing" uses to customers who never finish paying. For a high demand, high value promo where you want a firm ceiling, set the usage limit slightly below your absolute maximum to give yourself headroom.


Promos and Discounts

Last updated