This is a live protocol demo, not a production integration: it decrypts and displays whatever the wallet discloses, but it does not verify the issuer's signature or walk a trust chain back to a PID trust anchor for the returned credential itself. Nothing submitted here is stored beyond this browser session. The request is signed with a certificate issued under PID Issuer CA 02 and listed in the EUDI trust infrastructure (LoTE) — identified via the x509_hash client_id scheme — so the wallet should recognize this verifier as trusted rather than flag it as unverified.

How this works

1. Get a PID

Don't have one in your wallet yet? On the phone you'll scan with, request a test PID from the EUDI dev issuer, then come back here.

2. Scan

The QR code encodes an OpenID4VP authorization request asking for a PID presentation.

3. Consent

Your wallet shows exactly which attributes are being asked for before you approve anything.

4. Encrypted response

The wallet encrypts its response to a one-time key generated for this session and posts it back to us.

5. Displayed here

We decrypt the response and show the disclosed claims on this page — live, not simulated.

Want this exact flow, built for your product?

Talk to us