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

# Discounts & Promotions

> Run promotions with coupons and promotion codes: public codes, channel codes, single-use codes and subscription discounts

## Overview

Waffo Pancake includes **coupons** and **promotion codes**. A coupon defines *how much* is discounted: a percentage or a fixed amount, optionally limited to certain products, a total number of redemptions and an expiry date. A promotion code defines *who can use it*: one coupon can carry many promotion codes, each with its own customer restrictions. Create both in **Dashboard → Coupons**, or through the API and SDKs.

Discounts apply to **one-time products, new subscriptions and plan changes**. A coupon belongs to one store and one environment; codes created in test mode cannot be used in live mode.

***

## Coupons and promotion codes

| Rule | Set on | Notes |
| - | - | - |
| Discount | Coupon | A percentage, or a fixed amount per currency |
| Eligible products | Coupon | The whole store, or selected products only |
| Expiry | Coupon, promotion code | The code stops working after this date; a promotion code cannot outlive its coupon |
| Total redemptions | Coupon, promotion code | Combined uses across all customers |
| Eligible customers | Promotion code | Only the listed customer emails |
| Uses per customer | Promotion code | How many times each customer may use the code |
| Minimum order | Promotion code | Per currency, checked on the pre-discount, pre-tax amount |

Codes are case-insensitive. The coupon detail page shows redemptions per code, exports to CSV, and lets you deactivate a single code without touching the others.

***

## How customers redeem

> [card] Enter at checkout
>
> When the store has an applicable coupon, the product page shows a code field and the customer types the code.

> [card] Link with the code
>
> Append `?discount_code=XXX` to a product link and the discount is applied on open — ideal for ads and email campaigns.

> [card] Apply server-side
>
> Pass the coupon or promotion code when creating a Checkout Session. For member or partner pricing where the code should stay hidden, apply it with `couponId`: the customer never sees the code and cannot remove it.

***

## Common scenarios

| Scenario | How to set it up |
| - | - |
| Launch sale | One coupon with a public code, an expiry date and a redemption cap |
| Influencers and channels | One coupon, one promotion code per partner with its own cap; settle by per-code redemptions |
| Newsletter or giveaway | Generate single-use codes in bulk on the coupon (up to 500 per batch, with a prefix) and merge the CSV into your mailing |
| Win-back or VIP list | A promotion code restricted to listed customer emails, so a leaked code is harmless |
| Member or partner pricing | Create the session server-side with `couponId` based on the customer's eligibility; no code is shown |
| First months off, or nudge to annual | Set the discount duration (first period, several periods or the whole subscription), or restrict the coupon to the annual plan |

Configuration details and code samples for each scenario are in the [Discounts guide](https://docs.waffo.ai/guides/discounts.md).

***

## Discounts on subscriptions

A subscription discount has a **duration**: the first period only, a number of billing periods, or the whole subscription. A free trial does not consume the discount; it starts with the first paid period. When a customer changes plan in the portal they can enter a new code to replace the current discount; without a code, the current discount carries over where it can. Receipts, renewal and plan-change emails show the list price, the discount line and the expected next charge.

***

## Related

* [Discounts guide](https://docs.waffo.ai/guides/discounts.md) — rules, marketing scenarios and SDK examples
* [Dashboard Coupons page](https://docs.waffo.ai/dashboard/discounts.md) — create coupons, generate codes in bulk and track usage
* [Coupons API](https://docs.waffo.ai/api-reference/endpoints/coupons/overview.md) · [Promotion Codes API](https://docs.waffo.ai/api-reference/endpoints/promotion-codes/overview.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.