Receive verification
POST/v3/config/digital-wallet/openid/sdjwt/verification/receive
Processes an OpenID4VP Authorization Request (V3) received from a verifier. The wallet resolves the verifier's requirements and identifies matching credentials.
Request
- application/json
Body
Authorization Request defined as per OID4VP draft 20 specification.
Boolean value indicates whether the credential should be auto presented.
Specifies the key identifier of keys to be used for credential issuance
Possible values: [jwk, did:key, did:ebsi, did:web]
Specifies the trust anchor used for credential issuance
Responses
- 200
- 401
- 500
Verification received successfully
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
- Array [
- ]
presentation_pending: The holder needs to select matching credentials and submit the Verifiable Presentation to the verifier.presentation_acked: The Verifiable Presentation has been sent to and acknowledged by the verifier.- Array [
- ]
presentation object
Unique identifier for this presentation session in the holder's wallet.
presentation_submission object
Presentation Submission object as defined in the DIF Presentation Exchange specification. Maps the holder's credentials to the verifier's requirements specified in the Presentation Definition.
Identifier of the Presentation Definition that this submission fulfills.
descriptor_map object[]required
Array of Descriptor Map entries mapping each requested credential to its location in the Verifiable Presentation.
Credential format of the matched credential (e.g. jwt_vc_json, dc+sd-jwt, mso_mdoc).
Identifier of the Input Descriptor from the Presentation Definition that this entry satisfies.
JSONPath expression pointing to the Verifiable Credential within the Verifiable Presentation token.
path_nested objectrequired
Nested path descriptor for credentials wrapped in envelope formats (e.g. JWT inside a VP JWT).
Credential format of the nested credential (e.g. jwt_vc_json, dc+sd-jwt, mso_mdoc).
Identifier of the Input Descriptor from the Presentation Definition that this nested entry satisfies.
JSONPath expression pointing to the credential within the nested envelope.
Unique identifier for this Presentation Submission.
Array of Verifiable Presentation tokens (JWTs) sent to the verifier. Supports presenting multiple VPs in a single OpenID for Verifiable Presentation (OpenID4VP) Authorization Response.
Possible values: [presentation_pending, presentation_acked]
Lifecycle status of the presentation in the holder's wallet:
Verifier's client identifier from the OpenID4VP Authorization Request (e.g. a URI or DID).
Redirect URI from the Authorization Request. The wallet redirects here after submitting the presentation.
Request URI for resolving the OpenID4VP Authorization Request by reference. The wallet fetches the full Authorization Request from this URI.
Serialized Presentation Definition received from the verifier, defining the credential and claims requirements.
Identifier of the credential selected for this presentation.
clientMetadata objectrequired
Display name of the verifier obtained from the client metadata.
URL of the verifier's logo for display in the wallet UI.
Geographic location or address of the verifier.
URL of the verifier's cover image for display in the wallet UI.
Human-readable description of the verifier.
Unix timestamp (in seconds) when this presentation record was created.
Unix timestamp (in seconds) when this presentation record was last modified.
presentation object[]
Array of credential details included in the Verifiable Presentation sent to the verifier.
Identifier of the Input Descriptor from the Presentation Definition that this credential satisfies.
Identifier of the credential from the holder's wallet used in this presentation.
Credential type strings from the presented W3C Verifiable Credential.
Disclosed claims from the presented credential in W3C JWT VC format.
Verifiable Credential Type from the presented IETF SD-JWT VC.
Document type from the presented ISO mDoc credential.
Disclosed claims from the presented SD-JWT VC or mDoc credential.
Legal Person Identification attestation of the verifier, used to verify the verifier's legal identity.
Proof of Possession for the verifier's Legal Person Identification attestation.
Indicates whether the verifier's Legal Person Identification attestation was successfully verified.
Key Identifier of the verifier's cryptographic key used for signing or encryption.
Possible values: [jwk, did:key, did:ebsi, did:web, did:tdw]
DID method or key type of the verifier's trust anchor.
OpenID Connect ID Token shared with the verifier during the presentation flow.
Decoded payload of the OpenID Connect ID Token shared with the verifier.
Client ID scheme used by the verifier in the OpenID4VP Authorization Request.
Verifier Attestation JWT received from the verifier, proving the verifier's authorization to request specific credentials.
DCQL query from the verifier's OpenID4VP Authorization Request, specifying requested credentials and claims.
Verifier's public key JWK used by the holder to encrypt the OpenID4VP Authorization Response.
Indicates whether the verifier has been verified against a configured trust list.
Trust Service Provider details for verifying the verifier's identity.
Redirect URI returned in the OpenID4VP Authorization Response. The verifier's application redirects the user to this URI after processing the presentation.
Possible values: [A128CBC-HS256, A128GCM, A256GCM]
JWE content encryption algorithms supported by the verifier for the encrypted Authorization Response.
JWE algorithm used by the holder to encrypt the OpenID4VP Authorization Response.
{
"presentation": {
"presentationId": "string",
"presentation_submission": {
"definition_id": "string",
"descriptor_map": [
{
"format": "string",
"id": "string",
"path": "string",
"path_nested": {
"format": "string",
"id": "string",
"path": "string"
}
}
],
"id": "string"
},
"vpToken": [
"string"
],
"status": "presentation_pending",
"clientId": "string",
"redirectUri": "string",
"requestUri": "string",
"presentationDefinition": "string",
"credentialId": "string",
"clientMetadata": {
"clientName": "string",
"logoUri": "string",
"location": "string",
"coverUri": "string",
"description": "string"
},
"createdAt": 0,
"updatedAt": 0,
"presentation": [
{
"id": "string",
"credentialId": "string",
"type": [
"string"
],
"credentialSubject": {},
"vct": "string",
"doctype": "string",
"claims": {}
}
],
"legalPidAttestation": "string",
"legalPidAttestationPop": "string",
"legalPidVerified": true,
"kid": "string",
"trustAnchor": "jwk",
"idToken": "string",
"idTokenDecoded": {},
"clientIdScheme": "string",
"verifierAttestation": "string",
"dcqlQuery": {},
"encryptionJwk": {},
"isVerifiedWithTrustList": true,
"trustServiceProvider": {},
"responseRedirectUri": "string",
"encryptedResponseEncValuesSupported": [
"A128CBC-HS256"
],
"encryptionAlgorithm": "string"
}
}
Unauthorized
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
Internal server error
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}