IDV Premium
Introduction
The IDV Premium API enables real-time identity verification of individual consumers in the U.S. using a combination of personal data points such as name, SSN, phone number, address, and date of birth. The API cross-checks each input field against multiple authoritative databases and returns detailed match indicators for each field, helping businesses assess the accuracy and legitimacy of a user's identity
Key Benefits
- Multi-attribute identity verification using trusted U.S. data sources.
- Field-level match indicators (e.g., name match, SSN match, DOB match).
- Reduces risk of synthetic identity fraud and impersonation.
- Multiple database lookups in one single endpoint to maximize coverage
Common Use Cases
- Banking & Financial Services (KYC/CIP)
- Verify consumer identities during account opening, credit applications, or lending decisions to meet regulatory compliance.
- Online Marketplaces & Gig Economy Platforms
- Confirm legitimacy of users, sellers, drivers, or service providers before activation on the platform.
- Cryptocurrency & Fintech Platforms
- Perform identity verification during wallet creation or crypto trading onboarding, reducing regulatory and fraud risk.
- Healthcare Registration
- Confirm patient identity using SSN and DOB to avoid duplicate records and insurance fraud.
- Insurance Onboarding & Claims
- Validate the identity of policyholders or claimants during online application or payout processes.
- E-commerce or BNPL (Buy Now Pay Later) Platforms
- Use full or partial SSN-based verification to determine if users are legitimate before extending credit or high-value services.
Sample cURL
curl --location 'https://api.signzy.us/api/v3/us-kyc/idv-premium' \
--header 'Content-Type: application/json' \
--header 'Authorization: ****' \
--data-raw '{
"consent": true,
"consentStatus": "optedIn",
"countryCode": "US",
"firstName": "John",
"lastName": "Doe",
"dob": "1990-05-15",
"addressLine1": "123 Main Street",
"city": "New York",
"state": "NY",
"zip": "10001",
"phoneNumber": "",
"ssn": "",
"email": "[email protected]",
"scoreThreshold": 0
}'Request Body Parameters
Required Fields
Field | Type | Validation Rules | Description |
|---|---|---|---|
consent | Boolean | Must be true (strict validation) | User consent for identity verification |
consentStatus | String | Must be "optedIn" or "optedOut" | Consent status for data processing |
countryCode | String | Must be "US" | Country code for verification |
firstName | String | Required, max 100 characters, trimmed | Individual's first name |
lastName | String | Required, max 100 characters, trimmed | Individual's last name |
dob | String | Required, format: YYYY-MM-DD, year β₯ 1910, not future date | Date of birth |
addressLine1 | String | Required, max 500 characters, trimmed | Primary address line |
city | String | Required, trimmed | City name |
state | String | Required, 2 uppercase letters, valid US state code | US state abbreviation |
zip | String | Required, format: XXXXX or XXXXX-XXXX | ZIP code |
phoneNumber | String | Required, format: 1XXXXXXXXXX or +1XXXXXXXXXX | Phone number with country code |
Optional Fields
Field | Type | Validation Rules | Description |
|---|---|---|---|
ssn | String | Optional, exactly 9 digits if provided | Social Security Number |
String | Optional, valid email format if provided | Email address | |
scoreThreshold | Integer | Optional, 0β100, default: 80 | Threshold for partial match scoring |
Sample Response
{
"result": {
"ssn": "NO_MATCH",
"firstName": "NO_MATCH",
"lastName": "NO_MATCH",
"dob": "NO_MATCH",
"addressLine1": "NO_MATCH",
"city": "NO_MATCH",
"state": "NO_MATCH",
"zip": "NO_MATCH",
"phoneNumber": "NO_MATCH",
"email": "NO_MATCH"
},
"reason": "Request Successful",
"code": "S001"
}Response Body Parameters
Parameter | Data Type | Description |
|---|---|---|
result | Object | Contains field-level match results |
reason | String | Status message of the API response. Example: Request Successful |
code | String | Response code indicating status. Example: S001 |
Result Object Fields
Parameter | Data Type | Description |
|---|---|---|
result.ssn | String | Match status for SSN (MATCH, PARTIAL_MATCH, NO_MATCH, NA) |
result.firstName | String | Match status for first name |
result.lastName | String | Match status for last name |
result.dob | String | Match status for date of birth |
result.addressLine1 | String | Match status for address |
result.city | String | Match status for city |
result.state | String | Match status for state |
result.zip | String | Match status for ZIP code |
result.phoneNumber | String | Match status for phone number |
result.email | String | Match status for email |
Sample Error
{
"result": {},
"reason": "Upstream error",
"code": "E401"
}Error Response Parameters
Parameter | Description |
|---|---|
result | Empty result object |
reason | Reason for error |
status | Status of the api |
code | Error code from Signzy |
Error Codes
HTTP Status Code | Error Code | Description |
|---|---|---|
400 | E001 | Bad Request |
401 | E1001 | Unauthorized Access |
403 | E201 | Forbidden |
404 | E301 | Data Not Found |
409 | E401 | Upstream error |
429 | E501 | Rate Limit Exceeded |
500 | E601 | Internal Server Error |
503 | E701 | Service Unavailable |
504 | E801 | Timeout |
Success Codes
HTTP Status Code | Success Code | Description |
|---|---|---|
200 | S001 | Request Successful. |
200 | S003 | Data not Found on source. |
Getting help
Please feel free to contact us if you have any questions, require clarification, or have ideas for how to make the documents or any of our services better.
You can reach out to us at [email protected]. We strive to provide prompt and reliable assistance, ensuring your queries are addressed effectively.
We value your feedback and are committed to making your experience smooth and enjoyable. Our team is dedicated to assisting you with any needs you may have. Thank you for choosing our services. We look forward to helping you!