Skip to main content
Pull an investor’s government documents straight from DigiLocker after they sign in and consent. You get their verified identity plus parsed PAN, Aadhaar, and driving licence data. This is not the same as KYC PAN Status. PAN Status is a passive KRA lookup. DigiLocker is an active flow where the investor logs in and shares documents.

How it works

  1. (Optional) Look up whether the investor already has a DigiLocker account.
  2. Start a session. You get a session_id and an authorization_url.
  3. Redirect the investor to authorization_url. They sign in and consent.
  4. DigiLocker sends them back to your redirect_url.
  5. Read the result with the session_id.
The session_id is the only thing you carry between steps.
Consent is mandatory. You must pass consent: true and a consent_purpose of at least 20 characters. We store both as a consent receipt.

1. Account lookup (optional)

Decide whether to send the investor down a signin or signup path. Pass one of mobile or aadhaar_number, not both.
Free.

2. Start a session

Body fields:
  • consent (required) — must be true.
  • consent_purpose (required) — min 20 characters.
  • redirect_url (required) — where the investor lands after consent.
  • documents — any of aadhaar, pan, driving_licence, email, mobile.
  • state — echoed back to you unchanged.
  • user_flowsignin or signup.
  • prefill_mobile — pre-verified mobile to skip the signup OTP (with signup).
Free. After consent, the investor returns to your redirect_url with query params:
  • Granted: ?success=true&id={session_id}&documents=pan+aadhaar&has_verified_data=1
  • Denied: ?success=false&id={session_id}&error={error}
id is the session_id. documents lists what they agreed to share.

4. Read the result

One call returns everything the investor consented to. Missing pieces show up under errors; the rest still comes back.
Body fields:
  • fetch_documents — documents to parse: pan, aadhaar, driving_licence. Default none.
  • include_documents — include the issued-documents list. Default true.
Response:
Each parsed document also carries a signature block with the issuer’s certificate details. Costs 0.25 credits per call, no matter how many documents you fetch.

Credits

Errors

Frontend note

Don’t ship your API key to the browser. Mint a short-lived access token (at_) from your backend with POST /v1/token and use that.

Next steps

KYC PAN Status

Check a PAN’s KRA registration status

CAS Parsing

Parse portfolio statements