Compare User Information
Partners are able to automatically compare the information returned by an ID authority with the information we read from a user-submitted document, such as a passport.
This comparison is sequence-agnostic: partners can combine Enhanced KYC or Biometric KYC and Document Verification in any order they choose.
By calling our
compare_user_infoendpoint, partners need not rely on human review, and can have an extra assurance that their user’s KYC information checks out.
Request Type: Post
The integration option you are using. For rest api send the value as "rest_api"
The version of the integration option you are using
The outgoing signature to authenticate the request from you to Smile Identity
The timestamp used to calculate the signature in ISO date/time format
The user ID of an existing user who has successful Biometric KYC and Document Verification jobs with the same id.
The country of issuance of the ID, this should be the same as the one you used while running both the Biometric KYC and Document Verification jobs.
The type of ID or document, this should be the same as the one you used while running both the Biometric KYC and Document Verification jobs.
"timestamp": "2021-05-18 15:14:43 -0700",
The Smile internal reference number for the job
A JSON object containing the job tracking parameters you sent with the request
A value generated by you, so you can track users on your end. This value must be unique, any string and can follow your identifier convention
A unique value generated by Smile ID specifically for this user’s job
The type of job you want to perform. This will be set to 9.
Textual value of match outcome
Numeric value of match
1020=Exact Match, 1021=Partial Match,
1022 = No Match
Find list of potential error codes below.
A JSON object containing the details of the individual field comparisons
This key confirms if we sent the personal information retrieved from the ID authority sent to you
The result of looking up the ID number in the ID authority database is returned in this key
Result of comparing names on the ID card image and the names returned by the ID authority
Result of comparing DOB on the ID card image and the names returned by the ID authority
Result of comparing Gender on the ID card image and the names returned by the ID authority
Result of comparing Phone Number on the ID card image and the names returned by the ID authority
Result of comparing Address on the ID card image and the names returned by the ID authority
Result of comparing Expiration Date on the ID card image and the names returned by the ID authority
Same as ResultText
The outgoing Signature, you can use this to verify that the response is from Smile ID
The outgoing timestamp in ISO date/time format, use this to calculate the outgoing Signature
"ResultText": "Partial Match",
"Return_Personal_Info": "Not Applicable",
"Name": "No Match",
"DOB": "Exact Match",
"Gender": "Exact Match",
"PhoneNumber": "Exact Match",
"Address": "No Match",
"ExpirationDate": "Exact Match",
"ID_Verification": "Partial Match"
If all the underlying fields are an exact match the overall result is an exact match. If at least one of the underlying fields is an exact match, partial match, or transposed then the overall result is a partial match. If all of the fields are no match then the entire result is no match. Here is an explanation of the matching rules:
The values are a case-insensitive exact match
For name values it is a partial match if the values are a levenshtein distance of <= 2 apart.
For date of birth and expiration date it is a partial match if any single component (Day, Month, Year) is within 1 digit of the returned value. If more than one component of date birth is off then it is no match.
Two elements are transposed.
For example first name and last name or month of birth and date of birth
All other cases
We advise that you build a business logic that handles jobs that have an overall result of partial match
You must perform both KYC and Document Verification for this user.
You sent a user_id that doesn’t have successful Biometric KYC and Document Verification jobs
Confirm that you sent the right user_id and retry
You are not authorized to do that.
Your signature and/or timestamp is incorrect or you are using the signature and timestamp for a wrong environment
<parameter> is missing
You didn’t send all the required parameters in the request body
Compare your request body with the sample request provided above
All of the fields on the ID card image exactly match the ID info in the ID authority database.
At least one of the fields on the ID card image partially/exactly matches the ID info in the ID authority database.
Custom business logic
None of the fields on the ID card image partially/exactly match the ID info in the ID authority database.