PDF417 Scan

PDF417 Barcode Scanner SDK

Read damaged, truncated and hard-to-scan PDF417 barcodes in your mobile and web apps. Evaluate LineSight on the labels and documents your users scan, then connect decoded results to your workflow.

PDF417 Scan PDF417 Scan

Evaluate PDF417 scanning in your own app

LineSight is barKoder's specialized PDF417 decoding technology. Test it on the barcodes your users actually scan, then wire it into your application.

Test against your real workflow

Start with representative samples:

  • Clean print
  • Dense data
  • Worn documents
  • Difficult camera angles

Compare successful reads, time to first result and how often each sample has to be repositioned on your target devices. The examples below show damaged or incomplete barcode patterns.

Start an SDK trial

Add a PDF417 scanner to a web application

  1. Get a trial key and follow the Web SDK installation guide.
  2. Enable the PDF417 decoder in your scanner configuration.
  3. Start scanning from a deliberate user action and handle the returned result.
  4. Test success, no-result and error states before connecting the scanner to your production workflow.
See the PDF417 web example

From PDF417 scan to structured document data

Reading the barcode and interpreting what it contains are two separate steps. barKoder does both on the device, for licenses, ID cards and vehicle license discs.

  1. Scan Capture the PDF417 barcode with the device camera.
  2. Decode LineSight reads it, even when parts of the barcode are worn or missing.
  3. Parse The parser for the document turns the payload into labelled fields, on the device.
  4. Use Your app receives the fields as JSON and maps them to its own forms.

U.S. and Canadian driver's licenses

AAMVA parser

Parses the PDF417 barcode on the back of U.S. and Canadian driver's licenses and ID cards, following the AAMVA DL/ID Card Design Standard (v1.0.0 to v10.0), with check digit and formatting validation.

Fields you can map

  • Name
  • Address
  • Date of birth
  • Document number
  • Issue and expiry dates
  • Jurisdiction and class
  • Endorsements and restrictions
Explore the AAMVA parser →

South African driving licenses

SA DL parser

Decrypts and parses the ultra-dense PDF417 barcode on South African driving licenses, which holds up to 720 bytes of data. Processing runs on the device, without a remote parsing service.

Fields you can map

  • ID number
  • License number
  • Name and surname
  • Date of birth
  • Vehicle code classes
  • Issue and expiry dates
  • Holder photo
Explore the SA driving license parser →

South African Smart ID cards

SA ID parser

Extracts structured, positional data directly from the PDF417 barcode on South African Smart ID cards, giving direct access to key data such as ID numbers, names and dates.

Read about SA ID and license scanning →

South African vehicle license discs

Vehicle license disc parser

Extracts structured, positional data from the PDF417 barcode on South African vehicle license discs. The disc's barcode is much less dense, so it scans quickly, even through windscreen glare.

Enable the South African parsers →

The SA ID and vehicle license disc parsers are enabled as options of the SA DL parser and are documented for the Android, iOS, Flutter, React Native, Capacitor, .NET MAUI, NativeScript and Cordova SDKs.

How LineSight reads damaged PDF417 barcodes

PDF417 is a two-dimensional stacked barcode that stores large amounts of data in a compact space.

Its Start and Stop patterns tell a decoder where the barcode is. The row indicator columns next to them hold what the decoder needs to read it: the number of rows and columns, the error correction level and more.

Most decoders depend on these elements. barKoder doesn't, so it keeps reading when they are worn, cut off or missing.

Complete PDF417 barcode with the Start and Stop patterns and the row indicator columns highlighted
A complete PDF417 barcode with all its elements
PDF417 barcode with only its Start pattern, missing the Stop pattern and the Stop row indicator
Advanced decoders Stop pattern and Stop row indicator missing Better decoders handle this, because Compact PDF417 only uses a Start pattern and a Start row indicator.
PDF417 barcode with only its Stop pattern, missing the Start pattern
Advanced decoders Start pattern missing Similar to Compact PDF417, so better decoders handle it too.
PDF417 barcode missing both its Start and Stop patterns
barKoder Start and Stop patterns both missing Where other decoders start to fail.
PDF417 barcode missing both patterns and its Stop row indicator column
barKoder Stop row indicator removed as well Still not a problem for barKoder.
PDF417 barcode with a complete data column removed from the right side
barKoder A complete data column removed Cut from the right side, and still decoded with ease.
PDF417 barcode with columns taken out of the middle
barKoder Columns removed from the middle Against every rule in the PDF417 specification, and all data is still extracted.
Torn PDF417 barcode with several kinds of damage combined
barKoder Mixed damage Combinations of damage where other decoders don't even attempt a scan.
Test LineSight on your own barcodes Use a trial license to see how your hardest samples behave. Start an SDK trial

Used on PDF417 barcodes from documents such as

  • U.S. and Canadian driver's licenses
  • U.S. Uniformed Services ID cards
  • Common Access Cards
  • Argentine DNI
  • Colombian Cédula de Ciudadanía
  • South African Smart ID cards
  • South African driving licenses
  • South African vehicle license discs

PDF417 scanning in production

Teams using barKoder to read PDF417 barcodes on IDs, licenses and vehicle documents.

Try barKoder on your phone or in your browser

Install the free barKoder demo app, or open the web demo, and scan your own barcodes before you integrate the SDK.

iPhone and iPad

barKoder demo app for iOS

Scan with your camera, or point it at the QR code to open the App Store.

Download on the App Store
QR code linking to the barKoder demo app on the App Store

Android phones and tablets

barKoder demo app for Android

Scan with your camera, or point it at the QR code to open Google Play.

Get it on Google Play
QR code linking to the barKoder demo app on Google Play

Any modern browser

barKoder web demo

Runs the Web SDK in your browser, on desktop or mobile, with nothing to install.

Open the web demo
QR code linking to the barKoder web demo

Test with known samples. Print or display the testing sheet and scan each 1D and 2D barcode with the demo app. The data sheet summarizes the SDK for your team.

PDF417 scanner SDK questions

Can barKoder scan driver's license barcodes?

Yes. barKoder reads the PDF417 barcode on the license and parses it on the device: U.S. and Canadian licenses with the AAMVA parser, and South African driving licenses with the SA DL parser.

Can barKoder read South African ID cards and vehicle license discs?

Yes. The parsers for South African Smart ID cards and vehicle license discs are enabled as options of the SA DL parser and are documented for the Android, iOS, Flutter, React Native, Capacitor, .NET MAUI, NativeScript and Cordova SDKs. See how to enable them.

Can I scan PDF417 in a browser application?

Yes. The barKoder Web SDK includes a PDF417 decoder. Follow the Web SDK guide for installation and scanner configuration, then test it on your target browsers and devices.

Does parsing need an internet connection?

No. The AAMVA and SA DL parsers run on the device, so parsed fields are available without a remote parsing service.

Can I read a PDF417 barcode from an image?

To check a single image, upload it to the free online barcode scanner. To read PDF417 barcodes inside your own app, use the SDK with a trial license.

Does a successful scan prove a license is genuine?

No. Parsing interprets the data encoded in the barcode. It doesn't establish that the document is authentic or that it belongs to the person presenting it, so design additional checks around your application's requirements.

How should I evaluate difficult PDF417 samples?

Use the same sample set, devices and conditions throughout your evaluation. Record failures as well as successful reads and speed, and keep sample types separate instead of reporting one overall accuracy figure.

Add PDF417 and driver's license scanning to your app

Evaluate LineSight and the document parsers on your own samples with a free 30-day trial, or talk to an SDK expert about your project.