My EMI Pay
  1. Application journey
  • My-EMI Lending API
  • System
    • Health check
      GET
  • Products
    • List published loan products
      GET
  • Auth
    • Request OTP
      POST
    • Verify OTP
      POST
    • Refresh tokens
      POST
    • Select a family account after OTP
      POST
    • Add a family member on this phone
      POST
    • Logout
      POST
    • Send email verification link
      POST
    • Email verification status
      GET
    • Confirm email verification (Bearer)
      GET
    • Confirm email verification token (Bearer)
      POST
    • iOS Universal Links association
      GET
    • Android App Links association
      GET
    • List family profiles on this phone
      GET
  • Profile
    • Get customer profile
    • Update customer profile
  • Applications
    • Get current application screen
    • Begin verification
    • Verify PAN
    • Acknowledge credit score
    • Accept offer
    • Create loan
    • Request payout
  • Application journey
    • Application journey
      GET
    • Start PAN KYC via DigiLocker
      POST
    • PAN KYC status
      GET
    • Start Aadhaar KYC via DigiLocker
      POST
    • Aadhaar KYC status
      GET
    • Edit Aadhaar communication address
      POST
    • Verify bank account (KYC)
      POST
    • Start eSign
      POST
    • eSign status
      GET
    • Bureau report
      GET
    • Loan eligibility
      GET
    • Complete PAN KYC (poll DigiLocker)
      POST
    • Complete Aadhaar KYC (poll DigiLocker)
      POST
    • Pull bureau report
      POST
  • Applications (staff)
    • Pull bureau (staff/system)
    • Evaluate and sanction (staff/system)
    • Cancel application (staff/system)
  • Applications (deprecated)
    • Get application screen by id (deprecated)
    • Begin verification (by id) (deprecated)
    • Verify PAN (by id) (deprecated)
    • Acknowledge credit score (by id) (deprecated)
    • Accept offer (by id) (deprecated)
    • Create loan (by id) (deprecated)
    • Request payout (by id) (deprecated)
  • Webhooks
    • Resolve or fail bureau claim
    • Resolve or fail KYC claim
    • Resolve or fail eSign claim
    • Resolve or fail income claim
  • Ops
    • Dispatch due outbox handlers
    • Poll workflow timers
    • Redrive dead-letter handler
  1. Application journey

Complete PAN KYC (poll DigiLocker)

POST
https://api-dev.myemipay.com/application/kyc/pan/status
Last modified:2026-09-14 00:21:43
Complete PAN KYC (poll DigiLocker)
Description: consent or a missing PAN in the locker leaves the step pending with a fresh url — open it again. Only status: resolved + verified: true is done.
Usage: on a timer after PAN start, and whenever the WebView returns from DigiLocker.
Details: polls DigiLocker. Fetches PAN XML first and matches it to the PAN the customer entered. Verified data: fullName, maskedPan, dateOfBirth, documentType. PDF is fetched and stored only after that match; XML is parsed and not stored. Same legal name (if they have no unique profile name yet) or a PAN already in the database — this phone or another — returns 409 and they cannot continue. May rotate tokens.
Next: POST /application/bureau, then POST /applications/acknowledge-credit-score. On name_already_exists / pan_already_exists, sign in to the existing account — do not add another.
Auth: Authorization: Bearer {{accessToken}}
Errors: 401 unauthorized | session_expired · 404 not_found · 409 name_already_exists | pan_already_exists

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Header Params

Responses

🟢200PAN verified + tokens
application/json
Bodyapplication/json

🟠401Unauthorized
🟠409Step not ready
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://api-dev.myemipay.com/application/kyc/pan/status' \
--header 'Authorization: Bearer <token>'
Response Response Example
200 - PAN verified + tokens
{
  "status": "resolved",
  "verified": true,
  "data": {
    "fullName": "Rajavarapu Yaswanth Kumar",
    "maskedPan": "XXXXXX085R",
    "dateOfBirth": "15-08-1990",
    "documentType": "PAN"
  },
  "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9…",
  "refreshToken": "refresh_…",
  "tokenType": "Bearer",
  "expiresIn": 86400,
  "identityKind": "customer",
  "customerId": "cust_1735123456789",
  "productId": "prod_personal"
}
Modified at 2026-09-14 00:21:43
Previous
Loan eligibility
Next
Complete Aadhaar KYC (poll DigiLocker)
Built with