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

# Control how reward coupons stack

> Work through one basket with a game prize, a challenge reward and an app coupon, and set which one applies first and what applies on top.

A customer can hold coupons from a game, a challenge and your other offers at the same time. This page works through one basket to show which coupons apply when they meet. It then shows how to make a game prize apply first, with nothing on top of it.

## What you'll build

Every coupon a customer can win or earn comes from an offer. A game prize comes from a **Game** offer, and a challenge reward from a **Challenge** offer. So the same **Stacking** settings decide how they combine with each other and with your other offers, whatever activity they came from.

```mermaid theme={"system"}
flowchart LR
    A["Game prize<br/>Stacking Priority 1<br/>nothing on top"] --> B["Challenge reward<br/>Stacking Priority 5"]
    B --> C["App Coupon<br/>Stacking Priority 5"]
```

Offers apply one at a time, from **Stacking Priority** 1 to 10. When two share a priority, the one whose coupon expires first goes first. Each offer then applies to the items it covers, unless an offer that applied earlier has **Allow other offers on top** switched off. That blocks later offers on the items it discounted, and only on those. The rest of the basket stays open to them.

## The basket

A customer buys coffee for 5.00, bread for 3.00 and milk for 2.00, so the basket comes to 10.00. They hold three coupons.

| Coupon | Comes from | Discount | Stacking Priority | Allow other offers on top |
| - | - | - | - | - |
| Coffee for 1.00 | A **Game** offer, the game's prize | **Product Discount**, **Fixed price** 1.00 on coffee | 1 | Off |
| 1.00 off coffee | A **Challenge** offer, the challenge's reward | **Product Discount**, **Amount off** 1.00 on coffee | 5 | On |
| 10% off the basket | An **App Coupon** | **Basket Discount**, **Percentage off** 10 | 5 | On |

## The order coupons apply in

1. The game prize applies first, because its **Stacking Priority** is 1. The coffee drops from 5.00 to 1.00. Its **Allow other offers on top** is off, so no other offer can lower the coffee now.
2. The challenge reward gives nothing. It only covers coffee, and the prize has closed the coffee to other offers.
3. The basket coupon takes 10% off the bread and the milk. It skips the coffee, for the same reason. That's 0.50 off 5.00.

The customer pays 5.50. Without the prize's settings, all three coupons could apply to the coffee.

## Make the prize apply first

**Game** offers live in the campaign's **List** view. Open the one the game uses as its prize. Its form is the same as any offer's.

1. In the **Stacking** section, set **Stacking Priority** to **1**.
2. Switch off **Allow other offers on top**.
3. Select **Save**. If the offer is already live, unpublish it first, make the change, save it and publish it again. The change also reaches coupons customers already have.

That's the setting for a best-price prize. The price you set is the price the customer pays. [Stacking and limits](/business-documentation/activities/offers/stacking-and-limits#stacking) describes each field.

![The Stacking section of a published Game offer named Coffee for 1.00. Allow other offers on top is switched off. Stacking Priority is set to 1, with the hint Select the order to apply the offer - 1 is the highest. Under Apply on items, Apply on all items is selected, and Apply only on discounted items and Apply only on non-discounted items are not. Above it, the Location section shows Chain(s) set to SuperTasty, with Store(s) and Checkout types empty. Below it, the Discount section starts with Discount type set to Product Discount. Cancel, a greyed-out Delete, Save and Unpublish sit along the bottom.](https://mintcdn.com/lobyco-4c9fb3ad/WYxSmfbwe1zr5xYw/images/usecase-35-prize-applies-first-and-alone.png?fit=max\&auto=format\&n=WYxSmfbwe1zr5xYw\&q=85\&s=991d792b53f563cac51d8f9910cad745)

*A prize set to apply first and alone*

## Leave the other coupons as they are

The challenge reward and the basket coupon keep **Stacking Priority** 5 and **Allow other offers on top** switched on. They then apply after the prize, to whatever it leaves open.

To keep the basket coupon off items another offer has already discounted, set its **Apply on items** to **Apply only on non-discounted items**. In this basket, that changes nothing, because the coffee is already closed to it.

## Check the result

After a test purchase with this basket, find the customer in **[Members](/business-documentation/self-service/find-a-customer)**.

* On **Receipts**, select the purchase to see what was on it.
* On **Coupons**, the prize and the basket coupon show as redeemed on that date.

If a coupon didn't apply the way you expected, [Why isn't a customer's coupon working?](/business-documentation/activities/offers/why-isnt-a-customers-coupon-working) works through the likely causes.

## Variation: let both coffee coupons count

To let the challenge reward apply on top of the prize, switch **Allow other offers on top** back on for the prize. Keep its **Stacking Priority** at 1, so it still applies first. The challenge reward and the basket coupon then apply to the coffee as well, after the prize. Each one applies to the price the earlier offers left.

In this basket, the challenge reward's coupon expires before the basket coupon. They share **Stacking Priority** 5, so the challenge reward applies first.

The prize brings the coffee down to 1.00. The challenge reward takes off that last 1.00, so the coffee costs 0.00. The basket coupon then takes 0.50 off the bread and the milk. The customer pays 4.50.

## Variation: which coupon shows first in the app

**Stacking Priority** decides the order at the till, not in the app. In the app, **Display priority** orders offers of the same type. A game's **Game priority** and a challenge's **Display priority** order games and challenges. How your app orders different types against each other is agreed when your app is set up.

## Related

* [Stacking and limits](/business-documentation/activities/offers/stacking-and-limits) describes every stacking and limit field.
* [Discount types](/business-documentation/activities/offers/discount-types) explains **Fixed price**, **Amount off** and **Percentage off**.
* [Reward a challenge with a game play](/business-documentation/use-cases/reward-a-completed-challenge-with-a-game-play) builds the challenge and game behind these coupons.
* [Offer types](/business-documentation/activities/offers/offer-types) explains the **Game**, **Challenge** and **App Coupon** types.


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