Skip to content
Language: EN

Can a phone prove your age without showing your whole ID?

Yes, where the verifier asks the narrow question. Attestation formats support selective disclosure, and the reader APIs already define an element asking whether the holder is at least a given age, which returns an answer rather than a date of birth.

The request decides everything

A wallet answers what it is asked. Apple's request elements for a mobile driving licence list the individual pieces a verifier can request, name, given name, family name, age, and a method that asks whether the holder is at least a given age.

That last one is the whole subject of this page: the verifier asks a question with a yes or no answer, and never sees a birth date it would then have to store and protect.

The European framework states the same principle in protocol terms: attestations support selective disclosure, and a presentation reaches a verifier only with user approval and only for the attributes that are necessary.

Shown on screen, or returned as data

The platform draws a second distinction that matters more than it looks. A display request retrieves elements and shows the results on screen for visual inspection; a data request returns them to the application.

A doorman who reads an answer from a screen has kept nothing. A system that receives the answer has a record, and now has to say why it holds it and for how long.

For age checking, the display form is the one that matches what the situation actually requires, and it is available without any special infrastructure beyond the reader.

What still gets out

That a check happened, at a place, at a time. The wallet's own transaction log is a feature for the holder, and the verifier keeps its own record of having asked.

The verifier's identity is known to the wallet, which is by design, since the framework requires verifiers to authenticate and lets the wallet indicate whether one is registered to ask for what it asks.

And the human part: the person holding the reader sees a phone, a name on a screen if the request included one, and everything else that being in a room involves. Selective disclosure bounds the data, not the encounter.

What it takes in a shop

A reader that asks the right question. That is now within reach of an ordinary phone, since the same framework that turns a phone into a payment terminal also documents a mobile document reader, which the taking payments page covers from the payment side.

Staff who know that the answer is the answer. A yes to an age question is a complete result, and asking to see the card afterwards undoes the point of the exercise.

And a fallback, because plenty of customers hold no wallet and no mobile document, and a shop cannot refuse them on that basis alone.

What a given country accepts as proof of age is a legal question this page does not answer. Ask it of whoever regulates the sale, before building anything around a tap.

Frequently asked questions

Does the verifier see my date of birth?

Not if it asks the narrow question. The reader APIs define an element asking whether the holder is at least a given age, which returns an answer rather than a date.

What is the difference between a display and a data request?

A display request shows the result on screen for inspection. A data request returns it to the application, which then holds a record.

Is an age answer legally accepted proof?

That depends on the rules where the sale happens. The technology supports the narrow question; whether it satisfies the law is a question for the regulator.

What does the shop still learn?

That a check happened, when, and who asked. Selective disclosure limits the attributes, not the fact of the transaction.