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

# Smarty Discounts features reference

> Long A–Z reference (not a tutorial) for what each discount setting does: sidebar tools, methods, value types, tiers, purchase type, recurring payments, Combine, BXGY, limitations, and more. New to the app? Read How the app works and Create a discount first.

<Note>
  New to Smarty? Read [How the app works](how-the-app-works) and [Create a discount](create-discount) first. **Condition names:** [Field conditions](field-conditions). **Picking a type:** [Match your sale](match-your-sale) · [Pick a discount type](discount-types/index).
</Note>

## Import and export rules

You can **Export rule** while you **edit** a discount to download a **.txt** copy to your computer, and **Import rule** from the **Dashboard** or while you **create** a discount (the file must match the type you picked if you import on the create screen). Step-by-step: [Import and export discount rules](import-export-rules).

## Rule version

You can switch **Rule version** so different sets of conditions appear. Labels in the app are similar to:

| Version                 | What it unlocks                         | Example use case                                     |
| ----------------------- | --------------------------------------- | ---------------------------------------------------- |
| **Standard**            | Core product, cart, and customer fields | Simple storewide or collection sales.                |
| **Customer / Cart**     | Stronger customer + cart attributes     | Segment-specific or cart-mix promotions.             |
| **Company**             | B2B **company** conditions              | Different pricing for approved **company** accounts. |
| **Product / Line**      | Line-item level precision               | Subscription lines, compare-at, per-variant logic.   |
| **Standard** (shipping) | Core shipping discount fields           | Most free-shipping or method-based deals.            |

**Legacy version** opens the older editor for the same discount type. Use it only if you still maintain discounts created there.

## Discount method

| Method         | Meaning                                        | Example                                     |
| -------------- | ---------------------------------------------- | ------------------------------------------- |
| **Automatic**  | Applies when rules match; no code at checkout. | Storewide VIP pricing for tagged customers. |
| **Code**       | Customer enters one redeem code.               | Newsletter campaign `SUMMER20`.             |
| **Bulk codes** | Many unique codes tied to the same discount.   | Influencer packs, one code per customer.    |

**Bulk code options** can include code count, length, prefix or suffix, character set, and auto-generated vs manual lists. Full walkthrough: [Bulk discount codes](bulk-codes).

## Titles and internal notes

* **Title** — What shoppers or staff see in Shopify’s discount list and sometimes at checkout.
* **Internal title** — Your private note inside Smarty to find the discount later.

## Auto add to cart

When enabled, qualifying gift or promo items can be added automatically when rules match. This is common on gift-with-purchase campaigns.

## Discount value

### Value types

| Type                        | Example use case                                                                                             |
| --------------------------- | ------------------------------------------------------------------------------------------------------------ |
| **Percentage**              | 15% off eligible lines or order.                                                                             |
| **Fixed amount**            | \$5 off each qualifying line or off the order.                                                               |
| **Fixed amount per weight** | \$0.50 off per **kg/lb** for bulk foods (product).                                                           |
| **Fixed price**             | Every eligible mug rings through at **\$9.99** in each currency you configure.                               |
| **Fixed set total price**   | Any **4 shirts for \$40** — the total for all items in one complete mix & match set (bundle discounts only). |
| **Custom rate**             | Advanced rates on tiers where billing allows.                                                                |
| **Free**                    | 100% off eligible get items (often with BXGY).                                                               |

### Multiple currencies

If your store sells in more than one presentment currency:

