Fifth place applies, sixth place does not
The same code, on the same line, in two carts. Behind four codes the store does not have, it applied. Behind five, it did not, and the cart said so in a warning.
Into the cart
- 1 × Single Bag at $40.00, bought once
- No cart attribute, so the app's functions return no operations
- Code VERIFY-NO-SUCH-CODE-1: not a code on the store
- Code VERIFY-NO-SUCH-CODE-2: not a code on the store
- Code VERIFY-NO-SUCH-CODE-3: not a code on the store
- Code VERIFY-NO-SUCH-CODE-4: not a code on the store
- Code VERIFY-BAG5: $5.00 off the bag, one-time purchases only, combines with product, order and shipping discounts
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Single Bag | 1 | $40.00 | −$5.00 code VERIFY-BAG5 | $35.00 |
| Discounts on the cart | none | |||
| Cart total | $35.00 | |||
VERIFY-BAG5applicable: trueVERIFY-NO-SUCH-CODE-1applicable: falseVERIFY-NO-SUCH-CODE-2applicable: falseVERIFY-NO-SUCH-CODE-3applicable: falseVERIFY-NO-SUCH-CODE-4applicable: false- warning
DISCOUNT_NOT_FOUND“Enter a valid discount code”
What that shows
- The fifth code applied: $5.00 off the line, a cart total of $35.00.
- The four unknown codes were listed as not applicable, and the cart's only warning was DISCOUNT_NOT_FOUND.
Into the cart
- 1 × Single Bag at $40.00, bought once
- No cart attribute, so the app's functions return no operations
- Code VERIFY-NO-SUCH-CODE-1: not a code on the store
- Code VERIFY-NO-SUCH-CODE-2: not a code on the store
- Code VERIFY-NO-SUCH-CODE-3: not a code on the store
- Code VERIFY-NO-SUCH-CODE-4: not a code on the store
- Code VERIFY-NO-SUCH-CODE-5: not a code on the store
- Code VERIFY-BAG5: $5.00 off the bag, one-time purchases only, combines with product, order and shipping discounts
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Single Bag | 1 | $40.00 | none | $40.00 |
| Discounts on the cart | none | |||
| Cart total | $40.00 | |||
VERIFY-BAG5applicable: falseVERIFY-NO-SUCH-CODE-1applicable: falseVERIFY-NO-SUCH-CODE-2applicable: falseVERIFY-NO-SUCH-CODE-3applicable: falseVERIFY-NO-SUCH-CODE-4applicable: falseVERIFY-NO-SUCH-CODE-5applicable: false- warning
DISCOUNT_CODE_NOT_HONOURED“The VERIFY-BAG5 discount code is not honoured” - warning
DISCOUNT_NOT_FOUND“Enter a valid discount code”
What that shows
- The cart was created and listed all six codes.
- The sixth code, valid and applicable to the line, was listed as not applicable, with the warning DISCOUNT_CODE_NOT_HONOURED. The line cost its full $40.00.
- The five codes ahead of it took the five places without discounting anything: a code the store does not have still counts.
The place in the list decides, not the code
The same six codes again with the real one first. It applied, and the warning moved to whichever code was now sixth.
Into the cart
- 1 × Single Bag at $40.00, bought once
- No cart attribute, so the app's functions return no operations
- Code VERIFY-BAG5: $5.00 off the bag, one-time purchases only, combines with product, order and shipping discounts
- Code VERIFY-NO-SUCH-CODE-1: not a code on the store
- Code VERIFY-NO-SUCH-CODE-2: not a code on the store
- Code VERIFY-NO-SUCH-CODE-3: not a code on the store
- Code VERIFY-NO-SUCH-CODE-4: not a code on the store
- Code VERIFY-NO-SUCH-CODE-5: not a code on the store
What Shopify returned
| Line | Quantity | Price | Discounts on the line | Line total |
|---|---|---|---|---|
| Single Bag | 1 | $40.00 | −$5.00 code VERIFY-BAG5 | $35.00 |
| Discounts on the cart | none | |||
| Cart total | $35.00 | |||
VERIFY-BAG5applicable: trueVERIFY-NO-SUCH-CODE-1applicable: falseVERIFY-NO-SUCH-CODE-2applicable: falseVERIFY-NO-SUCH-CODE-3applicable: falseVERIFY-NO-SUCH-CODE-4applicable: falseVERIFY-NO-SUCH-CODE-5applicable: false- warning
DISCOUNT_CODE_NOT_HONOURED“The VERIFY-NO-SUCH-CODE-5 discount code is not honoured” - warning
DISCOUNT_NOT_FOUND“Enter a valid discount code”
What that shows
- In first place the code applied: $5.00 off, a cart total of $35.00. Which code is set aside is decided by its place in the list.
- The cart still returned the warning DISCOUNT_CODE_NOT_HONOURED, for the code in sixth place.
A free-shipping code is counted apart
A free-shipping code in sixth place, behind the same five, applied to the selected rate.
Into the cart
- 1 × Single Bag at $40.00, bought once
- No cart attribute, so the app's functions return no operations
- Code VERIFY-NO-SUCH-CODE-1: not a code on the store
- Code VERIFY-NO-SUCH-CODE-2: not a code on the store
- Code VERIFY-NO-SUCH-CODE-3: not a code on the store
- Code VERIFY-NO-SUCH-CODE-4: not a code on the store
- Code VERIFY-NO-SUCH-CODE-5: not a code on the store
- Code VERIFY-SHIPFREE: free shipping, one-time purchases only, 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 |
|---|---|---|---|---|
| Single Bag | 1 | $40.00 | none | $40.00 |
| Discounts on the cart | none | |||
| Delivery: Standard selectedQuoted: Standard $8.00, Express $15.00 | −$8.00 code VERIFY-SHIPFREE | $0.00 | ||
| Cart total | $40.00 | |||
VERIFY-NO-SUCH-CODE-1applicable: falseVERIFY-NO-SUCH-CODE-2applicable: falseVERIFY-NO-SUCH-CODE-3applicable: falseVERIFY-NO-SUCH-CODE-4applicable: falseVERIFY-NO-SUCH-CODE-5applicable: falseVERIFY-SHIPFREEapplicable: true- warning
DISCOUNT_NOT_FOUND“Enter a valid discount code”
What that shows
- The free-shipping code applied from sixth place: the $8.00 Standard rate was discounted in full, and the cart total was $40.00.
- The cart returned no DISCOUNT_CODE_NOT_HONOURED warning: a shipping code does not take one of the five places.
What to do in a code field
A code field that appends each attempt to the cart's list sets aside the right code after five wrong ones. Send the cart only the codes that can apply, and replace the list instead of growing it.
Read the warnings. DISCOUNT_CODE_NOT_HONOURED also marks a code refused beside another discount, so check how many codes the cart holds before reading it as a combination problem.
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 one product in these carts: Single Bag, at $40.00, also sold on a selling plan named “Every 30 days” that has no pricing policy. 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 |
|---|---|---|---|
| Code VERIFY-BAG5 | Product | $5.00 off the bag, one-time purchases only | combines with product, order and shipping discounts |
| Code VERIFY-SHIPFREE | Shipping | free shipping, one-time purchases only | combines with product and order 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.