Skip to content

Driver’s licenses: Extract data from PDF417 using a barcode reader

Whether you’re developing an app for iOS, Android, cross-platform, or the web, driver license barcode scanning can be integrated to access a variety of useful information. We’ll look at how you can decode this data to speed up and improve processes that require personal identification, age verification, and more.

Kevin November 5, 2024 3 mins read
app store

What data do American and Canadian driver’s licenses contain?

Driver’s licenses are widely used as proof of identity in the United States and Canada. The American Association of Motor Vehicle Administrators (AAMVA) and Department of Motor Vehicles (DMV) offices have standardized the design of these documents and the information they contain. This data is encoded in a PDF417 barcode on the back, which can be read using a barcode reader. However, a parser (or API) is required to decode the raw data into a human-readable format.

But what information can you actually extract? Here are the mandatory driver’s license data elements on AAMVA documents. The three letters in front are the data item’s corresponding element ID:

  1. DCA: Vehicle class(es) the cardholder is allowed to drive
  2. DCB: Restrictions on driving privileges (e.g., only automatic transmission)
  3. DCD: Additional privileges granted to the cardholder (e.g., transportation of hazardous material)
  4. DBA: Expiration date of the document
  5. DCS: Last name / family name
  6. DAC: First name
  7. DAD: Middle name(s)
  8. DBD: Issue date of the document
  9. DBB: Date of birth
  10. DBC: Gender
  11. DAY: Eye color
  12. DAU: Height
  13. DAG: Address: Street name
  14. DAI: Address: City name
  15. DAJ: Address: State name
  16. DAK: Address: Postal code
  17. DAQ: ID number of the cardholder
  18. DCF: ID number of the document
  19. DCG: Country in which the document was issued
  20. DDE: Indicator that the last name is truncated
  21. DDF: Indicator that the first name is truncated
  22. DDG: Indicator that the middle name(s) are truncated

What is PDF417?

All information above, including the license number and other ID card details, is encoded by a single PDF417 barcode on the back of a driver’s license, which can be read accurately in a single scan. This 2D barcode, similar to a QR code in principle, is actually composed of multiple linear barcodes stacked on top of each other. It has a start pattern (left) and an end pattern (right), with the information itself encoded in the middle section.

A barcode scanner linked to a data parser can decode the information encoded by a PDF417 barcode to be easily readable by humans. This makes it easy to quickly find relevant fields such as a customer’s date of birth or credit card information. If the data is fed into a backend API, it can be used to automatically populate text fields, e.g., on an application form. This is not only much faster than manual data entry, it also prevents mistakes.

Use a Driver’s License Scanner to automate your workflows

With the US Driver’s License Scanner by Scanbot SDK, you can easily and reliably decode information from PDF417 barcodes on ID cards and driver’s licenses. The data is transformed into key-value pairs to improve readability and facilitate backend processing.

Whether you need to verify the age of your customer or record their name and address, a quick scan of their driving license saves time and prevents mistakes.

Security is another consideration: While the text on the document can be tampered with, it is much harder to change the information encoded in the PDF417 code. This means that using the Driver’s License scanning functionality not only increases efficiency, but also security. It can be integrated into workflows across various industries and make processes like customer onboarding and fleet management seamless and accurate.