--- title: "Error codes" slug: "s3suite94-error-codes" updated: 2026-10-27T18:42:16Z published: 2026-10-27T18:42:16Z canonical: "docs.onespan.com/s3suite94-error-codes" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.onespan.com/llms.txt > Use this file to discover all available pages before exploring further. # Error codes ## Common Error Codes | **Error Code** | **Description** | | --- | --- | | INVALID_STATUS_HANDLE | Should be thrown by method plugins when they do not receive the plugin data from status handle as desired | | METHOD_VALIDATION_FAILURE | Can be thrown by plugins when the data is not as expected. For example - Email and SMS Plugins throw this when the saved phone number is not the same as the incoming phone number | | METHOD_NOT_REGISTERED | Can be thrown by plugins when the required method is not registered | | METHOD_ALREADY_CANCELLED | Can be thrown by plugins when the method state is CANCELLED already | | METHOD_ALREADY_SETUP | Can be thrown by plugins when the method is already setup. For example for email/SMS plugin if email address/mobile number has already been setup no point in re-registering | | INVALID_METHOD_DATA | Can be thrown by the plugins when the incoming or stored method data is not valid. | | METHOD_SECURITY_ERROR | Can be thrown by method plugins in case of security gaps | | UNHANDLED_ERROR | When an expected error code is observed Can be thrown by method plugins | | CONTENT_RETRIEVAL_ERROR | Failed to retrieve the localized content. Applicable for email or SMS plugin | | TEMPLATE_PARSING_ERROR | Failed to parse email/SMS templates | | DENIED | Authentication was denied when the Server evaluated a PostOperation Check. | ## Common OTP Error Codes | **Error Code** | **Description** | | --- | --- | | SERVICE_FACTORY_INSTANTIATION_ERROR | When server is not able to load the service factory class which is configured in system property: “nnl.identity.method.config” | | OTP_GENERATION_ERROR | When there are issues in generating OTP | | OTP_MISSING_ERROR | When OTP is missing in the request to SETUP and VERIFY | | OTP_INVALID_ERROR | For invalid OTP in the request to SETUP and VERIFY | | OTP_EXPIRATION_ERROR | For expired OTP in the request to SETUP and VERIFY | ### Email OTP | **Error Code** | **Description** | | --- | --- | | EMAIL_ADDRESS_MISSING_ERROR | If email id is missing in the request | | EMAIL_ADDRESS_INVALID_ERROR | For invalid email address format | | EMAIL_OTP_SEND_ERROR | If there is an error in sending OTP from the Email Service | | EMAIL_ADDRESS_MISSING_ERROR | If email id is missing in the request | ### SMS OTP | **Error Code** | **Description** | | --- | --- | | MOBILE_NUMBER_MISSING_ERROR | If mobile number is missing in the request | | MOBILE_NUMBER_VALIDATION_ERROR | For invalid mobile number format | | SMS_OTP_SEND_ERROR | If there is an error in sending OTP from the SMS Service | | MOBILE_NUMBER_MISSING_ERROR | If mobile number is missing in the request | ## Photo ID Error Codes | **Error Code** | **Description** | | --- | --- | | SCAN_REFERENCE_MISSING | Scan reference is not provided on INIT_SETUP or INIT_VERIFY requests | | SCAN_RETRIEVAL_ERROR | Failure to retrieve scan status or scan details status. This indicates net verify service is not available or configurations are not correct | | BAD_CREDENTIAL | Bad credentials provided to access netverify service | | HTTP_REQUEST_FAILURE | HTTP status code other than 200/401 received while fetching scan status | | MISSING_SCAN_STATUS | “status” field missing in scan status retrieval | | INVALID_SCAN_STATUS | “status” field value has a value that does not match any shown below: - PENDING - DONE - FAILED | | INVALID_SCAN_DETAILS_DOCUMENT_STATUS | Scan details status. | | MISSING_DOCUMENT_FIRSTNAME_DETAIL | Scan details is missing **document.firstName** | | MISSING_DOCUMENT_DETAIL | Scan details is missing **document** field | | MISSING_DOCUMENT_FIELDS | "nv.accepted.document.types" is malformed | | DOCUMENT_TYPE_NOT_SUPPORTED | "nv.accepted.document.types" is malformed as it contains invalid document type | | RETENTION_POLICY_NOT_SUPPORTED | “nv.data.retention.policy” is configured incorrectly | | MISSING_VERIFICATION_DETAIL | Scan details is missing **verification** field | | MISSING_VERIFICATION_IDENTITY_VERIFICATION_DETAIL | Scan details is missing **verification.identityVerification** | | MISSING_IDENTITY_VERIFICATION_SIMILARITY_DETAIL | Scan details is missing **verification.identityVerification.similarity** | | MISSING_DOCUMENT_DOB_DETAIL | Scan details is missing **document.dob** | | ERROR_PROCESSING_SCAN_RESPONSE | Empty or null scan status response received | | ERROR_PROCESSING_SCAN_DETAILS_RESPONSE | Empty or null scan details status response received | | INVALID_SCAN_DETAILS_IDENTITY_VERIFICATION_SIMILARITY | Value of **verification.identityVerification.similarity** is none of the possible values below: - MATCH - NO_MATCH - NOT_POSSIBLE | | **Document failure status is not APPROVED_VERIFIED** | | --- | | ERROR_NOT_READABLE_ID | | DENIED_UNSUPPORTED_ID_TYPE | | DENIED_FRAUD | | **Verification failure reason when similarity is not a MATCH** | | --- | | IDENTITY_VERIFICATION_NO_MATCH | Identity verification similarity = NO_MATCH | | IDENTITY_VERIFICATION_NOT_POSSIBLE | Identity verification similarity = NOT_POSSIBLE | | SELFIE_CROPPED_FROM_ID | Identity verification validity is FALSE | | ENTIRE_ID_USED_AS_SELFIE | | MULTIPLE_PEOPLE | | SELFIE_IS_SCREEN_PAPER_VIDEO | | SELFIE_MANIPULATED | | AGE_DIFFERENCE_TOO_BIG | | NO_FACE_PRESENT | | FACE_NOT_FULLY_VISIBLE | | BAD_QUALITY | | BLACK_AND_WHITE |