Skip to content
Ritesh FirodiyaGet in touch

Work / Chitragupt / Wiki / Surfaces

kyc-verify

Surfacecanonicalverified 2026-06-27

SURFACE.WEB.APP.KYC.VERIFY

KYC — PAN + Aadhaar entry

Summary

Step 2 of the KYC flow. User enters PAN (pre-filled from sign-up) + name + DOB for NSDL verification, plus Aadhaar number for UIDAI OTP. Captures KYC consent inline.

Raw wireframe

  • .context/designs/web/kyc/verify.html
  • .context/designs/mobile/kyc/verify.html

Copy

  • H1: "Enter PAN and Aadhaar"
  • Sub: "Both are verified instantly with NSDL (PAN) and UIDAI (Aadhaar). We confirm the same person owns both."
  • PAN section: Name on PAN · PAN number · DOB
  • Aadhaar section: 12-digit Aadhaar number
  • Phone-OTP warning: "Phone OTP only. Make sure the phone linked to your Aadhaar is reachable. If you've changed numbers, update it at uidai.gov.in before continuing."
  • Consent checkbox: "I authorise Chitragupt to verify my PAN with NSDL and my Aadhaar with UIDAI for the purpose of completing my KYC, as required under the Prevention of Money Laundering Act 2002. I understand my Aadhaar number is hashed and not stored."
  • Primary CTA: "Send Aadhaar OTP →"

Behaviour

  • PAN field validates format client-side; NSDL check runs on submit.
  • Submit fails if any required field empty or consent unchecked.
  • On submit success → kyc-otp. On NSDL failure (PAN not found / DOB mismatch) → status screen failed state with specific reason.

Flows that touch this surface

Concepts referenced

Sources

  • .context/designs/web/kyc/verify.html
  • .context/designs/mobile/kyc/verify.html

Every project of mine is written down like this.

Read the résumé