1. Turn on each checkout currency in [Settings](settings#display-currencies).
2. Fill each fixed-money field for every currency you support.
3. Keep in mind that percentage discounts use one percentage across currencies.

### Add Tier button

The **Add Tier** button appears for **Product** and **Order** discounts.

**Workflow:** [Tier workflow](tier-workflow)

### Tier vs volume calculation

* **Volume-based** — One discount rate for **all** qualifying quantity, subtotal, or weight, using the highest tier reached.
* **Tier-based** — Different rates apply to each slice of quantity, subtotal, or weight.

### Break dimensions

* **Product** discounts can break tiers by **quantity** or **weight**.
* **Order** discounts can break tiers by **quantity**, **subtotal**, or **weight**.

### Purchase type

`Purchase type` is part of **Discount value**.

| Setting          | Use case                         |
| ---------------- | -------------------------------- |
| **One-time**     | Normal cart purchases only.      |
| **Subscription** | Only subscription selling plans. |
| **Both**         | One-time and subscription lines. |

## Type-specific field sections

### Apply rule

**Apply rule** chooses what the discount targets once the cart is eligible.

* **Product** discounts: products, variants, collections, tags, vendors, and similar catalog filters.
* **Shipping** discounts: shipping address and shipping method conditions.

For field names, see [Field conditions](field-conditions).

### Exclude rule

**Exclude rule** appears on **Order** discounts when some items or situations should not count toward the order discount.

### Combine discount

**Combine discount** is one promotion with separate **Discount components** tabs for **product**, **order**, and optional **shipping**, plus **one** shared **Eligibility for discount** and a single **Purchase type**. Each tab mirrors that slice’s usual value and rule sections (product apply rules, order exclusions, shipping apply rules).

Full walkthrough: [Combine discount](discount-types/combine-discounts).

### Customer buy

On **Buy X Get Y**, **Customer buy** defines what the shopper must buy first.

### Customer get

On **Buy X Get Y**, **Customer get** defines the reward line, free item, or discounted item the shopper receives.

| Variant                | Purpose                                                                     |
| ---------------------- | --------------------------------------------------------------------------- |
| **Classic BXGY**       | Buy quantity or spend threshold → get N items at % off, fixed off, or free. |
| **Gift with purchase** | Tiered or single gift products when spend or quantity thresholds are met.   |

##### Gift mode and tiers

* **Single vs all** gift products — one shared quantity vs per-product quantities.
* **Multiple tiers** — gift A over $50, gift B over $100, and so on.

#### Tracked items

Tracked items help the app remember which cart lines already consumed a BXGY benefit.

### Mix & match sets (entries)

**Mix & match set** discounts require the cart to contain a specific **combination** of items before anything is discounted. The editor exposes:

| Area                         | Meaning                                                                                                                                                                                           |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Discount value**           | **Percentage** (off every matched item), **Fixed amount** (per complete set), or **Fixed set total price** (the total for all items in one set — e.g. "any 4 for \$40").                          |
| **Set requires** *(entries)* | One or more **slots**. Each entry has its own rule tree (product / collection / tag / vendor / variant / …) **plus** a required quantity. All entries must be filled for the discount to trigger. |
| **Max sets per order**       | Cap the number of **complete sets** the discount can apply to in a single order. A cart with enough for 3 sets and a cap of 2 gets the discount twice.                                            |

Per-entry quantity counts the **total matching items** across the cart — same variant or mixed. One entry is allowed (for plain "any N of X" deals); up to 10 are supported.

Deep dive: [Mix & match set](discount-types/bundle-discounts). Creating set discounts requires **Lite** or higher — [Plans](plans).

### Discount code rejection (rules)

Use **Discount code rejection** when a campaign should **decline redeeming certain codes** instead of granting money off:

| Area                  | Meaning                                                                                                                                                                                                                    |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Rejection rules**   | Ordered list—each rule has a **code** matcher (operators such as equals / contains plus one or many strings), an optional nested **Conditions** tree, and shopper-facing **messages** (**120 characters max** per locale). |
| **Checkout behavior** | For each entered discount code Shopify sends as eligible for evaluation, the app finds the **first** rule whose code matcher **and** conditions both match, then rejects that redemption with your localized message.      |

This type hides **discount value**, **combinations**, and ordinary **discount method** switches; Shopify still surfaces the automation as an **automatic** discount in Admin. Detail: [Discount code rejection](discount-types/discount-code-rejection) — **[Plans](plans)** describes billing tiers.

## Strategy

This section controls **how** the discount behaves after the right items or customers are matched.

### Apply method

For product discounts, **Apply method** controls how lines are grouped:

| Mode                               | Idea                                             | Example                                                               |
| ---------------------------------- | ------------------------------------------------ | --------------------------------------------------------------------- |
| **Per line item**                  | Each variant line is its own bucket.             | 3 red + 3 blue shirts → two separate groups of 3.                     |
| **Per product**                    | All variants of the same product share a bucket. | 6 shirts same product, mixed colors → two groups of 3 together.       |
| **All matched**                    | Every matched line is pooled.                    | Mixed SKUs; every 3 items anywhere in the pool trigger the next step. |
| **Cheapest / most expensive line** | Only one matched line gets the benefit.          | BOGO-style focus on one line.                                         |

### Limitations

Common limitation controls include:

| Limit                                     | What it does                                                                                                                         | Example                                                                                             |
| ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------- |
| **Discount after N items**                | Skip the first N matching units, then start discounting.                                                                             | First 2 tees full price, discount from the 3rd onward.                                              |
| **Discount every Nth item**               | Only every Nth matching unit gets the deal.                                                                                          | With N=3, the 3rd, 6th, 9th… pair of socks is half price — the others pay full.                     |
| **Discount in packs of N**                | Requires N matching units to trigger; all N in each complete pack are discounted. Mutually exclusive with *Discount every Nth item*. | With N=4, buying 3 gets nothing, buying 4 discounts all 4, buying 8 discounts 2 full packs (all 8). |
| **Maximum discount quantity**             | Cap how many units get the reduction.                                                                                                | Max 5 discounted items per order.                                                                   |
| **Maximum discount amount**               | Cap the total money discounted.                                                                                                      | Never more than \$100 off per order.                                                                |
| **Priority (cheapest / expensive first)** | Choose which units use the limited slots first.                                                                                      | Discount the cheapest matches first.                                                                |
| **Minimum profit**                        | Protect a margin or cost floor.                                                                                                      | Prevent discounts below cost.                                                                       |

### Free shipping

`Free shipping` can appear on **Product**, **Order**, and **Buy X Get Y** discounts. It is shown inside different sections depending on the type.

## Eligibility for discount

**Eligibility for discount** controls who can get the offer and what must be true about the whole cart or customer.

Examples:

* customer tag = wholesale
* logged-in customer only
* cart subtotal over a threshold
* country, market, or company restrictions

For exact field names, see [Field conditions](field-conditions).

## Maximum discount uses

* **Total uses** — Cap how many times the code can be redeemed.
* **Once per customer** — Let each customer use it only once.

## Recurring payments

This section appears after **Maximum discount uses** when **Purchase type** is **Subscription** or **Both**.

Use it to decide whether the discount affects the **first payment only**, **multiple payments**, or a limited number of billing cycles.

## Discount tags

In the editor **sidebar**, the **Tags** card edits **Shopify discount tags** stored on this promotion (`DiscountAutomaticApp` / `DiscountCodeApp` **tags** in Admin—the same notion as tags on other Shopify discounts).

* **Search and pick** — Suggestions come from discount tags already used in your store (Admin **read discounts** data). You can also **add new tags** by typing and confirming.
* **Why use them** — Tags help you **organize and filter** discounts in Shopify Admin. They also power **Same-line combine tags** when you allow product discounts to stack on a single cart line (**Shopify Plus** — see [Combinations](#combinations)).
* **Internal tag** — Smarty keeps a hidden internal tag on save so the app can recognize its discounts. You do not need to add that tag yourself; it does not appear in this field.

## Combinations

Controls whether this discount stacks with other **product**, **order**, and **shipping** discounts already in Shopify.

### Product, order, and shipping

Use the checkboxes to allow combining with **product discounts**, **order discounts**, and (when applicable) **shipping discounts**. The card can summarize **how many other discounts** might stack with this one at checkout and link to a list—always verify real carts in checkout.

### Same-line combine tags

**Shopify Plus only.** Normally **only one product discount** applies to a **single cart line**. When **Product discounts** is enabled under **Combinations**, **Same-line combine tags** appears.

Add one or more tags that must **pair with [Discount tags](#discount-tags) on another product discount** so **both** product discounts may apply to the **same line**:

1. Each discount lists tags in **Same-line combine tags** that must appear as **discount tags** on the **other** discount.
2. Example: Discount **A** lists `SEASONAL` here and is tagged `LOYALTY`; Discount **B** lists `LOYALTY` here and is tagged `SEASONAL`. Then **A** and **B** can both apply to one line when both otherwise qualify.

If **Product discounts** is turned off, same-line tags are cleared. On non‑Plus stores the field is **disabled**—same-line stacking follows Shopify’s plan limits.

## Active dates

**Start** and **end** control when Shopify may apply the discount. Respect your store timezone.

## Time period

Restrict when the discount is active to certain days of the week and time windows.

## Test mode

Marks the discount as **test** so you can validate rules without treating it as a live campaign. This often works with a test email domain in [Settings](settings#test-mode-email-domain).

## Debug button

When shown, **Debug** helps you inspect why the current discount does or does not apply for a cart.

## Duplicate and shareable link

* **Duplicate** — Clone settings to tweak a new campaign.
* **Shareable link** — For automatic discounts, Shopify may expose a URL you can copy for email or landing pages.
