Biometric Kyc Status

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Check the merchant/outlet’s AEPS biometric KYC state and obtain the reference and capture options needed for the next KYC step.

GET https://pay2new.in/apis/aeps/v1/biometricKycStatus

Request

HeaderRequiredValue
secretYesYour Pay2New-issued API secret.
outletIdYesActive Pay2New customer/outlet ID with onboarding completed.
AcceptRecommendedapplication/json

No query parameters or JSON body are required. Pay2New selects the AEPS service internally. Do not send the provider’s spkey or its authentication headers to this endpoint.

Your partner account, KYC, wallet and API access must be active, the source IP must be registered, and the AEPS service must be enabled.

cURL request

curl --request GET \
  --url 'https://pay2new.in/apis/aeps/v1/biometricKycStatus' \
  --header 'secret: YOUR_PAY2NEW_SECRET' \
  --header 'outletId: YOUR_PAY2NEW_OUTLET_ID' \
  --header 'Accept: application/json'

Pay2New response fields

FieldTypeMeaning
statusintegerResult of the status lookup. A value of 1 does not mean that KYC is approved.
messagestringResult description; also read it for registration or other required steps.
data.customer_aadhaar_numberstringProvider’s outletAadhaarNumber, renamed by Pay2New. Usually masked when available; empty string if absent or null.
data.statusstringBank/KYC state, such as PENDING, APPROVAL_PENDING or APPROVED. Empty string if absent or null.
data.actionstringRequired next action, such as ACTION-REQUIRED or NO-ACTION-REQUIRED. Empty string if absent or null.
data.referenceKeystringProvider reference for the indicated next operation. Empty string if absent or null.
data.pidOptionWadhstringWADH value to apply to the RD capture when biometric KYC is required. Empty string if absent or null.
order_idnullThe status lookup does not return a transaction order ID.

A normal provider-response path returns the five data fields above, even when their values are empty strings. An early authentication, outlet, service or exception response can contain only status and message; handle a missing data object.

🚧

Lookup success is not KYC approval

Check status, message, data.status and data.action together. NO-ACTION-REQUIRED can also occur with PENDING when registration is incomplete. Do not enable transactions based only on top-level status 1 or the action field.

Decide the next step

Apply the first relevant condition below.

ConditionNext step
Top-level status is 2, 3 or another unexpected valueRead the message; resolve the failed/uncertain lookup. Do not mark the outlet approved.
Message indicates incomplete registration or another prerequisiteResolve that prerequisite with Pay2New before biometric submission; do not infer approval from NO-ACTION-REQUIRED.
ACTION-REQUIRED and biometric authentication is requestedUse the returned referenceKey and pidOptionWadh with a fresh RD capture, then call AEPS Biometric KYC.
APPROVED and NO-ACTION-REQUIRED, with a successful lookupNo further biometric KYC step is indicated. Continue with Merchant Login Status and the login flow required for AEPS transactions.
PENDING or APPROVAL_PENDING without an outstanding biometric actionBank approval is still pending. Recheck later; do not enable transactions yet.
Empty, conflicting or unrecognized valuesKeep the state unresolved and contact Pay2New for the next action.

For bank-pending states, the provider’s status documentation recommends checking again at 30-minute intervals. This is polling guidance, not an approval-time guarantee.

Response examples

These examples illustrate Pay2New’s response mapping with synthetic identifiers. Provider messages and capture references vary.

Biometric action required

{
  "status": 1,
  "message": "Biometric authentication required",
  "data": {
    "customer_aadhaar_number": "XXXX-XXXX-9999",
    "status": "PENDING",
    "pidOptionWadh": "WADH_FROM_STATUS_RESPONSE",
    "referenceKey": "REFERENCE_FOR_THIS_OUTLET",
    "action": "ACTION-REQUIRED"
  },
  "order_id": null
}

Approved; no further KYC action

{
  "status": 1,
  "message": "Success",
  "data": {
    "customer_aadhaar_number": "XXXX-XXXX-9999",
    "status": "APPROVED",
    "pidOptionWadh": "",
    "referenceKey": "",
    "action": "NO-ACTION-REQUIRED"
  },
  "order_id": null
}

Pending registration; not approved

{
  "status": 1,
  "message": "Outlet not yet registered with Bank, please complete registration first",
  "data": {
    "customer_aadhaar_number": "",
    "status": "PENDING",
    "pidOptionWadh": "WADH_FROM_STATUS_RESPONSE",
    "referenceKey": "REGISTRATION_REFERENCE",
    "action": "NO-ACTION-REQUIRED"
  },
  "order_id": null
}

Provider data unavailable

{
  "status": 2,
  "message": "Unable to retrieve KYC status",
  "data": {
    "customer_aadhaar_number": "",
    "status": "",
    "pidOptionWadh": "",
    "referenceKey": "",
    "action": ""
  },
  "order_id": null
}

Invalid outlet

{
  "status": 2,
  "message": "Invalid OutletId"
}

Fields not exposed by this Pay2New endpoint

Instantpay’s raw response may contain actcode, statuscode, outletId, isFaceAuthAvailable, isBiometricKycMandatory, isServiceAvailable, referenceKeyType, validity, bankName, timestamp and ipay_uuid. The current Pay2New response does not include those fields. Integrate against the Pay2New fields documented above.

📘

Prepare the next KYC capture

When biometric action is required, use the reference for the same outlet and apply pidOptionWadh in the RD capture options when provided. The masked customer_aadhaar_number is display information: the current Pay2New biometric KYC request still needs the merchant’s full aadhaar_number inside biometricData. See the linked KYC request example.

Errors

Example messageMeaning / handling
Outlet ID not found!Supply the outletId header.
Invalid OutletIdVerify that the Pay2New outlet is active and onboarded.
Secret Header not found!Supply your issued secret header.
Service/access errorCorrect the account or service configuration described in the message.

Application errors may arrive with HTTP 200. Inspect JSON status and message rather than relying on HTTP status alone. No biometric submission is made by this request.

Headers
string
required

Your Pay2New API secret.

string
required

Pay2New outlet/customer ID returned after successful onboarding; do not send the provider outlet ID.

Response

Language
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json