Making the best available offer visible before payment
Designing checkout and coupon experiences that let learners discover, apply, change and remove eligible offers without relying on a code shared somewhere outside the purchase flow.
Some product visuals have been simplified or reconstructed to protect confidential platform and customer information. Prices and coupon codes are fictional.
A coupon field asks the learner to remember something.
The offer usually exists and the learner is usually eligible. What was missing was any way to find that out without already knowing the code.
Make eligible value discoverable before asking for memory.
Eligibility has five dimensions, and the learner should meet none of them.
All of this is real complexity in the admin model. None of it belongs in front of somebody deciding whether to buy a course.
The rules stay in the admin model. Only their result reaches the buyer.
A price that changes needs a state, not a banner.
A limited-time offer is three states, and each has to be unambiguous — including the two where the offer is not available.
Both outcomes need a next action.
A successful payment and a failed one are equally common events in a checkout. Only one of them usually gets designed.
Offers became part of the purchase decision, not hidden information.
Learners could discover eligible coupons, apply or replace them, and see the resulting price directly within the sales and checkout journey. No conversion uplift is claimed.
This project taught me that conversion UX often improves by exposing the decision inputs users already care about instead of making them hunt for them.