Skip to main content
POST
/
digilocker
Create URL
curl --request POST \
  --url https://sandbox.cashfree.com/verification/digilocker \
  --header 'Content-Type: application/json' \
  --header 'x-client-id: <api-key>' \
  --header 'x-client-secret: <api-key>' \
  --data '{
  "verification_id": "ABC00123",
  "document_requested": [
    "AADHAAR",
    "PAN",
    "DRIVING_LICENSE"
  ],
  "redirect_url": "https://www.cashfree.com",
  "user_flow": "signup"
}'
{
"verification_id": "ABC00123",
"reference_id": 12345,
"url": "https://verification-test.cashfree.com/dgl/h7562ci7us0",
"status": "PENDING",
"document_requested": [
"AADHAAR",
"PAN",
"DRIVING_LICENSE"
],
"redirect_url": "https://www.cashfree.com",
"user_flow": "signup"
}

Authorizations

x-client-id
string
header
required

Your unique client identifier issued by Cashfree. You can find this in your Merchant Dashboard.

x-client-secret
string
header
required

The secret key associated with your client ID. Use this to authenticate your API requests. You can find this in your Merchant Dashboard.

Headers

x-cf-signature
string

Send the signature if two-factor authentication is selected as Public Key. More details

Body

application/json

Find the request parameters to create a DigiLocker URL to retrieve and verify aadhaar, pan, driving-license information.

verification_id
string
required

It is the unique ID you create to identify the API request. The maximum character limit is 50. Alphanumeric, period (.), hyphen (-). and underscore ( _ ) are allowed.

Example:

"ABC00123"

document_requested
enum<string>[]
required

It is the list of customer documents required for verification.

Example:
["AADHAAR", "PAN", "DRIVING_LICENSE"]
redirect_url
string

It is the URL you need to provide to redirect the user after completing the DigiLocker journey. It will contain the verification_id, which can be used to check the status of the verification.

Example:

"https://www.cashfree.com"

user_flow
enum<string>

Specifies the flow the user will follow during the DigiLocker consent process. If not provided, the default flow is signup. Possible values are:

  • signin: Use this if the user already has a DigiLocker account. The user will be directed to the authorisation flow.
  • signup: Use this if the user does not have a DigiLocker account. The user will be directed to signup flow.
Available options:
signin,
signup
Example:

"signup"

Response

Success response for creating a DigiLocker URL for document verification

verification_id
string

It displays the unique ID you created to identify this API request.

Example:

"ABC00123"

reference_id
integer

It displays the unique ID created by Cashfree Payments for reference purposes. format: int64

Example:

12345

url
string

It displays the URL used to retrieve and verify document information from DigiLocker. This URL expires 10 minutes after it is generated. Ensure it is accessed within this period to avoid expiration errors.

Example:

"https://verification-test.cashfree.com/dgl/h7562ci7us0"

status
string

It displays the status of the verification request.. Possible values are:

  • PENDING
Example:

"PENDING"

user_flow
string

Indicates the user flow selected for the DigiLocker consent process. Possible values are:

  • signin: The user already has a DigiLocker account. The user will be directed to the authorisation flow.
  • signup: The user does not have a DigiLocker account. The user will be directed to the signup flow.
Example:

"signup"

document_requested
enum<string>[]

It displays the list of documents requested for verification.

Example:
["AADHAAR", "PAN", "DRIVING_LICENSE"]
redirect_url
string

It displays the URL entered in the request that takes the user to after completing the DigiLocker journey.

Example:

"https://www.cashfree.com"