Advanced Employment Verification
The Advanced Employment Verification API is a robust tool designed to retrieve an individual's recent employment details, particularly within the last three months, by cross-referencing with their Provident Fund (PF) information. This API offers versatility, allowing users to input a mobile number, PAN (Permanent Account Number), UAN (Universal Account Number), or basic details such as Name, Date of Birth (DOB), and employer name for verification purposes.
- Comprehensive Employment Details: The API provides employment information including the company name, Member ID, date of joining, and date of leaving the company.
- Basic Information Retrieval: Additionally, it offers basic details such as the individual's name, birthdate, gender, and Aadhar verification status.
- Double Check Mechanism: The API performs a double check using EPFO PF filings to validate employment status, especially in cases where the company is non-operative or if the user has left the company without updating their employment status.
- Additional Details: Users can also access extra information such as Aadhaar Number, PAN number, bank account information, and even the name of a relative linked to the individual's UAN number.
- Enhanced Verification: By cross-referencing with PF information and providing a wealth of additional details, the API ensures thorough and accurate employment verification.
- Informed Decision-Making: Access to a wide range of information enables users to make well-informed decisions regarding employment-related matters.
The Advanced Employment Verification API offers a comprehensive solution for retrieving recent employment details, backed by a double check mechanism and access to a variety of additional information. This empowers users to conduct thorough verifications and make informed decisions efficiently.
Key | Value | Required | Description |
Authorization | XXXXXXXXXXXXXXX | Mandatory | An authentication token to authorize the request. Reach out to the Signzy support team to get one created. |
Content-type | application/json | Mandatory | The type of content that the request body contains. |
Parameter | Description | Validation Checks | Type | Required |
mobileNumber | 10-digit Mobile number. | 10 digits (only numeric) | String | CM |
panNumber | PAN (Permanent Account Number). | Regex for PAN number | String | CM |
uanNumber | Universal Account Number(UAN). | 12 digits (only numeric) | String | CM |
dateOfBirth | Date of birth of the individual. | Format: DD-MM-YYYY | String | CM |
employeeName | Name of the employee | (Max 500 character) | String | CM |
employerName | Name of the employer | (Max 500 Character) employerName can be given as input only when employeeName is also given | String | O |
nameMatchMethod | Method used to match employee and employer names | Enum: fuzzy or exact (Default: fuzzy) | String | O |
CM - Conditionally Mandatory; O -Optional
Key | Type | Description |
result | Object | The main container for the EPFO API response data. |
result.uan | Array of Strings | An array containing the UAN (Universal Account Number).Might return multiple UAN if DOB and employee name is used as input. |
result.summary | Object | A summary of the individual's EPFO status and employment details. |
result.summary.recentEmployerData | Object | Detailed information about the individual's recent employer |
result.summary.recentEmployerData.memberId | String | Member ID associated with the individual's employment. |
summary.recentEmployerData.establishmentId | String | Establishment ID of the company where the individual is employed. |
result.summary.recentEmployerData.dateOfExit | String | Date of exit from employment in format(YYYY-MM-DD). If date of exit is not provided, then the details provided are the person’s current employment. |
summary.recentEmployerData.dateOfJoining | String | Date of joining the provided company in format (YYYY-MM-DD). |
result.summary.recentEmployerData.dateOfJoining | String | Name of the company where the individual is employed. |
result.summary.recentEmployerData.employerConfidenceScore | Null or Float | Fuzzy matching of ”employerName” in input and “establishmentName” to return Float else returns Null (when employer name is not given as input). Enter the full name of the company to avoid less confidencescore. |
result.summary.recentEmployerData.matchingUan | String | Matching Universal Account Number (UAN) with the Input. |
result.summary.recentEmployerData.epfo | Object | Information related to EPFO details. |
result.summary.recentEmployerData.epfo.isRecent | Boolean | True if employee PF is found for the latest month (at least one month),else False. |
result.summary.recentEmployerData.epfo.isNameUnique | Boolean | True if the employee's name is unique in the organization, else False. |
result.summary.recentEmployerData.epfo.hasPfFilingsDetails | Boolean | True if PF Filings data of each month for which the employee data has been checked, else False. |
result.summary.isEmployed | Boolean | True If “employerNameMatch” is true and “employeeNameMatch” is true and employeehasn’t exited from the company(when date_of_exit is empty) and employee PF filing is found in at least one month in last 3 months(is_recent is true) else False |
result.summary.employeeNameMatch | Boolean | Check if “employeeName” in input and “name” in output matches. Returns True is employeeconfidenceScore is >0.8 else False. |
result.summary.employerNameMatch | Boolean | Check if “employerName” in input and “establishmentName” in output matches. Returns True is employerconfidenceScore is >0.8 else False. |
result.summary.uanCount | Integer | Count of UAN (Universal Account Number) returned as result. (Can be more than 1 when DOB and employee name is used as input). |
result.summary.dateOfExitMarked | Boolean | True if the date of exit has been marked. Else False. |
result.uanDetails | Object | Detailed information about the provided Universal Account Numbers. |
result.uanDetails.[UAN] | Object | UAN-specific details. |
result.uanDetails.[UAN].basicDetails | Object | Basic information about the employee. |
result.uanDetails.[UAN].basicDetails.gender | String | Gender of the employee. |
result.uanDetails.[UAN].basicDetails.dateOfBirth | String | Date of birth of the employee in format (YYYY-MM-DD). |
result.uanDetails. [UAN].basicDetails.employeeConfidenceScore | Null or Float | Fuzzy matching of ”employeeName” in input and “name” to return Float else returns Null when employee name is not given as input. |
result.uanDetails.[UAN].basicDetails.name | String | Name of the employee. |
result.uanDetails.[UAN].basicDetails.mobile | String | Mobile number of the employee. Note: Currently the Mobile number linked with the UAN is not provided by the Source and hence it is given as an empty string. It will only be available once the Source makes it available |
result.uanDetails.[UAN].basicDetails.aadhaarVerificationStatus | Integer | Aadhaar verification status of the employee (1 indicates verified). |
result.uanDetails.[UAN].employmentDetails | Object | Detailed information about the employee's employment. |
result.uanDetails.[UAN].employmentDetails.memberId | String | Member ID associated with the individual's employment. |
result.uanDetails.[UAN].employmentDetails.establishmentId | String | Establishment ID of the company where the individual is employed |
result.uanDetails.[UAN].employmentDetails.dateOfExit | String | Date of exit from employment in format (YYYY-MM-DD). If date of exit is not provided, then the details provided are the person’s current employment. |
result.uanDetails.[UAN].employmentDetails.dateOfJoining | String | Date of joining the provided company in format (YYYY-MM-DD). |
result.uanDetails.[UAN].employmentDetails.leaveReason | String | Reason for leaving employment, if applicable |
result.uanDetails. [UAN].employmentDetails.establishmentName | String | Name of the establishment where the individual is employed |
result.uanDetails. [UAN].employmentDetails.employerConfidenceScore | Null or Float | Fuzzy matching of ”employerName” in input and “establishmentName” to return Float else returns Null (when employer name is not given as input). Enter the full name of the company to avoid less confidencescore. |
result.uanDetails.[UAN].additionalDetails | Object | Additional details about the employee like Aadhar Number, PAN number, Email ID, Bank details and Relative name. Additional details are provided only if it is present for the UAN number. |
result.uanDetails.[UAN].additionalDetails.aadhaar | String | Aadhaar number of the employee. |
result.uanDetails.[UAN].additionalDetails.memberId | String | Member ID associated with the individual. |
result.uanDetails.[UAN].additionalDetails.email | String | Email address of the employee. |
result.uanDetails.[UAN].additionalDetails.pan | String | PAN (Permanent Account Number) of the employee. |
result.uanDetails.[UAN].additionalDetails.bankIfsc | String | Bank IFSC code of the employee. |
result.uanDetails.[UAN].additionalDetails.bankAccNo | String | Bank account number of the employee. |
result.uanDetails.[UAN].additionalDetails.bankAddress | String | Bank address of the employee. |
result.uanDetails.[UAN].additionalDetails.relation | String | Relationship of the relative to the individual (F-Father, H-Husband). |
result.uanDetails.[UAN].additionalDetails.relativeName | String | Name of the relative of the employee. |
result.uanSource | Array of Objects | Source through which the UAN was obtained. |
result.uanSource.[index].uan | String | UAN (universal account number) |
result.uanSource.[index].source | String | Source of the UAN (e.g., "mobile"). |
result.nameDobFilteringScore | Null or Float | Filtering score related to the employee's name and date of birth. This is applicable only when DOB and employee is input else return Null. |
result.epfoDetails | Object | EPFO-related details. |
result.epfoDetails.pfFilingDetails | Array of Objects | Details related to PF filings |
result.epfoDetails.pfFilingDetails.[index].totalAmount | Integer | Total amount for PF filings. |
result.epfoDetails.pfFilingDetails.[index].employeesCount | Integer | Number of employees for PF filings. |
result.epfoDetails.pfFilingDetails.[index].wageMonth | String | Month of wage for PF filings. |
Error Code | Description |
200 | Success - The request was processed successfully. |
400 | Bad Request - The request was malformed or invalid. |
404 | Not Found - The requested resource was not found. |
409 | Conflict - The request conflicts with the server state. |
500 | Internal Server Error - An unexpected error occurred. |