> ## Documentation Index
> Fetch the complete documentation index at: https://help.retainful.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Coupons

> Generate unique, single-use discount codes in your store and deliver them inside your automations.

The **Coupon** step creates a real discount code in your Shopify or WooCommerce store — unique to each contact, single-use, and with an expiry you control. Because the code is created in your store, it works at checkout like any other discount.

## Why unique codes beat shared codes

* **No leaks** — a shared code like `SAVE10` ends up on coupon sites within hours. A unique code works once, for one person.
* **Real urgency** — each code carries its own expiry date, so "expires in 48 hours" is actually true.
* **Clean attribution** — when a unique code is redeemed, you know exactly which automation and email drove the sale.

## Configure the coupon step

| Setting                | Options                                                                              |
| ---------------------- | ------------------------------------------------------------------------------------ |
| **Discount type**      | Fixed amount, percentage, or free shipping.                                          |
| **Applies to**         | The entire order, specific products, or specific collections.                        |
| **Minimum purchase**   | Optional minimum order value or minimum quantity.                                    |
| **Code prefix**        | Codes are auto-generated; the prefix keeps them recognizable, e.g. `WELCOME-8FK2D1`. |
| **Activation**         | Active immediately, or starting at a specific date.                                  |
| **Expiration**         | Never, after a number of days, on a specific date, or up to one year.                |
| **Combinations**       | Whether the code can stack with product, order, or shipping discounts (Shopify).     |
| **Exclude sale items** | Skip already-discounted products (WooCommerce).                                      |

## Show the code in your messages

After a Coupon step, use the coupon [merge tags](/campaigns/personalization) in any later email or WhatsApp step:

* **Coupon code** — the contact's unique code, often inside a styled coupon block.
* **Coupon expiry date** — reinforces urgency.
* **Checkout link with coupon applied** — in cart recovery flows, one click restores the cart *and* applies the discount.

<Tip>
  Place the Coupon step immediately **before** the email that reveals it — the code is generated when the contact reaches the step, so its expiry countdown starts at the right moment.
</Tip>

## Recommended recipes

* **Welcome offer** — 10% off, expires in 7 days, minimum purchase to protect margins.
* **Cart recovery closer** — hold the discount until the *last* email; many shoppers return without one.
* **Next-order coupon** — after a first purchase, a code valid for 30 days drives the second order, which is the hardest one to win.
* **Win-back** — a stronger offer (15–20%) for customers inactive 90+ days, with a short expiry.

## Tracking redemptions

When an order uses a generated code, the purchase is attributed to the automation and shows up in its [revenue analytics](/automations/analytics).
