What you are seeing
This fix traces the coupon from scan to till and finds the rule that rejects it. You will test the coupon value, the offer dates, the eligibility rules, and the till behaviour, then repair the coupon, the offer, or the code. Verify the fix with a real redemption test, not just a scan test.
Likely causes
1.
Coupon code mistyped in the payload — Quick test: decode the payload and compare the coupon code with the offer record.
2.
Offer expired or not yet started — Quick test: check the offer start and end dates against the scan date.
3.
Coupon already redeemed — Quick test: check the redemption record for the coupon code.
4.
Eligibility rule blocks the visitor — Quick test: read the offer rules and compare them with the basket.
5.
Till or site not reading the coupon field — Quick test: enter the same coupon code manually and see whether it applies.
Step-by-step fix
Step 1: Decode the payload and write down the exact coupon code it carries.
Step 2: Compare the code with the offer record, including the spelling, the dates, and the rules.
Step 3: Check the redemption record to see whether the coupon was already used.
Step 4: Enter the same coupon code manually. If it applies manually, the QR journey is at fault; if it fails manually, the offer is at fault.
Step 5: Fix the coupon code, the offer dates, or the eligibility rules, whichever is wrong.
Step 6: If the payload was wrong, regenerate the code from the corrected coupon.
Step 7: Retest with a real redemption on two devices and confirm the discount applies.
Putting this into practice
In practice, test every coupon code with a real redemption before launch, not just a scan. A scan that opens the right page proves the code carries the coupon; only a redemption proves the coupon applies. Record the before-and-after behaviour with the job file, so the fix is provable rather than anecdotal. When the same failure appears again, that record tells you whether the old fix held or a new cause appeared.
Common mistakes to avoid
- Testing a coupon QR code by scanning it, without ever completing a redemption.
- Reprinting the full run before a single proof passes, which turns one failure into many.
- Testing on one phone in ideal conditions instead of two phones in the real conditions where a code that scans but the coupon does not apply will be used.
- Changing the artwork and the placement at the same time, so you cannot tell which change fixed a code that scans but the coupon does not apply.- Skipping the proof test because the change looked small, when small changes cause most repeat failures.
Quick checklist
- The decoded coupon code matches the offer record
- The offer is within its valid dates
- A real redemption applies the discount
- The corrected proof passes on two phones in the real conditions
- The fix is recorded in the job file so the next reprint starts from a proven setup
- Every printed copy is checked against the approved proof
- The proof is retested after any later change to the link, design, or placement
Related tools and guides
- [coupon QR code generator](/coupon-qr-code-generator)
- [bulk coupon QR generator](/bulk-coupon-qr-generator)
- [QR expiry checker](/qr-expiry-checker)
- [QR batch validator](/qr-batch-validator)
- [QR scan log](/qr-scan-log)
- [QR safety checker](/qr-safety-checker)