AAMVA rijbewijsbarcode

De 2D-barcode op de achterkant van elk Amerikaans rijbewijs is een PDF417-symbool dat de identiteitsgegevens van de houder codeert per de AAMVA Card Design Standard. Oorspronkelijk gespecificeerd in 2000, momenteel in versie 10 (2020).

Canonical spec:AAMVA Card Design Standard v10 (published 2020-09).
Barcode symbology: PDF417 (ISO/IEC 15438).
Prior versions: v8 (2013), v9 (2016), v10 (2020).

Wat het is

Een AAMVA-barcode is een PDF417-symbool waarvan de gedecodeerde payload begint met een vaste header, gevolgd door een 'subbestand' per gegevensdomeijn. Het kern-subbestand is DL (rijbewijs).

Header structure:

@

ANSI <IIN><version><jurisdiction version><subfile count>DL<subfile offset><subfile length>

Elementcodes

Each data element is a 3-character code followed by its value. The most common:

CodeMeaningFormat
DACFirst nameText
DCSLast nameText
DBBDate of birthMMDDYYYY
DBALicense expirationMMDDYYYY
DAQLicense numberAlphanumeric
DAGStreet addressText
DAICityText
DAJState2-char
DAKZIP code5 or 9 digits
DCFDocument discriminatorJurisdiction-specific

Issuer Identification Number (IIN)

Elke Amerikaanse staat heeft een 6-cijferig IIN toegewezen door AAMVA. Voorbeelden:

StateIINStateIIN
California636014New York636001
Texas636015Florida636010
Illinois636035Pennsylvania636025

Version differences

VersionPublishedKey changes
v82013Added the compliance header. Baseline for modern parsers.
v92016Clarified DCF format. Added truncation flags.
v102020Added document-image elements; relaxed height units.

Wat echte rijbewijzen hebben dat een afgedrukte AAMVA-barcode NIET heeft

Dit is van belang voor anti-fraude workflows: een PDF417 die correct parseert is niet hetzelfde als een echt rijbewijs. Fysieke rijbewijzen vertrouwen op:

Leeftijdsverificatiekiosken die uitsluitend op PDF417-parsing vertrouwen worden routinematig nagespeeld. Productie-workflows moeten barcodeparse + minimaal één fysieke functieverificatie combineren.

Canonieke testvectoren

Gebruik duidelijk synthetische gegevens bij het genereren van testpayloads. JOHN TEST, JANE SAMPLE, geboortedatum in de toekomst of voor 1900, alles wat niet kan worden verward met een echt persoon.

GevalInvoerVerwacht header substring
Californie v10, synthetischjurisdiction=CA
first=JOHN
last=TEST
license=D1234567
dob=1990-01-01
ANSI 636014100002DL
Texas v10, synthetischjurisdiction=TX
first=JANE
last=SAMPLE
license=12345678
ANSI 636015100002DL
New York v9, synthetischjurisdiction=NY
first=TEST
last=USER
ANSI 636001090002DL

Veelvoorkomende valkuilen

Scannercompatibiliteit

LezerOndersteuningOpmerkingen
iOS Camera (iOS 17+)Rijbewijs-bewustWallet-app herkent AAMVA-payloads.
Android CameraNiet nativeBehandelt als ruwe PDF417.
Google LensAlleen ruwe PDF417Toont gedecodeerde tekst zonder AAMVA-parsing.
Commerciële ID-verificatie SDK (IDEMIA, Jumio, Onfido)Volledige parseIndustriestandaard voor leeftijdsverificatiekiosken.
Industriële PDF417-scanner (Zebra, Honeywell)Volledige parseDe meeste moderne firmware bevat AAMVA-parsing.

Zie ook

Specificatieversie geverifieerd 2026-04-18 (AAMVA CDS v10, 2020-09). Volgende review: 2026-07-18.