The plan's price is the line's price, not a discount
This plan's pricing policy takes 10% off. The cart reports that as the line's price and as a price adjustment on the selling plan allocation.
The same product has a 20% automatic discount set to one-time purchases. It did not reach the subscription line, and nothing in the cart mentions it.
Into the cart
- 1 × Travel Tin at $50.00, on the selling plan “Every 30 days, 10% off”
- On the store, Shopify's automatic discount “VERIFY tin 20% off”: 20% off the tin, one-time purchases only, combines with product, order and shipping discounts
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Travel TinSelling plan “Every 30 days, 10% off”, 1 price adjustment | 1 | $45.00 | none | $45.00 |
| Discounts on the cart | none | |||
| Cart total | $45.00 | |||
What that shows
- The selling plan allocation listed one price adjustment, and the line's price was $45.00: the variant's $50.00 less the plan's 10%.
- The $5.00 was not reported as a discount: no discount allocation appeared anywhere in the cart.
- The store's 20% automatic discount on this product, set to one-time purchases, did not reach the subscription line, and the cart returned no warning about it.
A product discount comes off the plan's price
The code is a product discount set to apply to subscriptions as well as one-time purchases.
Into the cart
- 1 × Travel Tin at $50.00, on the selling plan “Every 30 days, 10% off”
- On the store, Shopify's automatic discount “VERIFY tin 20% off”: 20% off the tin, one-time purchases only, combines with product, order and shipping discounts
- Code VERIFY-TIN5-ANY: $5.00 off the tin, one-time purchases and subscriptions, combines with product, order and shipping discounts
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Travel TinSelling plan “Every 30 days, 10% off”, 1 price adjustment | 1 | $45.00 | −$5.00 code VERIFY-TIN5-ANY | $40.00 |
| Discounts on the cart | none | |||
| Cart total | $40.00 | |||
VERIFY-TIN5-ANYapplicable: true
What that shows
- The code applied on the line: $5.00 off the plan's $45.00, a line total of $40.00.
- The line's price before discounts still read $45.00, and the plan still listed its one price adjustment.
An order discount's percentage is taken from the plan's price
A margin forecast for a subscriber with a code has to start from what the plan charges, not from the variant's price.
Into the cart
- 1 × Travel Tin at $50.00, on the selling plan “Every 30 days, 10% off”
- On the store, Shopify's automatic discount “VERIFY tin 20% off”: 20% off the tin, one-time purchases only, combines with product, order and shipping discounts
- Code VERIFY-ORDER10-ANY: 10% off the order, one-time purchases and subscriptions, combines with product and shipping discounts
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Travel TinSelling plan “Every 30 days, 10% off”, 1 price adjustment | 1 | $45.00 | none | $45.00 |
| Discounts on the cart | −$4.50 code VERIFY-ORDER10-ANY | |||
| Cart total | $40.50 | |||
VERIFY-ORDER10-ANYapplicable: true
What that shows
- The code took 10% of the plan's price, not of the variant's: $4.50, a cart total of $40.50.
- It was in the cart's list of allocations; the line kept its $45.00 total and carried none.
A shipping discount leaves the plan's price alone
A free-shipping code set to apply to subscriptions.
Into the cart
- 1 × Travel Tin at $50.00, on the selling plan “Every 30 days, 10% off”
- On the store, Shopify's automatic discount “VERIFY tin 20% off”: 20% off the tin, one-time purchases only, combines with product, order and shipping discounts
- Code VERIFY-SHIPFREE-ANY: free shipping, one-time purchases and subscriptions, combines with product and order discounts
- A US delivery address, with the cheapest rate selected
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Travel TinSelling plan “Every 30 days, 10% off”, 1 price adjustment | 1 | $45.00 | none | $45.00 |
| Discounts on the cart | none | |||
| Delivery: Standard selectedQuoted: Standard $8.00, Express $15.00 | −$8.00 code VERIFY-SHIPFREE-ANY | $0.00 | ||
| Cart total | $45.00 | |||
VERIFY-SHIPFREE-ANYapplicable: true
What that shows
- The $8.00 Standard rate was discounted in full by the code, and the cart total was the plan's $45.00.
All three together
Each code allows the other two classes. The order of the arithmetic is the plan's price, then the product discount, then the order discount's percentage of what is left.
Into the cart
- 1 × Travel Tin at $50.00, on the selling plan “Every 30 days, 10% off”
- On the store, Shopify's automatic discount “VERIFY tin 20% off”: 20% off the tin, one-time purchases only, combines with product, order and shipping discounts
- Code VERIFY-TIN5-ANY: $5.00 off the tin, one-time purchases and subscriptions, combines with product, order and shipping discounts
- Code VERIFY-ORDER10-ANY: 10% off the order, one-time purchases and subscriptions, combines with product and shipping discounts
- Code VERIFY-SHIPFREE-ANY: free shipping, one-time purchases and subscriptions, combines with product and order discounts
- A US delivery address, with the cheapest rate selected
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Travel TinSelling plan “Every 30 days, 10% off”, 1 price adjustment | 1 | $45.00 | −$5.00 code VERIFY-TIN5-ANY | $40.00 |
| Discounts on the cart | −$4.00 code VERIFY-ORDER10-ANY | |||
| Delivery: Standard selectedQuoted: Standard $8.00, Express $15.00 | −$8.00 code VERIFY-SHIPFREE-ANY | $0.00 | ||
| Cart total | $36.00 | |||
VERIFY-ORDER10-ANYapplicable: trueVERIFY-SHIPFREE-ANYapplicable: trueVERIFY-TIN5-ANYapplicable: true
What that shows
- All three codes applied.
- $5.00 came off the plan's $45.00 on the line; the order code then took 10% of the remaining $40.00; the $8.00 rate was free.
- The cart total was $36.00.
A subscription line and a one-time line in the same cart
A cart can hold both kinds of purchase. Here the tin is on its plan and the bag is bought once, with an app discount that prices the bag.
An order code set to one-time purchases is not refused on such a cart: it applies, and takes its percentage from the one-time line alone. On a cart with nothing but subscription lines, the same code is refused.
Into the cart
- 1 × Single Bag at $40.00, bought once
- 1 × Travel Tin at $50.00, on the selling plan “Every 30 days, 10% off”
- The cart attribute the app discount's function reads
- On the store, Shopify's automatic discount “VERIFY tin 20% off”: 20% off the tin, one-time purchases only, combines with product, order and shipping discounts
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Travel TinSelling plan “Every 30 days, 10% off”, 1 price adjustment | 1 | $45.00 | none | $45.00 |
| Single Bag | 1 | $40.00 | −$10.00 automatic, “Offer Suite” | $30.00 |
| Discounts on the cart | none | |||
| Cart total | $75.00 | |||
What that shows
- The tin on its plan cost $45.00 and the bag bought once cost $30.00 after the app's discount: a cart total of $75.00.
- The only discount allocation in the cart was the app's $10.00, on the bag's line.
Into the cart
- 1 × Single Bag at $40.00, bought once
- 1 × Travel Tin at $50.00, on the selling plan “Every 30 days, 10% off”
- No cart attribute, so the app's functions return no operations
- On the store, Shopify's automatic discount “VERIFY tin 20% off”: 20% off the tin, one-time purchases only, combines with product, order and shipping discounts
- Code VERIFY-ORDER10: 10% off the order, one-time purchases only, combines with product and shipping discounts
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Travel TinSelling plan “Every 30 days, 10% off”, 1 price adjustment | 1 | $45.00 | none | $45.00 |
| Single Bag | 1 | $40.00 | none | $40.00 |
| Discounts on the cart | −$4.00 code VERIFY-ORDER10 | |||
| Cart total | $81.00 | |||
VERIFY-ORDER10applicable: true
What that shows
- The code applied, and took 10% of the one-time line only: $4.00 of the bag's $40.00, nothing of the tin's $45.00.
- The cart total was $81.00.
Into the cart
- 1 × Travel Tin at $50.00, on the selling plan “Every 30 days, 10% off”
- On the store, Shopify's automatic discount “VERIFY tin 20% off”: 20% off the tin, one-time purchases only, combines with product, order and shipping discounts
- Code VERIFY-ORDER10: 10% off the order, one-time purchases only, combines with product and shipping discounts
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Travel TinSelling plan “Every 30 days, 10% off”, 1 price adjustment | 1 | $45.00 | none | $45.00 |
| Discounts on the cart | none | |||
| Cart total | $45.00 | |||
VERIFY-ORDER10applicable: false- warning
DISCOUNT_NO_ENTITLED_LINE_ITEMS“The VERIFY-ORDER10 discount code is not valid for the items in your cart”
What that shows
- The code was listed as not applicable, with the warning DISCOUNT_NO_ENTITLED_LINE_ITEMS, and the cart total stayed at $45.00.
How this was verified
Every cart on this page was built through the Storefront API on a Shopify Plus development store we keep for this, on API version 2026-10, and read back as Shopify priced it. The store sells two products in these carts: Single Bag, at $40.00, also sold on a selling plan named “Every 30 days” that has no pricing policy; Travel Tin, at $50.00, also sold on a selling plan named “Every 30 days, 10% off” whose pricing policy takes 10% off. It quotes two delivery rates to a US address.
It has one automatic app discount, titled “Offer Suite”, with a product class and a shipping class, set to combine with product, order and shipping discounts. Its function reads a cart attribute: with it, the function takes 25% off one unit of Single Bag bought once, or $8.00 off the unit on its selling plan, and makes the cheapest delivery rate free. Without it, the function returns no operations.
| Discount | Class | Gives | Combination setting |
|---|---|---|---|
| Automatic, “VERIFY tin 20% off” | Product | 20% off the tin, one-time purchases only | combines with product, order and shipping discounts |
| Code VERIFY-TIN5-ANY | Product | $5.00 off the tin, one-time purchases and subscriptions | combines with product, order and shipping discounts |
| Code VERIFY-ORDER10-ANY | Order | 10% off the order, one-time purchases and subscriptions | combines with product and shipping discounts |
| Code VERIFY-SHIPFREE-ANY | Shipping | free shipping, one-time purchases and subscriptions | combines with product and order discounts |
| Code VERIFY-ORDER10 | Order | 10% off the order, one-time purchases only | combines with product and shipping discounts |
A suite builds these carts again and reads the discount settings from the store before it does. A statement that no longer matches the cart takes this page down until it is corrected, and no cart stands for more than 90 days without being built again. This is what one store returned on one API version: your store’s plan, markets and other apps can change the result, so build the cart.
Seen something different on your store? Write to privacy@offersuite.io with the cart and we’ll run it.