ShopSe's EMI checkout served 200K+ monthly users through one rigid flow. Some customers financed a phone in 2 minutes. Others gave up after 40. This is how I rebuilt it, and what it taught me.
India's largest digital EMI marketplace: 200+ brands, 40K+ retail touchpoints, 10+ lenders. Three very different customers went through the same 20-screen checkout. Pre-approved buyers finished in 2 minutes. New to credit took 40.
Forty minutes at a counter, in a queue, handing your phone to a salesperson typing your PAN into a form you cannot see. You do not know if you will be approved, or how much longer this takes. Plenty of people walked out.
Nobody had designed this journey. It grew around lender API sequences, and every new partnership added screens.
Bank knows them. Phone → offers → EMI → done. ~2 minutes.
Full real-time underwriting: identity, income, credit score, KYC. 20–40 minutes.
Pick a tenure, confirm on the existing card. Medium friction.
From the original flow · 7 of 20 screens · 5+ long forms with no progress indicators
Remote testing would have missed the point. This flow happens at a counter, on a borrowed phone, with a salesperson in the middle and a queue behind. So I went where the product lives.
"This feels like a bank loan application, not a phone purchase."
New-to-credit user · session 3"Which one is actually cheaper overall?"
Asked to the merchant · 3 of 5 sessions"Is this normal? Why so much scrolling?"
At Form 6 · a 1140px scrollI mapped what a new-to-credit customer did, thought, and felt at every step. Seeing the emotion drop next to the screen that caused it made the trust problem impossible to ignore. Each low point became a design move in V2.
This feels like a bank loan application, not a phone purchase.
Is this normal? Why so much scrolling?
Which one is actually cheaper overall?
Journey map · new-to-credit customer at the counter, before the redesign · built from the five shadowed purchases · swipe sideways to see all six stages
My first pass polished the category funnel: better icons, better cards, tighter spacing. The field visits showed customers never used it. I killed the funnel and replaced it with direct search and a barcode scan. That one correction changed the direction of the whole redesign, and taught me to question the structure before touching the surface.
Two underwriting layers exist. A fast soft check gives a directional answer from phone, PAN, and date of birth. A slow full check gives binding approval. The old flow ran the expensive one first, so users spent 20 minutes before any signal.
"The goal isn't to remove friction. It's to move clarity earlier in the journey."
The principle every later decision was tested againstBefore any UI, I argued four structures against the field evidence.
Pick a lender, fill the form, then learn eligibility.
Users don't know which bank will approve them. Choice without clarity creates dead ends.Everything upfront, then all eligible banks.
Effort before clarity feels overwhelming.Show all banks, highlight the likely approval.
Less confusion, same repeated effort.Fill details once. See every valid lender instantly.
People accept effort when it guarantees a clear, comparable result.Four phases, each built around the question the user is silently asking at that moment: who am I, what can I afford, can I be trusted, is it done.
One login screen, inline OTP. Eligibility runs silently behind it.
Direct search or barcode scan. Side-by-side EMI comparison.
3 focused forms, 3 fields removed after a compliance audit, review checkpoint.
Mandate summary, GPay, named loading states.
The shipped flow · 12 screens, login to receipt
In 3 of 5 field sessions, customers asked the merchant which plan was cheaper. The old list showed monthly amounts and nothing else. The new screen makes the comparison for them.

Lender partners resisted exposing comparable totals. I brought recordings of customers asking merchants "which is cheaper?" The founder backed the user-first call.
V1 shipped polish: shorter fields, nicer EMI list, a cleaner success page. Friction barely moved, because the architecture hadn't. V2 restructured instead, and two of its less glamorous decisions did the most work.

Payment used to be 5 to 8 seconds of blank white screen. Users called it "sketchy." I replaced it with named progress stages, so a mandatory wait reads as motion instead of failure.

Drop-off comes from production analytics, screen count from a before and after audit. The speed figure is different: timed walkthroughs of the same purchase, reliable on direction, less exact on magnitude. I would rather say that than let it be assumed.
Drop-offs moved earlier in the funnel: cheap exits at login and search instead of expensive abandonment at Form 6 and KYC. Funnel analytics.
The review checkpoint caught PAN and Aadhaar errors before lender APIs saw them. Merchant training simplified, fewer support tickets. Ops team feedback.
The architecture made online (not just in-store) checkout viable. ShopSe expanded into Health & Wellness (2× repeat customers), EdTech (+55% enrollments), and Insurance (+48% policy sales). Company vertical reporting.
Shipped on an 85+ component design system I built and maintained as the lead designer, adopted by 4 product squads · WCAG 2.1 AA / AODA across 47 flows