Skip to content
08 — Commerce · Conversion · Offer DiscoverySupporting project

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.

Role
Sole Product Designer
Status
Shipped
Scope
Commerce UX · Offer discovery · Pricing states · Checkout · Responsive design · Engineering collaboration · Design QA
CheckoutFictional course · synthetic prices and codes
Product Critique Intensive12 weeks · live cohort · starts 4 March
Offers you are eligible for
Order summary
Course price₹4,999
No coupon applied—
Total₹4,999

The price updates in place as soon as an offer is selected.

Apply, change and remove an offer, and watch the price follow. Prices and coupon codes are fictional.

Some product visuals have been simplified or reconstructed to protect confidential platform and customer information. Prices and coupon codes are fictional.

Chapter 01 — The problem

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.

Before — recall
Know a code exists
Obtain it somewhere
Remember or copy it
Enter it
Find out whether it works
Five steps, four of them outside the product
After — recognition
See available coupons
Compare
Select
Price updates
Four steps, all of them in the flow

Make eligible value discoverable before asking for memory.

Chapter 02 — Eligibility

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.

What decides eligibility
ValueFixed or percentage, with a maximum discount
WhenStart and expiry
WhoPer-learner limit, minimum purchase
WhereProduct or pricing plan, device, public or private
LimitTotal quantity available
What the learner sees
OffersThe ones they are actually eligible for
ValueWhat each is worth on this purchase
PriceThe resulting total

The rules stay in the admin model. Only their result reaches the buyer.

Chapter 03 — Time-limited offers

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.

Before the windowRegular price. The offer price isn’t shown at all.
Active windowOffer price, with the window made visible.
After it endsRegular price returns.
Showing a price that is not currently available is worse than showing no offer.
Chapter 04 — After payment

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.

Payment succeededSynthetic transaction
✓ Paid · access granted
Product Critique IntensiveAccess is active · starts 4 March
Transaction
Order#LY-48213
Amount₹3,999
StatusCaptured
What happens next

Your account has access to the course, the community space and the recordings.

Switch between the two outcomes. The failure path is a designed screen with a next action, not an error string.
Shipped

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.

Have a complicated product problem?

Platform architecture, AI features, real-time systems, or a product that has grown more rules than anyone can hold in their head.

Or write it here

This opens your own email client with the message filled in. Nothing is sent or stored by this page.

Pragya Kumari — Product DesignerCommerce · Offer discovery · 2026