Partner Verification Responses
This page provides a reference of verification response bodies from different ID partners.
Identity Verification
Socure
Sample Socure Response (Successful)
{
"response": {
"kyc": {
"dob": "Positive Correlation",
"ssn": "Positive Correlation",
"zip": "Positive Correlation",
"city": "Positive Correlation",
"state": "Positive Correlation",
"surName": "Positive Correlation",
"firstName": "Positive Correlation",
"mobileNumber": "Positive Correlation",
"streetAddress": "Positive Correlation",
"Reason Code I919": "Full name, address, and SSN/ITIN can be resolved to the individual"
},
"fraud": {
"sigma_2.0": "[LOW RISK] Fraud Score is within top 83.40 of riskiest applicants",
"Reason Code I553": "Email address is more than 2 years old"
},
"social": {
"social": [
"https://twitter.com/ya38008926",
"https://www.facebook.com/profile.php?id=100013544925409"
],
"Reason Code I121": "Social networks match"
},
"alert_list": {
"AlertList Matches": []
},
"email_risk": {
"Email Risk Score": "[LOW RISK] Email Risk Score is within top 99.0 of riskiest applicants",
"Reason Code I520": "Emailrisk score represents low risk",
"Reason Code I555": "Email address domain is more than 180 days old",
"Reason Code I556": "Email address can be resolved to the individual"
},
"phone_risk": {
"Phone Risk Score": "[LOW RISK] Phone Risk Score is within top 99.0 of riskiest applicants",
"Reason Code I602": "Phone number is a mobile line",
"Reason Code I614": "Phone number has been in service more than 365 days",
"Reason Code I616": "Phone number is associated with a Mobile Virtual Network Operator"
},
"address_risk": {
"correlation": "Negative Correlation",
"Reason Code I707": "Address is residential",
"Reason Code I708": "Address can be resolved to the individual",
"Reason Code I720": "Addressrisk score represents low risk"
},
"global_watchlist": {
"Reason Code I196": "Global Watchlist sources selected are not correlated with the input identifiers",
"WatchListMatches": {}
},
"name_email_correlation": {
"correlation": "Positive Correlation",
"Reason Code I556": "Email address can be resolved to the individual",
"Reason Code I557": "Email address is correlated with the first name",
"Reason Code I558": "Email address is correlated with the last name"
},
"name_phone_correlation": {
"correlation": "Positive Correlation",
"Reason Code I618": "Phone number can be resolved to the individual",
"Reason Code I621": "Phone number is correlated with the first name",
"Reason Code I622": "Phone number is correlated with the last name"
},
"name_address_correlation": {
"correlation": "Positive Correlation",
"Reason Code I708": "Address can be resolved to the individual",
"Reason Code I709": "Address is correlated with the first name",
"Reason Code I710": "Address is correlated with the last name"
}
}
}
Socure offers several different modules: AlertList, EmailRisk, PhoneRisk, AddressRisk, Fraud, KYC, Social, Global Watchlist
The most common bundle consists of AlertList, Fraud, EmailRisk, PhoneRisk, AddressRisk and AML Watchlist. Please speak to a Unit21 representative about configuring modules suited to your use case.
Test Data:
- First Name: Berry
- Sur Name: Hugo
- DOB: 02/28/1975
- National Id: 112-22-3333
- Email: [email protected]
- IP Address: 120.156.231.86
- Mobile Number: +14159669090
- Country: US
- State: NY
- City: New York
- ZIP: 10036
- Physical Address: 2243 W 43rd Street
Required API keys: SOCURE_API_KEY
Possible Results:
SOCURE_ACCEPT
SOCURE_REJECT
SOCURE_IDENTIFICATION_CHECK
SOCURE_RESUBMIT
The recommended decision made by Socure on Unit21 follows this logic diagram below.
<%= image_tag "images/unit21_socure_logic_diagram.png" %>
To better understand the Socure response, read Socure Documentation.
Socure Property | Unit21 Fields | CSV Field | Required? |
---|---|---|---|
firstName | user_data.first_name | first_name | ✔️ |
surName | user_data.last_name | last_name | ✔️ |
nationalId | user_data.ssn | ssn | |
dob | user_data.date_of_birth | ️date_of_birth | |
ipAddress | digital_data.ip_addresses | ip_address | |
communication_data.email_addresses | email | Required if emailrisk module selected | |
mobileNumber | communication_data.phone_numbers | phone_number | Required if phonerisk module selected |
country | location_data.country | country | ✔️ |
state | location_data.state | state | Required if addressrisk module selected* |
city | location_data.city | city | Required if addressrisk module selected* |
zip | location_data.zip_code | zip_code | Required if addressrisk module selected* |
physicalAddress | location_data.building_number , location_data.street_name | street_address | Required if addressrisk module selected* |
*If addressrisk is selected, only one of country, state, city, zip is required
For better accuracy and results, send in as much information as possible
Business Verification
Middesk
Middesk gathers information about the business being verified and performs checks on:
- The people associated with a business
- Business name matching
- Address verification
- SOS Filings
- Business watchlist screening
Notes:
- Only works for US companies
- Middesk verifications run asynchronously and do not call any of the verification webhooks whenever the verification is completed by Middesk
- Currently cannot be executed as an on-demand verification. Only works on business entities through a verification workflow
- The verifications will always generate an alert when the verification finishes, ignoring the workflow settings
- Businesses will be automatically approved if they pass all the middesk checks
- The verification response for middesk will be periodically updated as middesk performs the verification asynchronously and returns more data (response times can be in the range of multiple minutes or hours, depending on the complexity of the verification task)
Sample request to associate people to a business during entity creation
curl -X POST \
https://<API_ENDPOINT>/v1/entities/create \
-H 'Content-Type: application/json' \
-H 'u21-key: <YOUR_API_KEY>' \
-d '{
...
"business_data": {
"business_name": "Global Company LLC",
"corporate_tax_id": "123-123-1234",
"account_holder_name": "John Smith",
"registered_state": "CA",
"registered_country": "US",
"people": [
{
"full_name": "Jane Doe"
},
{
"full_name": "John Doe"
}
]
},
...
}'
Middesk
Opencorporates Property | Unit21 Fields | CSV Field | Required? |
---|---|---|---|
name | business_data.business_name | name | ✔ |
tin | business_data.corporate_tax_id | tin | |
state | business_data.registered_state | registered_state | |
people | business_data.people | people | |
city | location_data.city | city | |
postal_code | location_data.zip_code | postal_code | |
address | location_data.building_number , location_data.street_name | address_line_1 |
Watchlist Screening
Document Verification
In order to run document verifications on an entity, an entity must:
- Be created via the entity creation API
- Link necessary documents/images prior to running verification. See Link Media/Images - Entities. See requirements on documents/images below for what to upload to an entity
- Run the verification on the entity
Document verifications will use the most recently uploaded images for the verification that meet the required creteria for running a verification.
E.g:
-
If
IMAGE_PASSPORT_FRONT
is uploaded first andIMAGE_DRIVERS_LICENSE_FRONT
is uploaded afterwards, the verification will use theIMAGE_PASSPORT_FRONT
since Driver's license requires both front and back images to run. -
If two
IMAGE_PASSPORT_FRONT
are uploaded, then it will use the latest uploadedIMAGE_PASSPORT_FRONT
Au10tix
Sample Au10tix response (forged document)
{
"CompletionStatus": "Ok",
"CompletionTime": "2020-08-07T18:06:47.36",
"DataAnalyticsReport": null,
"DocumentAuthenticity": "Forged",
"DocumentId": "5FB68271DFF44B8DB739336AFCA9879C",
"DocumentScope": "IdentityDocuments",
"DocumentSidesCode": 1,
"DocumentStatusReport2": {
"PrimaryProcessingResult": 40,
"ProcessingResultRemarks": [20, 100]
},
"FaceComparisonReport": {
"CompletionStatus": 140,
"FaceComparisonModelId": "1",
"FaceSimilarityRatio": 96,
"ImageMetadata": {
"EquipmentMaker": "",
"EquipmentModel": "",
"FileName": null,
"ImageCreationDateTime": null,
"Latitude": "",
"Longitude": "",
"SoftwareUsed": ""
},
"ImageQuality": {
"IsGenerallyAcceptable": true
},
"LivenessDetectionReport": null,
"ProcessedSupplementaryImageIndex": -1,
"ReverseGeocodingReport": null
},
"IdentityDataInputStatus": null,
"InternalData": {
"Data1": "eyJXYWl0VGltZUluTWlsbGlzZWNvbmRzIjoxNTJ9",
"Data3": "MTExMjE=",
"Data4": "MTEyMQ=="
},
"OptionalData": null,
"PageAsSeparateDocumentProcessingReports": [],
"PassiveFaceLivenessDetectionReport": null,
"PersonalInfoValidationReport": {
"IsPersonalInfoValid": null,
"PersonalInfoValidationTests": null
},
"ProcessedSupplementaryImages": [],
"ProcessingDetails": {
"ToleranceToRisk": 0
},
"ProcessingRequest": {
"ChipProcessingRequest": null,
"CreationTime": "2020-08-07T18:06:41.82",
"DataVerificationRequest": null,
"DocumentId": "5FB68271DFF44B8DB739336AFCA9879C",
"DocumentProcessingParameters": {
"IdentityDataInput": null,
"ImageSource": "UncertifiedScanner",
"IsFromCertifiedScanner": false,
"IsToCheckAuthenticity": true,
"Tag": null
},
"FaceComparisonRequest": {
"ImageFileProcessingRequest": {
"DataUnitSize": 53063,
"ImageIllumination": "Visible"
},
"RequestState": 0
},
"PageProcessingRequests": [
{
"DataUnitProcessingRequests": [
{
"DataUnitSize": 507577,
"ImageIllumination": "Visible"
}
]
}
],
"ProcessingHints": null,
"ProofOfAddressRequest": null,
"WorkerId": null
},
"ProcessingResult": {
"DocumentData2": {
"Address": null,
"Birthplace": null,
"DateOfBirth": {
"BadValueDescriptor": null,
"Value": "1951-01-01T00:00:00"
},
"DateOfExpiry": {
"BadValueDescriptor": null,
"Value": "2016-01-01T00:00:00"
},
"DateOfIssue": null,
"DocumentNumber": {
"LanguageCode": "eng",
"Value": "AAA000000"
},
"ExtendedData": {
"Authority": null,
"AuthorityLocal": null,
"Barcodes": [],
"BirthplaceLocal": null,
"BloodType": null,
"CalculatedAge": 69,
"DocumentDiscriminator": null,
"Employer": null,
"Eyes": null,
"FamilyName": null,
"FatherName": null,
"FirstNameLocal": null,
"FirstNameToLatin": null,
"Hair": null,
"Height": null,
"HusbandName": null,
"IssuePlace": null,
"LastNameLocal": null,
"LastNameToLatin": null,
"MiddleNameLocal": null,
"MiddleNameToLatin": null,
"MotherName": null,
"Observations": null,
"PersonalNumber": null,
"RegistryCode": null,
"VisaType": null,
"VoterNumber": null,
"Weight": null
},
"FirstName": {
"LanguageCode": "spa",
"Value": "JUAN"
},
"FullName": null,
"Gender": {
"LanguageCode": "eng",
"Value": "M"
},
"LastName": {
"LanguageCode": "spa",
"Value": "ESPAÑOL ESPAÑOL"
},
"LocalDateOfIssue": null,
"MiddleName": null,
"Mrz": null,
"Nationality": null,
"OptionalData": {
"LanguageCode": "eng",
"Value": "00000051T"
},
"SocialSecurityNumber": null,
"TaxIdNumber": null,
"VerifiedAddress": null
},
"DocumentPartImages": [
{
"ImageData": null,
"ImageQuality": null,
"ImageTypeCode": 7,
"SasToken": null
},
{
"ImageData": null,
"ImageQuality": {
"IsGenerallyAcceptable": true
},
"ImageTypeCode": 6,
"SasToken": null
}
],
"DocumentTypeDescriptor": {
"Alias": null,
"CountryIso3": "ESP",
"DocumentType": "ID Card",
"DocumentVersion": "V4",
"State": "",
"YearOfIssue": "2006"
},
"ForgeryTests": [
{
"ForgerySubtype": "Check Sum - Personal Number",
"ForgeryType": "Data Integrity",
"TestResult": "Forged"
},
{
"ForgerySubtype": "Validation - Photo",
"ForgeryType": "Data Integrity",
"TestResult": "Authentic"
},
{
"ForgerySubtype": "Validation - VIZ Date of Birth",
"ForgeryType": "Data Integrity",
"TestResult": "Authentic"
},
{
"ForgerySubtype": "Validation - VIZ Date of Expiry",
"ForgeryType": "Data Integrity",
"TestResult": "Authentic"
},
{
"ForgerySubtype": "Photo Replacement",
"ForgeryType": "Digital",
"TestResult": "Authentic"
},
{
"ForgerySubtype": "Photo Replacement - Sharp Edge",
"ForgeryType": "Digital",
"TestResult": "Authentic"
},
{
"ForgerySubtype": "Text Replacement",
"ForgeryType": "Digital",
"TestResult": "Authentic"
},
{
"ForgerySubtype": "Text Alignment",
"ForgeryType": "Structure",
"TestResult": "Authentic"
},
{
"ForgerySubtype": "VIZ Fonts - Alphabetic",
"ForgeryType": "Structure",
"TestResult": "Authentic"
},
{
"ForgerySubtype": "VIZ Fonts - Digits",
"ForgeryType": "Structure",
"TestResult": "Authentic"
},
{
"ForgerySubtype": "Photo Replacement",
"ForgeryType": "Visible",
"TestResult": "Authentic"
},
{
"ForgerySubtype": "Text Replacement",
"ForgeryType": "Visible",
"TestResult": "Authentic"
}
],
"IsDataExtracted": true,
"IsDocumentExpired": true,
"OverallQuality": "Acceptable",
"PageProcessingResults": [
{
"BarcodesProcessingReport": null,
"CompletionStatus": "Ok",
"DurationInMilliseconds": 4875,
"IdentityDataInputReport": null,
"IsExpectedSecondSide": true,
"IsSignature": true,
"ProcessedImages": [
{
"CroppedHeight": 847,
"CroppedWidth": 1350,
"Data": null,
"EquipmentMaker": "",
"EquipmentModel": "",
"FileName": "Front.VIS.jpg",
"ImageCreationDateTime": null,
"ImageFileType": "jpg",
"ImageType": "Visible",
"IsColored": true,
"IsReduced": null,
"IsValidSize": true,
"Latitude": "",
"Longitude": "",
"OriginalHeight": 855,
"OriginalWidth": 1350,
"Quality": {
"IsAcceptableBlurMrz": null,
"IsAcceptableBlurViz": true,
"IsAcceptableDark": true,
"IsAcceptableDpi": true,
"IsAcceptableEntropy": true,
"IsAcceptableImageIncomplete": true,
"IsAcceptableLayout": true,
"IsAcceptableMrz": null,
"IsAcceptableObliquity": true,
"IsAcceptableReflectionMrz": null,
"IsAcceptableReflectionViz": true,
"IsAcceptableSize": true,
"IsAcceptableTextConfidenceMrz": null,
"IsAcceptableTextConfidenceViz": true,
"IsGenerallyAcceptable": true
},
"QualityBeforeAdjustment": {
"IsAcceptableBlurMrz": null,
"IsAcceptableBlurViz": true,
"IsAcceptableDark": true,
"IsAcceptableDpi": true,
"IsAcceptableEntropy": true,
"IsAcceptableImageIncomplete": true,
"IsAcceptableLayout": true,
"IsAcceptableMrz": null,
"IsAcceptableObliquity": true,
"IsAcceptableReflectionMrz": null,
"IsAcceptableReflectionViz": true,
"IsAcceptableSize": true,
"IsAcceptableTextConfidenceMrz": null,
"IsAcceptableTextConfidenceViz": true,
"IsGenerallyAcceptable": true
},
"ReverseGeocodingReport": null,
"SasToken": null,
"SoftwareUsed": ""
}
]
}
],
"ProcessedDocumentFeatures": "ImageUnderVisibleIllumination",
"SdrCompletionStatus": "Ok"
},
"ProcessingStartTime": "2020-08-07T18:06:42.2",
"ProofOfAddressReport": null,
"RequestAcceptanceWarnings": [],
"RequestRejectionInfo": null,
"RiskManagementReport": null,
"SdrVersion": "20.8.0.7"
}
Updated over 1 year ago