My EMI Pay
  1. Application
  • My-EMI Lending API
  • System
    • Health check
      GET
  • Products
    • List published loan products
      GET
  • Auth
    • Request OTP
      POST
    • Resend OTP
      POST
    • Refresh tokens
      POST
    • Verify OTP
      POST
    • Select a family account after OTP
      POST
    • Add a family member on this phone
      POST
    • Logout
      POST
    • List family profiles on this phone
      GET
    • 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
  • Profile
    • Get customer profile
      GET
    • Update customer profile
      POST
  • Application journey
    • HTML origination document pack
    • Start bank statement consent
    • Poll bank statement consent
    • Application journey
    • Start PAN KYC via DigiLocker
    • PAN KYC status
    • Start Aadhaar KYC via DigiLocker
    • Aadhaar KYC status
    • Edit Aadhaar communication address
    • Verify bank account (KYC)
    • Start eSign
    • eSign status
    • Complete PAN KYC (poll DigiLocker)
    • Complete Aadhaar KYC (poll DigiLocker)
    • Start mock e-NACH
    • Pull bureau report
    • Mock e-NACH status
    • Bureau report
    • Loan eligibility
  • Webhooks
    • Resolve or fail bureau claim
    • Resolve or fail KYC claim
    • Resolve or fail eSign claim
    • Resolve or fail income claim
  • Ops
    • Confirm queued payouts
    • Wake steps that are waiting on a clock
    • Retry one failed payout row
  • Other
    • List published originators
    • HTML origination pack for one originator
  • Application
    • Get current application screen
      GET
    • Begin verification
      POST
    • Verify PAN
      POST
    • Acknowledge credit score
      POST
    • Accept offer
      POST
    • Create loan
      POST
    • Request payout
      POST
  • Applications
    • Get current application screen
    • Begin verification
    • Verify PAN
    • Acknowledge credit score
    • Accept offer
    • Create loan
    • Request payout
  1. Application

Verify PAN

POST
https://api-dev.myemipay.com/application/verify-pan
Last modified:2026-09-27 16:32:15
Verify PAN
Description: runs Trulens PAN KYC then eFundzz bureau pull in one customer action. Phone comes from the OTP session when omitted.
Usage: after profile is saved, when the screen offers verify_pan (or as an alternative to the journey PAN pair).
Details: body { pan, phone? }. Screen comes back with summary.creditScore when bureau resolves. Invalid PAN / wrong status → 400. Vendor failure → provider_failed. Same legal name as another person → 409 name_already_exists. Same PAN on a new phone migrates the existing Customer (old phone picker drops them). Binding someone else's PAN as a Customer → 409 pan_already_exists.
Next: POST /application/acknowledge-credit-score. The offer appears later, after Aadhaar and the short Under verification wait.
Auth: Authorization: Bearer {{accessToken}}
Errors: 400 Invalid PAN, wrong status, or missing phone · 401 unauthorized | session_expired · 403 Forbidden · 404 Application not found · 409 step_not_ready | name_already_exists | pan_already_exists

Request

Header Params

Body Params application/jsonRequired

Examples

Responses

🟢200PAN + bureau ready
application/json
Bodyapplication/json

🟠401Unauthorized
🟠422Wrong status
🟠409Step not ready
Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://api-dev.myemipay.com/application/verify-pan' \
--header 'Authorization: Bearer ' \
--header 'Content-Type: application/json' \
--data '{
  "pan": "ACUPA7085R",
  "phone": "9000000003",
  "redirectUrl": "https://trulens.in",
  "revision": ""
}'
Response Response Example
200 - PAN + bureau ready
{
  "application": {
    "id": "app_1735123456789",
    "reference": "PME-A1B2C3D4"
  },
  "status": "verifying",
  "message": "Your credit score is ready. Please review and continue.",
  "summary": {
    "creditScore": "750",
    "activeAccounts": "2",
    "worstDpdDays": "0"
  },
  "youCanNow": [
    {
      "action": "acknowledge_credit_score",
      "title": "Continue",
      "submitTo": "/application/acknowledge-credit-score"
    }
  ],
  "revision": "3",
  "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9…",
  "refreshToken": "refresh_…",
  "tokenType": "Bearer",
  "expiresIn": 86400,
  "identityKind": "customer",
  "customerId": "cust_1735123456789",
  "productId": "prod_personal"
}
Modified at 2026-09-27 16:32:15
Previous
Begin verification
Next
Acknowledge credit score
Built with