OpenID for Verifiable Presentations (OID4VP)

OpenID for Verifiable Presentations (OID4VP) is a protocol by the OpenID Foundation in which a verifying party requests credentials from a wallet and the wallet presents them.

OID4VP builds on OAuth 2.0. The verifying party describes which details it needs; the wallet picks matching credentials and presents them with a fresh signature bound to the request. Version 1.0 has been final since 2025.

OID4VP is used for government wallets in Europe and Switzerland, such as the EUDI wallet and the Swiss e-ID. For agents, the protocol is interesting because a mandate can be presented the same way as an identity document.

Example

A shop uses OID4VP to request proof that the agent is authorized for orders up to CHF 300. The agent's wallet presents the matching mandate, with only the necessary details and a signature bound to this request. The shop verifies and decides.

How it differs

OID4VCI governs how a credential gets into the wallet; OID4VP, how it is presented again. SD-JWT VC is the format of the credential itself. Together they form the cycle of issuance, storage and presentation.

In practice

  • Describe exactly which details you need in the request, and no more.
  • Bind every request with a fresh random value, so presentations cannot be reused.
  • Verify the result of the presentation with KYA or the engine before you accept the action.

Role in KYA

KYA verifies the result of a presentation: the SD-JWT VC with its disclosures and the key binding JWT that ties the presentation to recipient and time. The protocol itself runs between wallet and verifying party.

Related check: Agent and principal (subject_agent_binding). Do all parts name the same agent, is the principal named, does the agent hold the bound key?

Verify now: open a matching example

Frequently asked questions

What is OID4VP?

OpenID for Verifiable Presentations, a protocol by the OpenID Foundation for requesting and presenting digital credentials from a wallet. Version 1.0 has been final since 2025.

What is the difference between OID4VP and OID4VCI?

OID4VCI describes issuing a credential into a wallet; OID4VP describes presenting it later to a verifying party.

Does the Swiss e-ID use OID4VP?

Yes, the federal trust infrastructure relies on OID4VP for presenting credentials. Details are in the technical documentation for swiyu.

Does OID4VP require a specific wallet?

No. OID4VP is an open protocol; any wallet that implements it can present credentials. For government credentials, the respective issuer decides which wallets are permitted.

Sources

  1. OpenID for Verifiable Presentations 1.0
  2. swiyu: technical documentation