General reference · Government Verification Sources / United States Govmatch

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": "GOVDATAMATCH"
    }
}

Response Details

The response for GovDataMatch is contained within the governmentValidation object.

This object contains the following fields:

Field Type Description
validationStatus StatusValue Provider 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
StatusValue Percentage of OCR fields that matched. Supplementary data for analysis. Contains a value and status. See below for more information.
overall StatusValue Primary verification result. Use this field to determine pass/fail. Contains a value and status. See below for more information.
provider
Optional
String Indicates 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:

Field Type Description
value
Optional
String The numeric or boolean value.
status String The status code. 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
String The key for which the status is being reported. For example, firstName, birthDate, or documentNumber.

Error Codes

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 Code Description Status Next Steps
providerNotConfigured Provider Not Configured Provider is not configured or is incorrectly configured for this flow. UNKNOWN Submit a support ticket through http://support.incode.com/ to troubleshoot issues with your configuration.
missingDocumentId Missing Document Number Document number missing or has an invalid pattern. UNKNOWN Check ID capture quality for barcode/OCR readability issues.
invalidExpirationDate Invalid Expiration Date Expiration date is not valid per document standards. UNKNOWN Check ID capture quality for barcode/OCR readability issues. If user is legitimate, submit a support ticket through http://support.incode.com/ for further investigation.
notEnoughData Missing Required Data
One or more required fields are missing or invalid.
UNKNOWN Ensure all required fields are provided by user into session.
documentTypeNotSupported Document Type Not Supported Invalid document type for validation by the configured provider. UNKNOWN Ensure the user is providing a supported document type.
geographicRegionNotSupported Country Not Supported Document country not supported by the configured provider. UNKNOWN Verify the user is providing supported document and countries are provisioned correctly.
geographicStateRegionNotSupported State Not Supported Document state not supported by the configured provider. UNKNOWN Verify the user is providing supported document and states are provisioned correctly.
connectionError Provider Connection Error
Error occurred during processing within provider environment.
UNKNOWN Try again later; if issue persists, submit a support ticket through http://support.incode.com/.
infrastructureError Incode Processing Error
Error occurred during processing within Incode environment.
UNKNOWN Try again later; if issue persists, submit a support ticket through http://support.incode.com/.
null If government validation status is not present, then it means the module was not run. UNKNOWN Try again later; if issue persists, submit a support ticket through http://support.incode.com/.
userNotFound User Not Found
ID not found in government database.
FAIL Check data extraction quality. If user is legitimate, submit a support ticket through http://support.incode.com/ for further investigation.
documentNumberMismatch Document Number Mismatch
Record exists in government database but the person may be deceased or were issued a different more recent number.
FAIL Check 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.
Was this page helpful?