Use this API to verify the Aadhar of each UBO members.
| Environment | Endpoint |
|---|
| UAT | uat-partner.payu.in/api/v3/merchants/{mid}/kyc_document/generate_digilocker_link_for_ubo |
| Production | partner.payu.in/api/v3/merchants/{mid}/kyc_document/generate_digilocker_link_for_ubo |
- Step 11 (Add/Update UBO) must be completed — the UBO must exist and its
ultimate_beneficiary_uuid must be available from the Step 15 response.
| Header | Value |
|---|
Authorization | Bearer {{access_token}} — must include KYC scope |
Content-Type | application/json |
Accept | application/json |
| Parameter | Description |
|---|
mid | Merchant's numeric MID from Step 01 response |
| Parameter | Type | Required | Description |
|---|
consent | boolean | Yes | Must be true — UBO's explicit consent for Aadhaar verification |
ultimate_beneficiary_uuid | string | Yes | UUID of the UBO from the Step 15 response |
POST {{partner_base_url}}/api/v3/merchants/{{mid}}/kyc_document/generate_digilocker_link_for_ubo
consent = true
ultimate_beneficiary_uuid = 11f1-7b73-baa4b522-ab88-020deca221a9
{
"status": "link_generated",
"capture_link": "https://api.digitallocker.gov.in/public/oauth2/1/authorize?response_type=code&client_id=JZ352A2C49&redirect_uri=https%3A%2F%2Fapi-in-uat.perfios.com%2Fkyc%2Fapi%2Fv1%2Fdigilocker%2Fget-token&state=eyJ0eXAi..."
}
Redirect the UBO to the capture_link URL to complete Aadhaar OTP authentication on DigiLocker.
{
"ultimate_beneficiary_uuid": "ultimate_beneficiary_uuid must be passed."
}
{
"consent": "consent must be passed."
}
After the UBO completes DigiLocker authentication, proceed to Step 12.