npm / @openid4vc/openid4vp
@openid4vc/openid4vp
What changed in @openid4vc/openid4vp 0.5 to 0.8, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-27.
3 breaking1 security1 deprecations11 new APIs and options2 behavior and defaults8 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli init@openid4vc/openid4vp 0.85 changes
Security 1
Indicates whether the client was authenticated; when false, an error can still be sent, but a redirect_uri returned by the response endpoint should not be opened.
New APIs and options 3
The new Openid4vpAuthorizationRequestError carries the authorization request payload so the wallet can send an error response to the verifier.
resolveOpenid4vpAuthorizationRequest throws this error when a request is invalid and its payload is known; it extends Oauth2ServerErrorResponseError and carries the authorizationRequestPayload.
Accepts an error payload to submit an OpenID4VP Authorization Error Response.
Fixes and other changes 1
Accepts an error payload to create an OpenID4VP Authorization Error Response, including without jarm options for a JARM response mode when the wallet cannot encrypt it.
@openid4vc/openid4vp 0.521 changes
Breaking changes 3
Authorization error responses now produce this error with the parsed errorResponse.
Node 18 support is dropped; Node.js 20.19 or later is now the lowest supported version.
Callers must now pass a responseMode object identifying the expected response mode group and its specific parameters; this replaces the top-level origin parameter.
Deprecations 1
clockSkewSec is deprecated in favor of allowedSkewInSeconds.
New APIs and options 8
Type declarations are exposed through the types export condition.
Add an optional callback to resolve authorization server metadata without a request; returning null indicates the metadata definitively does not exist.
Add an optional callback to resolve JWK Sets without a request; returned values are validated with the JWK Set schema.
The second parameter now accepts an object with fetch and the matching resolve callback, as well as the previously accepted Fetch implementation.
The second parameter now accepts an object with fetch and the matching resolve callback, as well as the previously accepted Fetch implementation.
Adds experimental support for the OpenID4VCI 1.1 draft endpoint, allowing presentation during issuance; the feature may change incompatibly in a patch release.
Pass allowedSkewInSeconds to configure the permitted clock skew when verifying an attestation JWT.
Pass allowedSkewInSeconds to configure the permitted clock skew when verifying client attestation.
Behavior and default changes 2
The main entry points to the ESM build.
More errors use Oauth2ServerErrorResponseError, enabling better error handling.
Fixes and other changes 7
The pre-draft-27 parameter is ignored when the verifier also sends encrypted_response_enc_values_supported, avoiding Invalid authorization_encryption_enc failures when both metadata generations are present.
The pre-draft-27 parameter is ignored when the verifier also sends encrypted_response_enc_values_supported, avoiding Invalid authorization_encryption_enc failures when both metadata generations are present.
The package remains ESM-only; using require to load its ESM build requires Node.js 20.19 or later, or 22.12 or later.
Authorization error responses are parsed and cause an Openid4vpAuthorizationResponseError with the parsed errorResponse, rather than a zod error about missing vp_token.
Authorization error responses are parsed and cause an Openid4vpAuthorizationResponseError with the parsed errorResponse, rather than a zod error about missing vp_token.
Signed OpenID4VP requests without an aud field now set aud to https://self-issued.me/v2.
Node 26 is now supported.