DigiLocker UIStreams
UIStreams specialized in orchestrating DigiLocker-based workflows.
Why are DigiLocker UIStreams needed?
DigiLocker UIStreams allow you to seamlessly integrate with all DigiLocker document retrieval workflows bundled into a single API. Just use the prefix DIGILOCKER
and the name of the document you want to retrieve from your user and you are done!
The UIStream takes care of all of the following steps:
- Make sure that the best and easiest login screen with the least friction and highest conversion rate is shown to the end customer so that there are minimal drop-offs when the user signs in.
- Multi-lingual capabilities with on-the-fly translation to cater to audiences who are not familiar with English.
- Automatic checking of wallet for existing documents and automatic isolation of consents to only the documents you want to retrieve from the customer.
- Pull documents from issuers directly on the UIStream which manages real-time form rendering of all organizations, documents, and document parameters in the entire DigiLocker ecosystem.
Supported DigiLocker Flows
The following is a list of DigiLocker UIStreams that are currently live in the production environment:
UIStream Name | Document Collected | Digital Use Case Examples | Real-World Conversion |
---|---|---|---|
DIGILOCKER_AADHAAR | Aadhaar Card | KYC, Address Verification in journeys for CRED, Bajaj Finserv, AU Small Finance Bank, Kotak Mahindra Bank | โญโญโญโญโญ |
DIGILOCKER_AADHAAR_PAN | Aadhaar + PAN | Financial KYC for loan applications with CRED, Flipkart, ICICI Bank, Razorpay, Slice | โญโญโญโญโญ |
DIGILOCKER_PAN_CERTIFICATE | PAN Card | Tax Filing and Financial Onboarding for Paytm, Zerodha, HDFC Bank, Axis Bank | โญโญโญโญโญ |
DIGILOCKER_VEHICLE_REGISTRATION_CERTIFICATE | Vehicle Registration Certificate (RC) | Car Purchase, Vehicle Verification for Zoomcar, CARS24, OLX Autos, Spinny | โญโญโญโญ |
DIGILOCKER_DRIVING_LICENSE | Driving License | License Verification, Insurance Claims for Acko, Digit Insurance, Tata AIG, Bajaj Allianz | โญโญโญโญ |
DIGILOCKER_TWO_WHEELER_INSURANCE_POLICY | Two-Wheeler Insurance Policy | Insurance for two-wheeler loans with L&T Finance, Hero Fincorp, HDFC Ergo | โญโญโญโญ |
DIGILOCKER_LIFE_INSURANCE_POLICY | Life Insurance Policy | Life insurance verification for PolicyBazaar, ICICI Prudential, Max Life Insurance | โญโญโญ |
DIGILOCKER_HEALTH_INSURANCE_POLICY | Health Insurance Policy | Health insurance verification for Star Health, Apollo Munich, Niva Bupa | โญโญโญ |
DIGILOCKER_CLASS_X_MARKSHEET | Class X Marksheet | School Admission, Education Loan for Byjuโs, FIITJEE, State Bank of India, Axis Bank | โญโญโญโญ |
DIGILOCKER_CLASS_X_LEAVING_CERTIFICATE | Class X Leaving Certificate | School Transfer Verification for Allen Career Institute, Kendriya Vidyalaya | โญโญโญ |
DIGILOCKER_CLASS_X_PROVISIONAL_CERTIFICATE | Class X Provisional Certificate | College Admission for Narayana Institute, Christ University, SRM University | โญโญโญ |
DIGILOCKER_CLASS_X_PASSING_CERTIFICATE | Class X Passing Certificate | School Verification, College Admission for NIIT, Techno India, Amity University | โญโญโญ |
DIGILOCKER_CLASS_XII_MARKSHEET | Class XII Marksheet | College Admission, Job Application for Infosys, Wipro, Indian Army, Flipkart | โญโญโญ |
DIGILOCKER_CLASS_XII_PASSING_CERTIFICATE | Class XII Passing Certificate | College Admission for BITS Pilani, Manipal University, Lovely Professional University | โญโญโญ |
DIGILOCKER_DEGREE_MARKSHEET | Degree Marksheet | Higher Education, Job Application for TCS, Infosys, Google, Cognizant | โญโญ |
DIGILOCKER_DEGREE_CERTIFICATE | Degree Certificate | Higher Education, Job Application for Capgemini, Accenture, IBM | โญโญ |
DIGILOCKER_PROVISIONAL_DEGREE_CERTIFICATE | Provisional Degree Certificate | Job Application, Further Studies for Mindtree, Infosys, Hexaware | โญโญ |
DIGILOCKER_PENSION_COMMUTATION_PAYMENT_ORDER | Pension Commutation Payment Order | Pension Verification for LIC, PNB MetLife, HDFC Pension | โญโญโญ |
DIGILOCKER_PENSION_CERTIFICATE | Pension Certificate | Pension Claims for EPFO, LIC Pension Funds | โญโญโญ |
DIGILOCKER_ELIGIBILITY_CERTIFICATE | Eligibility Certificate | Scholarship Application for Vidya Lakshmi, Tata Trusts, SBI Education Loan | โญโญโญ |
DIGILOCKER_MIGRATION_CERTIFICATE | Migration Certificate | School/College Transfer for DU, Mumbai University, Pune University | โญโญโญ |
DIGILOCKER_ADMIT_CARD | Admit Card | Exam Verification for CBSE, SSC, UPSC | โญโญโญ |
DIGILOCKER_UNIVERSITY_TRANSCRIPT | University Transcript | Higher Studies Abroad, Employment Verification for WES, IQAS, Narsee Monjee Institute | โญโญ |
DIGILOCKER_DIPLOMA_CERTIFICATE | Diploma Certificate | Job Application, Further Studies for L&T, Siemens, Blue Star | โญโญ |
DIGILOCKER_DEGREE_DIPLOMA_MARKSHEET | Diploma Marksheet | Job Application, Higher Studies for Indian Institute of Technology (IIT), National Institute of Technology (NIT) | โญโญ |
DIGILOCKER_SKILL_CERTIFICATE | Skill Certificate | Job Application, Skill Verification for National Skill Development Corporation (NSDC), UrbanClap, Tata Strive | โญโญโญ |
DIGILOCKER_COURSE_COMPLETION_CERTIFICATE | Course Completion Certificate | Course Verification for Udemy, Coursera, LinkedIn Learning | โญโญโญ |
DIGILOCKER_EQUIVALENCE_CERTIFICATE | Equivalence Certificate | Qualification Verification for Ministry of Education, Narsee Monjee Institute of Management Studies (NMIMS), University Grants Commission (UGC) | โญโญโญ |
DIGILOCKER_CLASS_XII_LEAVING_CERTIFICATE | Class XII Leaving Certificate | College Transfer, Admission for Delhi University, Symbiosis, Amity | โญโญโญ |
DIGILOCKER_CLASS_X_MERIT_CERTIFICATE | Class X Merit Certificate | Merit-Based Scholarship for Central Government Scholarships, Vidya Lakshmi, SBI Education Loans | โญโญโญ |
DIGILOCKER_CLASS_XII_COMPARTMENT_MARKSHEET | Class XII Compartment Marksheet | Re-Examination Verification for CBSE, NCERT, National Institute of Open Schooling (NIOS) | โญโญ |
DIGILOCKER_PROVISIONAL_CERTIFICATE | Provisional Certificate | Further Studies, Job Application for Tata Consultancy Services, HCL Technologies, Infosys | โญโญโญ |
DIGILOCKER_PASSING_CERTIFICATE | Passing Certificate | Qualification Verification for Accenture, IBM, Cognizant | โญโญโญ |
DIGILOCKER_SCHOOL_LEAVING_CERTIFICATE | School Leaving Certificate | School Transfer for CBSE, ICSE, Kendriya Vidyalaya Sangathan | โญโญโญ |
Brief Explanation of the Payload Sent to callback_url
callback_url
The payload represents a structured response containing details about the successful retrieval of user documents via the uistream
callback. Below is a breakdown of its key components:
High-Level Information
Key | Value (Masked) |
---|---|
initialDecentroTxnId | **************6813 |
status | SUCCESS |
message | All documents have been fetched successfully. |
responseKey | success_uistream_documents_fetch |
Document Details in data
data
EAADHAAR
: Contains Aadhaar-related information retrieved from Digilocker.
Transaction Details:
Key | Value (Masked) |
---|---|
decentroTxnId | **************B73 |
status | SUCCESS |
responseCode | S00000 |
message | E-Aadhaar information received successfully from Digilocker |
- Aadhaar Details:
Key | Value (Masked) |
---|---|
aadhaarUid | ********2661 |
proofOfIdentity | Contains details such as DOB (DD-MM-YYYY ), gender (M ), and name. |
proofOfAddress | Includes address fields like house number, pincode, and locality. |
- Document Media: Base64-encoded versions of the Aadhaar image, PDF, and XML.
-
ISSUED_FILES
: Lists additional retrieved documents.- Items:
Document Name Document Type Issuer Aadhaar Card ADHAR
UIDAI PAN Verification Record PANCR
Income Tax Department -
PAN
: Contains details about the user's PAN card.
PAN Details:
Key | Value |
---|---|
idNumber | BDABJ1234J |
userName | John Doe |
userDateOfBirth | DD-MM-YYYY |
userGender | MALE |
documentVerifiedOn | DD-MM-YYYY |
documentStatus | Active |
- Document Media: Base64-encoded file (masked).
Full Payload Sample (Happy Scenario)
{
"initialDecentroTxnId": "**************6813",
"status": "SUCCESS",
"message": "All documents have been fetched successfully.",
"responseKey": "success_uistream_documents_fetch",
"data": {
"EAADHAAR": {
"decentroTxnId": "**************B73",
"status": "SUCCESS",
"responseCode": "S00000",
"message": "E-Aadhaar information received successfully from Digilocker",
"data": {
"aadhaarReferenceNumber": "",
"aadhaarUid": "********1234",
"proofOfIdentity": {
"dob": "DD-MM-YYYY",
"hashedEmail": "",
"gender": "M",
"hashedMobileNumber": "",
"name": "**** ****"
},
"proofOfAddress": {
"careOf": "S/O **** ****",
"country": "India",
"district": "******",
"house": "***",
"landmark": "Beside ****",
"locality": "*********",
"pincode": "******",
"postOffice": "********",
"state": "**********",
"street": "**** Main, ********** Road",
"subDistrict": "",
"vtc": "******"
},
"image": "BASE64",
"pdf": "BASE64",
"xml": "BASE64"
},
"responseKey": "success_eaadhaar_download"
},
"ISSUED_FILES": {
"items": [
{
"name": "Aadhaar Card",
"type": "file",
"size": "",
"date": "**-**-2024",
"parent": "",
"mime": [
"application/json",
"application/xml",
"application/pdf"
],
"uri": "in.gov.uidai-ADHAR-************",
"doctype": "ADHAR",
"description": "Aadhaar Card",
"issuerid": "in.gov.uidai",
"issuer": "Unique Identification Authority of India (UIDAI)"
},
{
"name": "PAN Verification Record",
"type": "file",
"size": "",
"date": "**-**-2024",
"parent": "",
"mime": [
"application/json",
"application/xml",
"application/pdf"
],
"uri": "in.gov.pan-PANCR-************",
"doctype": "PANCR",
"description": "PAN Verification Record",
"issuerid": "in.gov.pan",
"issuer": "Income Tax Department"
}
]
},
"PAN": {
"documentIssuer": "Income Tax Department",
"documentName": "PAN Verification Record",
"documentType": "PANCR",
"idNumber": "**********6J",
"userName": "**** ****",
"userDateOfBirth": "**-**-1998",
"userGender": "MALE",
"documentVerifiedOn": "**-**-2024",
"documentStatus": "Active",
"documentBase64": "BASE64"
}
}
}
Exhaustive List of Response Keys for Callbacks
โ
Success & Error Responses
-
success_uistream_documents_fetch
- Message: All documents have been fetched successfully.
- Sample Body:
{ "initialDecentroTxnId": "**************6813", "status": "SUCCESS", "message": "All documents have been fetched successfully.", "responseKey": "success_uistream_documents_fetch", "data": { "EAADHAAR": { "decentroTxnId": "**************B73", "status": "SUCCESS", "responseCode": "S00000", "message": "E-Aadhaar information received successfully from Digilocker", "data": { "aadhaarReferenceNumber": "", "aadhaarUid": "********1234", "proofOfIdentity": { "dob": "DD-MM-YYYY", "hashedEmail": "", "gender": "M", "hashedMobileNumber": "", "name": "**** ****" }, "proofOfAddress": { "careOf": "S/O **** ****", "country": "India", "district": "******", "house": "***", "landmark": "Beside ****", "locality": "*********", "pincode": "******", "postOffice": "********", "state": "**********", "street": "**** Main, ********** Road", "subDistrict": "", "vtc": "******" }, "image": "BASE64", "pdf": "BASE64", "xml": "BASE64" }, "responseKey": "success_eaadhaar_download" }, "ISSUED_FILES": { "items": [ { "name": "Aadhaar Card", "type": "file", "size": "", "date": "**-**-2024", "parent": "", "mime": [ "application/json", "application/xml", "application/pdf" ], "uri": "in.gov.uidai-ADHAR-************", "doctype": "ADHAR", "description": "Aadhaar Card", "issuerid": "in.gov.uidai", "issuer": "Unique Identification Authority of India (UIDAI)" }, { "name": "PAN Verification Record", "type": "file", "size": "", "date": "**-**-2024", "parent": "", "mime": [ "application/json", "application/xml", "application/pdf" ], "uri": "in.gov.pan-PANCR-************", "doctype": "PANCR", "description": "PAN Verification Record", "issuerid": "in.gov.pan", "issuer": "Income Tax Department" } ] }, "PAN": { "documentIssuer": "Income Tax Department", "documentName": "PAN Verification Record", "documentType": "PANCR", "idNumber": "**********6J", "userName": "**** ****", "userDateOfBirth": "**-**-1998", "userGender": "MALE", "documentVerifiedOn": "**-**-2024", "documentStatus": "Active", "documentBase64": "BASE64" } } }
-
success_uistream_partial_documents_fetch
- Message: Some documents have been fetched successfully.
- Sample Body:
{ "initialDecentroTxnId": "**************6813", "status": "SUCCESS", "message": "Some documents have been fetched successfully.", "responseKey": "success_uistream_partial_documents_fetch", "data": { "EAADHAAR": { "decentroTxnId": "**************B73", "status": "SUCCESS", "responseCode": "S00000", "message": "E-Aadhaar information received successfully from Digilocker", "data": { "aadhaarReferenceNumber": "", "aadhaarUid": "********1234", "proofOfIdentity": { "dob": "DD-MM-YYYY", "hashedEmail": "", "gender": "M", "hashedMobileNumber": "", "name": "**** ****" }, "proofOfAddress": { "careOf": "S/O **** ****", "country": "India", "district": "******", "house": "***", "landmark": "Beside ****", "locality": "*********", "pincode": "******", "postOffice": "********", "state": "**********", "street": "**** Main, ********** Road", "subDistrict": "", "vtc": "******" }, "image": "BASE64", "pdf": "BASE64", "xml": "BASE64" }, "responseKey": "success_eaadhaar_download" }, "ISSUED_FILES": { "items": [ { "name": "Aadhaar Card", "type": "file", "size": "", "date": "**-**-2024", "parent": "", "mime": [ "application/json", "application/xml", "application/pdf" ], "uri": "in.gov.uidai-ADHAR-************", "doctype": "ADHAR", "description": "Aadhaar Card", "issuerid": "in.gov.uidai", "issuer": "Unique Identification Authority of India (UIDAI)" }, { "name": "PAN Verification Record", "type": "file", "size": "", "date": "**-**-2024", "parent": "", "mime": [ "application/json", "application/xml", "application/pdf" ], "uri": "in.gov.pan-PANCR-************", "doctype": "PANCR", "description": "PAN Verification Record", "issuerid": "in.gov.pan", "issuer": "Income Tax Department" } ] }, "PAN": { "message": "The source issuer is intermittently down. Poller has started successfully. Please expect further callbacks." } } }
-
error_uistream_session_termination
- Message: The Digilocker session has been terminated.
- Sample Body:
{ "initialDecentroTxnId": "BC52FB9C74E042838060BF3215AEF18D", "status": "FAILURE", "message": "The Digilocker session has been terminated.", "responseKey": "error_uistream_session_termination", "data": null }
-
-
error_uistream_initiate_session
- Message: An error occurred while trying to start the Digilocker session.
- Sample Body:
{ "initialDecentroTxnId": "BC52FB9C74E042838060BF3215AEF18D", "status": "FAILURE", "message": "An error occurred while trying to start the Digilocker session.", "responseKey": "error_uistream_initiate_session", "data": null }
-
error_uistream_digilocker_data_fetch
- Message: An error occurred while trying to fetch Digilocker data.
- Sample Body:
{ "initialDecentroTxnId": "BC52FB9C74E042838060BF3215AEF18D", "status": "FAILURE", "message": "An error occurred while trying to fetch Digilocker data.", "responseKey": "error_uistream_digilocker_data_fetch", "data": null }
-
error_uistream_digilocker_timeout
- Message: An error occurred while trying to fetch file parameters.
- Sample Body:
{ "initialDecentroTxnId": "BC52FB9C74E042838060BF3215AEF18D", "status": "FAILURE", "message": "The user has been stuck in the DigiLocker page for more than 300 seconds and has been timed out.", "responseKey": "error_uistream_digilocker_timeout", "data": null }
-
error_uistream_digilocker_file_params
- Message: The user has been stuck in the DigiLocker page for more than 300 seconds and has been timed out.
- Sample Body:
{ "initialDecentroTxnId": "BC52FB9C74E042838060BF3215AEF18D", "status": "FAILURE", "message": "The user has been stuck in the DigiLocker page for more than 300 seconds and has been timed out.", "responseKey": "error_uistream_digilocker_file_params", "data": null }
๐ Session and URL Events
-
uistream_url_generated_successfully
- Message: UIStream URL has been generated successfully.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream URL has been generated successfully", "responseKey": "uistream_url_generation_successful" }
-
uistream_digilocker_initiation_successful
- Message: DigiLocker Session has been initiated.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "DigiLocker Session has been initiated", "responseKey": "uistream_digilocker_initiation_successful" }
๐ DigiLocker Page Events
-
uistream_digilocker_login_viewed
- Message: UIStream DigiLocker Login Page has been viewed.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream DigiLocker Login Page has been viewed", "responseKey": "uistream_digilocker_login_viewed" }
-
uistream_digilocker_otp_viewed
- Message: UIStream DigiLocker OTP Page has been viewed.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream DigiLocker OTP Page has been viewed", "responseKey": "uistream_digilocker_otp_viewed" }
-
uistream_digilocker_pin_viewed
- Message: UIStream DigiLocker PIN Page has been viewed.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream DigiLocker PIN Page has been viewed", "responseKey": "uistream_digilocker_pin_viewed" }
-
uistream_digilocker_consent_page_viewed
- Message: UIStream DigiLocker Consent Page has been viewed.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream DigiLocker Consent Page has been viewed", "responseKey": "uistream_digilocker_consent_page_viewed" }
-
uistream_digilocker_consent_accepted
- Message: UIStream DigiLocker Consent has been accepted.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream DigiLocker Consent has been accepted", "responseKey": "uistream_digilocker_consent_accepted" }
-
uistream_digilocker_consent_denied
- Message: UIStream DigiLocker Consent has been denied.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream DigiLocker Consent has been denied", "responseKey": "uistream_digilocker_consent_denied" }
๐ฎ๐ณ MeriPehchaan Events
-
uistream_meripehchaan_initiation_successful
- Message: UIStream MeriPehchaan Login Page has been viewed.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream MeriPehchaan Login Page has been viewed", "responseKey": "uistream_meripehchaan_login_viewed" }
-
uistream_meripehchaan_login_viewed
- Message: UIStream MeriPehchaan Login Page has been viewed.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream MeriPehchaan Login Page has been viewed", "responseKey": "uistream_meripehchaan_login_viewed" }
-
uistream_meripehchaan_otp_viewed
- Message: UIStream DigiLocker OTP Page has been viewed. (Possible mismatch; should say MeriPehchaan)
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream DigiLocker OTP Page has been viewed", "responseKey": "uistream_meripehchaan_otp_viewed" }
-
uistream_meripehchaan_consent_page_viewed
- Message: UIStream MeriPehchaan Login Page has been viewed. (Possible mismatch; may need correction)
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream MeriPehchaan Login Page has been viewed", "responseKey": "uistream_meripehchaan_login_viewed" }
-
uistream_meripehchaan_consent_accepted
- Message: UIStream MeriPehchaan Consent has been accepted.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream MeriPehchaan Consent has been accepted", "responseKey": "uistream_meripehchaan_consent_accepted" }
-
uistream_meripehchaan_consent_denied
- Message: UIStream MeriPehchaan Consent has been denied.
- Sample Body:
{ "uistreamID": "XXXXXX", "status": "SUCCESS", "message": "UIStream MeriPehchaan Consent has been denied", "responseKey": "uistream_meripehchaan_consent_denied" }
Updated 11 days ago