DMV Data Verification Service
Driver’s licenses, driving permits and ID cards issued by U.S. jurisdictions are regularly used as proof of identity; however, these documents can be counterfeit or altered. The DMV Data Verification Service allows an organization that is presented with a license or ID card to verify that the data on the card matches the data held by the jurisdiction that issued the document.
Benefit for Driver’s License Data Verification Service Users
The DMV Data Verification Service provides users with immediate verification of identification document data. Driver’s License Data Verification Service users submit data on a license and the service returns a flag for each data element that indicates if the element matches the data on file with the issuing jurisdiction. Users interact with the service via a web-service call.
Participants for DMV Data Verification Service
Example Request
Send POST request with CURL
curl -X POST https://screening.idscan.net/api/Check -H "Content-Type: application/json" -H "Authorization: Bearer {token}" -d "{\"firstName\":\"firstName\",\"lastName\":\"lastName\",\"dateOfBirths\":\"dateOfBirths\",\"state\":\"state\",\"services\":[\"F1366C39-D0CD-458C-81F8-EFD7B0753A5B\"],\"driverLicenseNumber\":\"driverLicenseNumber\"}"
Request data
Endpoint: https://screening.idware.net/
or https://screening.idscan.net/
Request:
POST /api/Check
With Authorization header "Authorization: Bearer {token}"
{
"firstName": "string",
"middleName": "string",
"lastName": "string",
"dateOfBirths": "2021-09-27",
"sex": "string",
"address": "string",
"addressLine2": "string",
"city": "string",
"county": "string",
"state": "string",
"issuedBy": "string",
"zip": "string",
"ssn": "string",
"services": [
"F1366C39-D0CD-458C-81F8-EFD7B0753A5B"
],
"idType": "string",
"idNumber": "string",
"driverLicenseNumber": "string",
"documentCategoryCode": 0,
"driverLicenseIssueDate": "2021-09-27",
"driverLicenseExpirationDate": "2021-09-27",
"referenceId": "string",
"metadata": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"emailAddress": "user@example.com",
"phone": {
"phoneNumber": "string",
"sendPhoneVerification": true,
"forceVerificationByCall": true
},
"locationId": 0,
"readOnlyAccessLocationIds": [
0
]
}
DocumentCategoryCode (int)
0
for Driver License1
for Permit2
for ID Card
Sex (string)
M
- MaleF
- Female
For DMV service fields "idType"
and "idNumber"
in the request data should not be filled, please, use "DocumentCategoryCode"
and "DriverLicenseNumber"
fields instead.
The delimiters is used in the "DriverLicenseNumber"
field must not be included in the request (e.g if document contains number "a-123", it must be "a123" in request).
The "DriverLicenseNumber"
field is not case sensitive, so if value of "a123" is submitted, it will report a match on "A123".
Request Fields
Field Name | Required Fields for DMV Service |
---|---|
"firstName" | Required |
"lastName" | Required |
"state" or "issuedBy" | Required |
"driverLicenseNumber" | Required |
The "services" field is an array of IDs. Each ID is of a service that the client would like to run on the supplied data.
To run a name through the DMV Data Verification include - "F1366C39-D0CD-458C-81F8-EFD7B0753A5B"
To have multiple third party checks run during a single request, please see details
Important
When the "services"
field is null or is an empty array all the services your account has enabled will run. We do not recommend submitting request in this way. We recommend being explicit about which services you would like to run.
Response:
[
{
"serviceId": "f1366c39-d0cd-458c-81f8-efd7b0753a5b",
"serviceName": "DMV Verification",
"serviceDescription": "Driver License Data Verification",
"error": null,
"success": true,
"locationId": 0,
"readOnlyAccessLocationIds": [
0
],
"profiles": [
{
"internalId": null,
"firstName": "TEST",
"middleName": "TODAYS",
"lastName": "RECORD",
"dateOfBirths": "10.10.1960 0:00:00",
"address": null,
"countryName": null,
"countryCode": null,
"street1": null,
"street2": null,
"city": "TOPEKA",
"state": "KS",
"zipCode": "666111109",
"county": null,
"convictiontype": null,
"offenses": null,
"photoUrl": null,
"source": null,
"otherInformation": null,
"idNumber": null,
"issuedBy": "KS",
"verificationResult": null,
"driverLicenseVerificationResult": {
"documentCategoryMatch": null,
"personLastNameExactMatch": false,
"personLastNameFuzzyPrimaryMatch": false,
"personLastNameFuzzyAlternateMatch": false,
"personFirstNameExactMatch": false,
"personFirstNameFuzzyPrimaryMatch": false,
"personFirstNameFuzzyAlternateMatch": false,
"personMiddleNameExactMatch": false,
"personMiddleNameFuzzyPrimaryMatch": false,
"personMiddleNameFuzzyAlternateMatch": false,
"personMiddleInitialMatch": false,
"personBirthDateMatch": false,
"driverLicenseIssueDateMatch": true,
"driverLicenseExpirationDateMatch": false,
"driverLicenseNumberMatch": true,
"addressLine1Match": false,
"addressLine2Match": null,
"addressCityMatch": true,
"addressStateCodeMatch": true,
"addressZIP5Match": true,
"addressZIP4Match": true,
"personSexCodeMatch": true,
"addressLine1FuzzyMatch": true
}
}
]
}
]
Field Name | DMV Request Data | Jurisdiction Data | DMV Response | Reason for Response |
---|---|---|---|---|
Driver License Number | 1234 | 1234 | true | Numbers Matched |
Last Name | SMITH | JONES | false | Different Names |
Date of Birth | null | 1/2/1934 | null | No Data From User |
Zip Code | 666111109 | null | null | No Data From State |
When the exact match indicators in the response for the firstName
, middleName
or lastName
input parameters indicate a match (i.e. its value is true), then the additional fuzzy match fields in the response will be null.
When the exact match indicators in the response for the firstName
, middleName
or lastName
input parameters indicate a mismatch (i.e. its value is false), then the additional fuzzy match fields in the response will be populated to show if the supplied name matched using the fuzzy matching algortihms used by the web service.
DMV users who key in the names may make typos, so these fuzzy match indicators can assist the users in spotting typographical errors. e.g. if the First Name
Match Indicator is "false", but the First Name
Fuzzy Primary Match is "true"
, this indicates that the first name was a close match.
AAMVA uses a Double Metaphone matching algorithm for the fuzzy compares. The Double Metaphone provides two additional indicators for each component of the name. The Fuzzy Primary Match Indicator, indicates if there is a close match. The Fuzzy Alternate Match Indicator, indicates if there is a more distant match.
Issuing Jurisdiction and Mailing Address
The two-letter abbreviation of the issuing jurisdiction must be included in the verification request. A DL or ID card is normally tied to one jurisdiction, but sometimes, two jurisdictions can be found on a card. It's possible to have an out-of-state address printed on the card (e.g. a DL was issued in VA could
show a mailing address in CO). On this case, when submitting a verification request, the field "issuedBy"
must be filled in by "VA"
value and field "state"
must be filled in by "CO"
value. If issued jurisdiction and mailing state are the same, the fields "issuedBy"
and "state"
must be filled both the same value.