- Short answer
- One Shopify help page ties "Unable to find a valid discount matching the code entered" to a deactivated code; expiry and unmet conditions block too.
- Not active or doesn't exist
- "Enter a valid discount code", per Shopify's discount codes FAQ; the line above covers a deactivated code
- Code already used, but no order
- An unfinished checkout is still holding the code
- Start and end times
- Follow the time zone selected in your Shopify admin
- Codes per order
- Up to 5 product or order codes and 1 shipping code
- Draft order invoices and links
- Customers can't enter a code at checkout by default
What does the error message at checkout mean?
It usually starts with a customer email saying your code doesn't work, often with the checkout message pasted in. Shopify's help pages tie each message to a cause:
- "Unable to find a valid discount matching the code entered" — a code from a deactivated discount.
- "Enter a valid discount code" — the code doesn't exist or isn't currently active.
- The code's name plus "discount code isn't valid for the items in your cart" — the code doesn't apply to the products in the cart.
- "has already been used" after the code's name — this customer can't reuse it.
- "Some discount codes couldn't be used together. We applied the best combination" (discount codes FAQ) or "Discount couldn't be used with your existing discounts" (combinations page) — codes that can't be combined.
Two pairs overlap: the first two cover an inactive code, the two in the last bullet cover uncombinable codes. Different help pages print them, and we don't pick a winner.
Match the line to the check: the two "valid discount" messages send you to the code's status, just below; "has already been used" to its usage limit in the same section; "isn't valid for the items" and the two combination lines to the cart's conditions further down.
Is the code active, in date and under its usage limit?
You can temporarily deactivate an unexpired discount, and you can reactivate any discount that's expired. Shareable discount links and QR codes work only for active discounts.
An expiring code ends on the End date at the End time you set, and start and end times follow the time zone selected in your Shopify admin. The discount help pages we read on October 10, 2026 name no separate message for an expired or scheduled code.
Usage caps sit in Maximum discount uses on the Create discount page. A customer who can't reuse a code sees that it "has already been used".
Search your orders for that customer. If no matching order exists, an unfinished checkout is still holding the code. Deactivating, reactivating or renaming a code doesn't reset its usage history.
Does the cart qualify for the discount?
If the code is live, compare its conditions with the cart, starting with the products it applies to:
- Products. A code that exists but doesn't apply to the products in the cart shows the "isn't valid for the items in your cart" message.
- Minimum purchase. On an amount-off discount, the minimum counts product prices only, without shipping or taxes; on an amount-off product discount, purchased gift cards count only if you selected the gift card product. Most discounts can't be applied to gift cards.
- Customers. A discount limited to customer segments applies only to existing customers.
- Markets. Codes work across all markets by default; if you selected Markets on the discount, only those markets qualify, and channel markets can't be assigned. See limiting a code to one country.
- B2B. In a blended store, discounts eligible for All customers, Specific customers or Customer segments apply to B2B and D2C customers by default (see B2B discount defaults).
- Sales channel. You can't restrict codes to specific sales channels.
Several codes on one order meet a separate cap: 5 product or order discount codes and 1 shipping discount code on the same order. Where discounts on the same items can't be combined, Shopify applies the best one for the customer, and product and order discounts take priority over shipping discounts. An active automatic discount can also conflict with the code (see which discounts combine).
Combining product with order discounts, or order with order, needs Checkout Extensibility without checkout.liquid customizations; several product discounts on one line item need the Shopify Plus plan.
Does this checkout accept discount codes?
No code field at all? You need at least one active code available to customers, Shop Pay customers must log in before the field displays, and a third-party app that affects pricing or checkout might hide it.
Draft orders work differently. By default, codes can't be applied at checkout for draft order invoices or links, and shipping and Buy X get Y codes aren't supported. A code that becomes invalid on an open draft order blocks you and your customer from completing it (see codes on draft orders).
In Shopify POS, fixed value and percentage codes apply only when all items in the cart meet the code's requirements. Codes can't be applied to exchanges; on POS Pro, product discount codes can't go on an item with a custom line item discount. On POS Lite, Buy X get Y discounts work only in your online store checkout.
Finally, codes can't be applied on the post-purchase page. Shopify also advises avoiding special characters in code names so they're added correctly to the checkout URL. Letter case is covered in whether codes are case sensitive.
This page was written by AI. Separate AI agents that did not write it check its figures and claims against official sources and test its links and interactive tools. A human editor sets the site's editorial direction, topics and rules and checks that pages are complete and display correctly, but does not check their facts or edit their text. Details may change — always confirm critical data at shopify.com.
Editorial Policy