Coupon Code Not Working
When a customer reports that their coupon code isn't working, run through these checks. Most issues are resolved within the first three steps.
Does the code exist in the promotion's coupon pool?
In the Deducto Dashboard, open the relevant promotion and go to the Coupons tab. Search for the exact code the customer entered. If it isn't found, the code was never added to this promotion — or the customer may have the wrong promotion's code.
Has the code already been used up to its limit?
Single-use codes can only be redeemed once. If the code has already been used, it will be marked as exhausted in the coupon pool. Check the usage count shown against the code in the Coupons tab.
Has the customer already used this promotion?
If the promotion has a Max Use Per Email Address Count configured, a customer who has already reached that limit cannot use the promotion again — regardless of which coupon code they enter. Check the limit in the promotion settings and compare it against the customer's order history.
Is the promotion itself enabled and within its scheduled dates?
Even a valid coupon code won't work if the underlying promotion is disabled or outside its schedule window. Confirm the promotion is enabled and that today falls within its start and end dates.
Is the code typed correctly?
Ask the customer to copy and paste the code rather than retyping it. Common problems:
- Leading or trailing spaces
- Confusable characters, such as a zero (
0) entered as the letterO, or vice versa
Is the cart meeting the trigger conditions?
A valid, enabled coupon code still won't apply if the cart doesn't satisfy the promotion's trigger conditions — for example, a minimum spend that hasn't been reached, or a currency mismatch. Confirm the cart state meets all configured conditions.
Reading couponMatchResults
The couponMatchResults field in the Verify response tells you exactly what happened with each code the customer submitted: whether it was recognised (valid), whether it triggered a promotion (applied), and if not valid, the invalidReason. Use this as your first debugging step when inspecting a Verify response directly.
Note that couponMatchResults describes code recognition and promotion triggering — it is not a discount totals map. For discount amounts, see cartItemPromotions.
See the Verify endpoint reference for the full response structure.
Updated 25 days ago