​
Jobs are made up of Actions, and each Action has a key-value pair:
But every Job also has an overall result, which is summarized in the Result Code.
If you prefer to use Smile Identity's binary results instead of interpreting individual Actions you can use Result Codes to build your business logic.
Result Codes for all jobs fall into one of three categories:
Approved (or Pass) This means that all applicable Actions passed and the overall job was approved.
Provisionally Approved
This means that the job is awaiting a human review, or that a human review was inconclusive or that part of a job passed but another part was unable to be completed.
You can treat these jobs as Approved or you handle them based on the Result Code.
Please note a Pure Provisional
result is a provisionally approved job, but one in which the image comparison Action was provisionally approved but the identity validation Action failed or could not return data. Also note, a Pending Approval
result is a custom Strict setting where the user cannot progress in the system without a human review being completed on the Pending job.
Rejected (or Fail) This means that one or more of the applicable Actions for job failed, and thus, the overall job was rejected according to Smile Identity standards.
Error Codes are presented when a job could not be submitted due to a logical/technical issue. These jobs do not show up in the portal job list and do not have a Smile Job ID.
General Failures - no further processing possible
Code | Description | Result |
0001 | Data Invalid | Rejected |
0903 | Zip Corrupt | Rejected |
0907 | FAIL - Possible Spoof - Strict Setting | Rejected |
2405 | Error - "You are not authorized to do that" * | - |
2314 | Error - No Zip File Received | - |
2203 | Error - Invalid JSON | - |
2213 | Error - A required parameter is missing | - |
2204 | Error - A parameter is of the wrong data type | - |
2205 | Error - You are not authorized to do that. * | - |
2220 | Error - Production is not enabled for this account. Please complete your KYC with Smile Identity.​ | - |
2212 | Error - Invalid job type​ | - |
2215 | Error - Job already exists for | - |
* If you are seeing this error and are not using one of our open-source server-side libraries (Java, Ruby, Javascript), you may be miscalculating the Security Key. Also check the Moving to Production section to ensure that you have changed your API Key.
​
When a Register with ID job is submitted with an ID number there can be up to 3 results codes generated and sent through the callback.
Each job of this type returns a result code from the ID number lookup. These codes are the same as for a ID Validation (job type 5) job.
In the case where the ID number lookup did not return a photo AND there is no ID card image to compare the selfie against processing will stop and a return a second code (0908, 1013, or 1014). In the case where the ID number lookup did not return a photo AND there is ID card image to compare the selfie against, processing will continue.
When processing can continue, that is, there is either an ID card image or an issuer photo to compare to the selfie , a code will be returned that is the result of the machine evaluation of the comparison (08xx). If the machine result is inconclusive, the job will be sent to human review and a third code sent (12xx) which is the result of that review.
Code | Description | Result |
0911 | No Face Found | Rejected |
0912 | Image Quality Judged Too Poor | Rejected |
0810 | Machine Judgement - PASS | Approved |
0811 | Machine Judgement - FAIL - Compare Rejected | Rejected |
0812 | Machine Judgement - Pure Provisional | Provisionally Approved |
0813 | Machine Judgement - FAIL, Possible Spoof - Settings Based on Normal/Strict/Custom | Rejected |
0814 | Machine Judgement - Provisional - Possible Spoof | Provisionally Approved |
0815 | Machine Judgement - Provisional - Compare Unsure | Provisionally Approved |
1210 | Human Judgement - PASS - Settings Based on Normal/Strict/Custom | Approved |
1211 | Human Judgement - FAIL - Human Compare Failed | Rejected |
1212 | Human Judgement - Spoof Detected | Rejected |
1213 | Human Judgement - Provisional - Liveliness Unsure | Provisionally Approved |
1012 | ID Verification Success | Provisionally Approved |
1013 | Invalid ID | Rejected |
1014 | Unsupported ID number format | Rejected |
1015 | Error - Queried Database Unavailable | Processing Continues with ID Card Image |
0908 | Error - Issuer not available | - |
1016 | Error - Need to Activate Product | - |
2209 | Error - Wrong job type. This user is already enrolled with | - |
Code | Description | Result |
0921 | FAIL - No Face Found | Rejected |
0922 | FAIL - Image Quality Judged Too Poor | Rejected |
0820 | Machine Judgement - PASS | Approved |
0821 | Machine Judgement - FAIL - COMPARISON | Rejected |
0822 | Machine Judgement - PURE PROVISIONAL | Provisionally Approved |
0823 | Machine Judgement - FAIL - Possible Spoof | Rejected |
0824 | Machine Judgement - PROVISIONAL - Possible Spoof | Provisionally Approved |
0825 | Machine Judgement - PROVISIONAL - Machine Compare Unsure | Provisionally Approved |
1220 | Human Judgement - PASS | Approved |
1221 | Human Judgement - FAIL - Human Compare Failed | Rejected |
1222 | Human Judgement - FAIL - Spoof Detected | Rejected |
2208 | Error - Enrolled user was deleted from the system | - |
2207 | Error - Enrolled user is disabled | - |
2210 | Error - No enrolled user found for | - |
2211 | Error - Enrolled user must complete re-enrollment before attempting Auth | - |
Code | Description | Result |
0941 | FAIL - No Face Found | Rejected |
0942 | FAIL - Image Quality Judged Too Poor | Rejected |
0840 | PASS - Machine Judgement | Approved |
0841 | FAIL - Machine Judgement - Compare Failed | Rejected |
0842 | PROVISIONAL - Machine - Pure Provisional | Provisionally Approved |
0843 | FAIL - Possible Spoof - Machine Judgement * | Rejected |
0844 | PROVISIONAL - Possible Spoof - Machine Judgement | Provisionally Approved |
0846 | PENDING - Possible Spoof - Machine Judgement | Pending |
1240 | PASS - Human Judgement | Approved |
1241 | FAIL - Image Unuseable | Rejected |
1242 | Spoof detected - Human Judgement | Rejected |
* Settings based on normal/strict/custom confidence thresholds​
Code | Description | Result |
0981 | FAIL - No Face Found | Rejected |
0982 | FAIL - Image Quality Judged Too Poor | Rejected |
0880 | PASS - Machine judgement | Approved |
0881 | FAIL - COMPARE - Machine judgement | Rejected |
0882 | Partner Review Required | Provisionally Approved |
0883 | FAIL - Possible Spoof - Machine Judgement | Rejected |
0884 | PROVISIONAL - Possible Spoof - Machine Judgement | Provisionally Approved |
1280 | PASS- Human Judgement | Approved |
1281 | FAIL - Human Judgement | Rejected |
1282 | Spoof Detected - Human Judgement | Rejected |
2208 | Error - Enrolled user was deleted from the system | - |
2207 | Error - Enrolled user is disabled | - |
2210 | Error - No enrolled user found for | - |
2211 | Error - Enrolled user must complete re-enrollment before attempting Update | - |
Code | Description | Result |
1012 | Valid ID | Approved |
1013 | Invalid ID | Rejected |
1014 | Error - Unsupported ID number format | - |
1015 * | Error - Queried Database Unavailable | - |
1016 | Error - Need to Activate Product | - |
2211 | (Mobile SDK Only) ID Validation Failed | Rejected |
2212 | (Mobile SDK Only) Error - HTTP Request Failed | - |
* Queried Database Unavailable
refers to the ID Authority where we verify the ID number provided and if it has downtime. ID Authority downtime is monitored from the portal in our ID Status page. To find out when an ID authority is back up you can use our ID Status API.
Code | Description | Result |
2301 | Error - System Error | - |
2303 | Error - Invalid JSON | - |
2313 | Error - Missing Required Field | - |
2305 | Error - Invalid Signature (sec_key) | - |
2312 | Error - Invalid Job Type | - |
2314 | Error - Product Activation Required | - |
Please Note the difference between a Rejection and an Error. As mentioned above and Error occurs when a job could not be processed due to a logical/technical issue. A Rejection, like an Approval, is a Result of a processed job and therefore incurs a charge, the amount for which can be found here.
Note, charges are NOT incurred for Errors.
E.g. you will not be charged in the case of a 1015 Error - Queried Database Unavailable
Please Note: Newly issued or updated NG NINs or BVNs can take between 2 to 7 days to reflect in the government database. During this period the ID will return a 1013 - Not Found
or in the case of an ID update, the previous information on file at the ID authority.