---
id: openID4vp-receive-and-present-credentials
title: OpenID4VP - Receive and Present Credential
description: Learn how to receive and present Verifiable Credentials with OpenID4VP, enabling secure and privacy‑preserving data sharing in digital services.
keywords: [OpenID4VP, presentation, verifiable credentials, credential presentation, OID4VP, EUDI Wallet, Organisation Wallet, European Business Wallet, selective disclosure]
hide_title: false
sidebar_label: Receive and Present Credential
slug: /openID4vp-receive-and-present-credentials/
---

> **Build this with an AI coding agent.** Install the iGrant.io Agent Skills, then ask your agent to build the integration:
>
> ```bash
> npx skills add L3-iGrant/skills
> ```

<head>
  <title>Present credentials ssing OpenID4VP workflows | iGrant.io DevDocs</title>
  <meta name="description" content="Learn how to receive and present Verifiable Credentials with OpenID4VP, enabling secure and privacy‑preserving data sharing in digital services."/>
</head>

The Wallet Unit (WU) allows both individuals and organisations to act as holders of verifiable credentials, similar to how a physical wallet holds documents or ID cards. As part of the iGrant.io Organisation Wallet Suite, the Wallet Unit supports the secure and privacy-preserving sharing of credentials, based on the OpenID for Verifiable Presentations (OpenID4VP) standard. This page explains how a Wallet Unit receives a request from a verifier, selects the relevant credentials from its storage, and sends a verifiable presentation in response. The process ensures that credentials are shared only with consent, and that trust, data minimisation, and interoperability are maintained throughout the interaction.

Below are the steps for a verification workflow where the holder receives the presentation definition, selects the matching credentials, and sends the presentation to a verifier using OpenID for Verifiable Presentation (OpenID4VP).

### Step 1: Get the API Key

To get the API key, contact [support@igrant.io](mailto:support@igrant.io).

### Step 2: Receive Verification

Copy the presentation definition received from a known verifier as per OpenID4VP. This could be obtained by out-of-band means such as email or by logging into the verifier's system. Use this [endpoint](/docs/openid4vc-api/config-receive-digital-wallet-open-id-verification-v-3) to receive the verification.

### Step 3: Filter Credentials

Use this [endpoint](/docs/openid4vc-api/config-filter-digital-wallet-open-id-verification) to filter stored credentials against the received presentation definition.

### Step 4: Send Presentation

Use this [endpoint](/docs/openid4vc-api/config-send-digital-wallet-open-id-verification-presentation-v-3) to send the selected credentials to the verifier.

:::info Trust status of the verifier
The wallet checks whether the verifier can be matched against a recognised trust list. The verification response exposes this through the `isVerifiedWithTrustList` and `trustServiceProvider` fields. If the verifier cannot be matched, the Data Wallet shows a **"Service provider not verified"** warning. See [The "Service provider not verified" notice](/docs/trust-untrusted-service-provider/) and [Trust in the Wallet Ecosystem](/docs/trust-overview/).
:::