Discounts

Combining app discounts with Shopify discounts

How to configure Llama Upsells discounts so they coexist with Shopify coupon codes and other apps' automatic discounts.

Llama Upsells discounts and Shopify's own discounts live in the same checkout, so you usually want them to apply together — your free-shipping offer on top of a seasonal coupon, your tier discount alongside another app's promotion. This is the hands-on walkthrough for configuring both sides so that happens. For the underlying limits and the full combinesWith rules, see Discount stacking, limits & conflicts — this page is the "how do I actually set it up in the Shopify admin" companion to that reference.

Two kinds of Shopify discount you'll meet

Every Llama Upsells discount is created behind the scenes as a Shopify automatic discount — there is no code to type, the discount line just appears at checkout once the cart qualifies. But in your Shopify admin you'll run into two different things, and they behave differently when it comes to stacking.

KindHow it appliesCounts toward the 25 cap?Who controls it
Automatic discountApplies on its own when the cart qualifies — no codeYes — every automatic discount on the store shares one budgetYou, other apps, and Llama Upsells (all of the app's discounts are automatic)
Discount codeThe shopper types a code at the cart or checkoutNo (codes are not part of the 25 automatic-discount cap)A merchant-created code you set up in Shopify Discounts

All three Llama Upsells discount types — offer, tier, and shipping — are Shopify automatic discounts behind the scenes. That means they count against Shopify's store-wide ceiling of 25 automatic discounts, which is shared across every app and every automatic discount you create by hand. A discount code the shopper enters does not eat into that 25.

Stacking needs agreement on BOTH sides

This is the rule that trips up almost everyone: a discount's combination setting is a permission, not a guarantee. Shopify only stacks two discounts when both of them allow it. If either side opts out, Shopify keeps one and silently drops the other.

So making an app discount coexist with a Shopify discount is always a two-sided job: set the Shopify discount to allow combining, and make sure the app discount allows it too.

Side 1 — the Shopify discount

Open the discount in Shopify admin

Go to Shopify admin > Discounts and click the discount (or code) you want to combine with a Llama Upsells discount.

Find the Combinations section

Scroll to the Combinations section of that discount. It lists three checkboxes, one per discount category:

  • Product discounts
  • Order discounts
  • Shipping discounts

Enable the categories you need

Tick the categories that match the Llama Upsells discount you want to stack with. A Llama Upsells offer or tier discount that applies to line items is a product discount; a Llama Upsells shipping discount is a shipping discount. Enable the matching box (or boxes), then Save.

The Combinations section of a Shopify discount showing the Product discounts, Order discounts, and Shipping discounts checkboxes
Shopify admin > Discounts > [your discount] > Combinations. Tick the categories you want this discount to stack with.

Side 2 — the Llama Upsells discount

Now make sure the app discount allows the combination back. How much control you have depends on the app discount type:

App discount typeCombine with orderCombine with productCombine with shippingYour controlDefault
Offer (the discount on an upsell product)YesYesYesAlways on — no toggle, by designAlways combines (fixed)
Tier (volume)ToggleToggleToggleA toggle for all three categoriesAll three on
ShippingToggleToggleA toggle for order and product (no shipping-with-shipping)Both off

Offer discounts are hardcoded to combine with everything, so there's nothing to switch on for them. For tier and shipping discounts, open the discount in the Llama Upsells app and turn on the combine toggle that matches the Shopify discount's category. The defaults point in opposite directions: a new tier discount starts with all three toggles on, so it combines with everything until you opt out, while a new shipping discount starts with both toggles off, so it combines with nothing until you opt in.

If only one side allows the combination, the discounts will not stack — Shopify drops one of them with no error message. The most common cause is forgetting Side 1: the app toggle is on, but the Shopify coupon's Combinations still say "can't combine." Always check both.

Common pairings and how to configure each

These are the four pairings you'll meet most often. The recipe is the same shape every time — set the Shopify side, then the app side.

When Shopify drops one discount

If the two sides don't both allow the combination, Shopify doesn't error — it quietly keeps one discount and drops the other. This is standard Shopify behavior, not a Llama Upsells override, and the app cannot force a dropped discount back in.

Which one survives? Shopify decides using its own precedence — generally it keeps the discount that gives the shopper the better value, and a non-combinable code the shopper entered will win the tie and suppress an automatic discount that conflicts with it. So if a customer applies a coupon set to "can't combine," expect your app discount to disappear for that order.

A code set to cannot be combined in its Shopify Combinations settings will always win and suppress the other discount — even if your Llama Upsells discount's toggle says "yes, combine." Before you assume the app is broken, open the coupon in Shopify admin > Discounts and confirm its Combinations actually allow the app discount's category. This is the single most common reason a "stacked" discount only shows one line.

Promo code as a TRIGGER vs promo code as a DISCOUNT

A "promo code" can mean two completely different things in Llama Upsells, and mixing them up causes a lot of confusion. The difference is whether the code reduces the price or merely decides when an offer appears.

Promo code as a triggerPromo code as a discount
What it doesGates when a campaign/offer shows — a campaign conditionActually reduces the order price
Effect on priceNone on its own — it's a condition, not a discountLowers the total, like any Shopify code
Where you set itA campaign condition using the promo-code selectorA tier or shipping discount configured as a code, or a plain Shopify discount code
Learn morePromo code triggersPromo codes as discounts

A trigger code is a campaign condition: when the shopper has a matching code applied, the offer becomes eligible to show — but the code itself does not discount anything. A discount code genuinely reduces the price. And note that Llama Upsells tier and shipping discounts can themselves be code-type: instead of applying automatically, the app creates a real Shopify discount code the shopper must enter to unlock the discount.

If a campaign won't trigger off an applied code, you're in trigger territory — see Promo code triggers. If a tier or shipping discount needs a code to unlock and actually cut the price, you're in discount territory — see Promo codes as discounts.

Discount code validation behaviors

When the storefront checks an applied code (for example, to decide whether a code-based trigger should fire), it validates that code against Shopify and can report one of several states. These are the five you'll meet most often; knowing them helps you read why a code did or didn't take effect.

StateWhat it means
INVALIDThe discount code doesn't exist.
ALREADY_APPLIEDThe code is already applied to the order.
LIMIT_REACHEDThe code has exceeded its usage limit.
INACTIVEThe discount is no longer active.
REMOVABLE_AT_CHECKOUTThe code can only be removed at checkout.

These are storefront validation states, not app errors — they describe the code's status in Shopify. This table covers the common cases only; nine states exist in total. For the complete list and what to do about each, see Promo codes as discounts. For how code-based triggers use them, see Promo code triggers.

Troubleshooting

A discount that should be stacking only shows one line, or your app discount isn't applying at all. First confirm both sides allow the combination (the app toggle and the Shopify discount's Combinations section). Then check whether a non-combinable code is suppressing it, and whether your store has hit the 25 automatic-discount cap. For a full diagnostic walkthrough, see Discount not applying.

On this page