GovDataMatch Technical Details

GovDataMatch is Incode’s data verification service through AAMVA or through validation of Verifiable Credentials. During verification, the supported document data fields are validated against the data on the record held by the issuing state’s DMV.

GovDataMatch is part of the overall US GovMatch offering.

Decisioning

When a connection is made and the provided Document Number matches to a record within the state DMV system, the supported data fields collected from the session are sent to the GovDataMatch provider for verification. Below are all data fields that could be available for matching. Not all participating states support all 5.

  • "firstName"
  • "paternalLastName"
  • "birthDate"
  • "issueDate"
  • "expirationDate"

Decisioning should be based on the status value in the overall object. The status value can be:

  • OK: Data Match is successful

  • FAIL: Data Match is unsuccessful

Scoring

The default AAMVA DLDV score is 100, with each data field that returns FAIL status causing a 15 point score deduction. The total module score is computed after all data field matches are complete. This calculation determines whether the overall module passed or failed:

  • OK: 2 or fewer fields failed, or a module score of 70 or greater
  • FAIL: More than 2 fields failed, or a module score of less than 70
NY Verifiable Credential

GovDataMatch supports NY through the validation of the Verifiable Credential within the document. A successful Data Match confirms the document was issued by the New York Department of Motor Vehicles and the identity data in the barcode has not been altered or tampered with. Results are returned as OK (100.0) or FAIL (0.0).

Note: supports New York driver’s licenses and ID cards issued after 2005

Standalone API

POST /omni/process/government-validation?countryCode=USA

Request Body

{
    "idNumber": "D12345678",
    "firstName": "JOHNTEST",
    "paternalLastName": "DOETEST",
    "birthDate": "03-16-1990",
    "issueDate": "01-15-2020",
    "expirationDate": "01-15-2028",
    "issuerState": "TX"
}

Response Body

{
    "valid": true,
    "statusCode": 0,
    "governmentValidation": {
        "validationStatus": {
            "value": "0",
            "status": "OK",
            "key": "ok"
        },
        "ocrValidation": [
            {
                "value": "true",
                "status": "OK",
                "key": "documentNumber"
            },
            {
                "value": "true",
                "status": "OK",
                "key": "firstName"
            },
            {
                "value": "true",
                "status": "OK",
                "key": "paternalLastName"
            },
            {
                "value": "true",
                "status": "OK",
                "key": "birthDate"
            },
            {
                "value": "true",
                "status": "OK",
                "key": "issueDate"
            },
            {
                "value": "true",
                "status": "OK",
                "key": "expirationDate"
            }
        ],
        "ocrValidationOverall": {
            "value": "100.0",
            "status": "OK"
        },
        "overall": {
            "value": "100.0",
            "status": "OK"
        },
        "provider": "DMV DATA MATCH"
    }
}

Response Details

The response for GovDataMatch is contained within the governmentValidation object.

This object contains the following fields:

FieldTypeDescription
validationStatusStatusValueProvider status code for error handling. Contains a value, status, and key. See below for more information.
ocrValidation
Optional
Array[StatusValue]Individual data field match results. Each data field result contains a value, status, and key. See below for more information.
ocrValidationOverall
Optional
StatusValuePercentage of OCR fields that matched. Supplementary data for analysis. Contains a value and status. See below for more information.
overallStatusValuePrimary verification result. Use this field to determine pass/fail. Contains a value and status. See below for more information.
provider
Optional
StringIndicates whether the request was sent to GovFaceMatch (GovFaceMatch) or GovDataMatch (GovDataMatch). Only present for US verification.

StatusValue key/value pairs

This object contains the following fields:

FieldTypeDescription
value
Optional
StringThe numeric or boolean value.
statusStringThe status code wrapped in a strong. Possible statuses are:
  • OK: User passed verification.
  • FAIL: Data did not match during validation.
  • UNKNOWN: GovDataMatch was run, but the submitted document or region isn’t supported or something went wrong when trying to perform validation.
key
Optional
StringThe key for which the status is being reported. For example, firstName, birthDate, or documentNumber.

Error Codes

Please refer to Upcoming Changes to Error Codes for US Government Verification

If these errors appear for a legitimate user, or if the errors persist, submit a support ticket through http://support.incode.com/ for further investigation.

Reason CodeDescriptionStatusNext Steps
providerNotConfiguredProvider Not Configured Provider is not configured or is incorrectly configured for this flow.UNKNOWNSubmit a support ticket through http://support.incode.com/ to troubleshoot issues with your configuration.
missingDocumentIdMissing Document Number Document number missing or has an invalid pattern.UNKNOWNCheck ID capture quality for barcode/OCR readability issues.
invalidExpirationDateInvalid Expiration Date Expiration date is not valid per document standards.UNKNOWNCheck ID capture quality for barcode/OCR readability issues. If user is legitimate, submit a support ticket through http://support.incode.com/ for further investigation.
notEnoughDataMissing Required Data
One or more required fields are missing or invalid.
UNKNOWNEnsure all required fields are provided by user into session.
documentTypeNotSupportedDocument Type Not Supported Invalid document type for validation by the configured provider.UNKNOWNEnsure the user is providing a supported document type.
geographicRegionNotSupportedCountry Not Supported Document country not supported by the configured provider.UNKNOWNVerify the user is providing supported document and countries are provisioned correctly.
geographicStateRegionNotSupportedState Not Supported Document state not supported by the configured provider.UNKNOWNVerify the user is providing supported document and states are provisioned correctly.
connectionErrorProvider Connection Error
Error occurred during processing within provider environment.
UNKNOWNTry again later; if issue persists, submit a support ticket through http://support.incode.com/.
infrastructureErrorIncode Processing Error
Error occurred during processing within Incode environment.
UNKNOWNTry again later; if issue persists, submit a support ticket through http://support.incode.com/.
nullIf government validation status is not present, then it means the module was not run.UNKNOWNTry again later; if issue persists, submit a support ticket through http://support.incode.com/.
userNotFoundUser Not Found
ID not found in government database.
FAILCheck data extraction quality. If user is legitimate, submit a support ticket through http://support.incode.com/ for further investigation.
documentNumberMismatchDocument Number Mismatch
Record exists in government database but the person may be deceased or were issued a different more recent number.
FAILCheck data extraction quality. If user is legitimate, ask that a newer identity document is used for verification or submit a support ticket through http://support.incode.com/ for further investigation.


Did this page help you?