The roadside check
An officer confirms your licence — without it ever leaving your phone.
Staged here — a proximity check runs phone to phone. Grab the Driver ID reader app and a second device and you can run it for real.
The other half of a proximity check.
Every other scenario on this website runs in a browser, because the verifier is at the other end of a network — a web page asking for a presentation. A roadside check isn't: the verifier is standing in front of you, and needs a reader that speaks ISO 18013-5 device retrieval over NFC and Bluetooth LE. That's the Driver ID reader app — coming to iOS and Android.
Two phones is all the kit you need. Put the reader on one and your Driver Codes wallet on the other — or hand one to a colleague and let them play the officer — and you can watch the whole exchange from both ends.
No signal required
Device engagement and the response both run over the local link, so a check completes with no network at either end.
Physically present
NFC and Bluetooth LE are short-range, so the exchange itself is evidence the holder's phone is there — not relayed from elsewhere.
Only what the stop needs
The reader names its data elements up front. The holder sees the list and approves before anything is released.
Signature checked locally
The issuer's signature is validated against a trusted issuer list held on the device — no call back to the issuer.
An officer confirms your licence — without it ever leaving your phone.
The roadside is the case that proves why in-person mDL verification exists. There may be no mobile signal, and the officer needs certainty that the licence belongs to the person in the driver's seat. ISO/IEC 18013-5 device retrieval answers both: the Driver ID reader app on the officer's device opens a direct, encrypted session with your phone over NFC or Bluetooth LE — no internet, no server in the middle. Because those transports are short-range, the exchange is itself evidence that your phone is physically present, which a QR code photographed and forwarded to someone else could never be. Your wallet shows exactly which data elements were asked for, you approve, and the reader checks the issuing authority's signature offline against its trusted issuer list. If you have two phones to hand — or a friend or colleague willing to play the officer — the Driver ID reader app lets you run this exact exchange against your own Driver Codes wallet and watch both ends of it.
The officer's reader requests identity, the licence number, expiry and driving categories — plus your portrait to match the person presenting it. No address or unrelated data is shared, and because the exchange runs device-to-device, no record of it passes through driver.id or any server.
What happens
- 1
The officer opens the Driver ID reader app and holds their device near yours — or starts a Bluetooth LE session where a tap isn't practical.
- 2
Device engagement establishes an encrypted, one-to-one session between the two phones. Nothing is routed over the internet.
- 3
Your wallet lists the exact data elements the reader asked for; you approve, and your phone returns a signed, selectively-disclosed mDOC.
- 4
The reader validates the issuer's signature offline against its trusted issuer list and shows a pass, with your portrait to match the person at the wheel.
Exactly what is requested
Selective disclosure means only these data elements are asked for — and you approve each request before anything is shared.
Explore other scenarios
Age verification
Bars, shops and venues confirm the holder is over 18 without learning their name or date of birth — just a yes/no answer and a portrait to match the face.
Try itCar rental check
A car rental desk verifies the customer holds a valid licence with the right vehicle categories before handing over the keys.
Try itBank KYC
A bank's onboarding form checks the name and date of birth you typed against your Driver Codes Verified Licence Credential — same-device on iOS 26+, no QR scan.
Try it