Skip to main content

Verify Credentials

This section explains how to verify verifiable credentials using Skippy's platform. Credential verification is the process of validating the authenticity, integrity, and status of digital credentials presented by holders.

Understanding the Verification Workflow

Credential Verification Flow

The credential verification process follows the OpenID for Verifiable Presentations (OpenID4VP) specification, which defines a standardized flow between verifiers and holders.

What is Credential Verification?

Credential verification allows you to:

  • Validate authenticity - Confirm the credential was issued by a trusted source
  • Check integrity - Ensure the credential hasn't been tampered with
  • Verify claims - Confirm the information in the credential is accurate
  • Check status - Ensure the credential hasn't been revoked

What is a Verification Request?

A verification request is a query sent to a holder asking them to present specific credentials or attributes. Think of it as a secure, privacy-preserving way to request proof of specific claims.

How Verification Works

  1. You create the request - Select a presentation template that defines required credentials
  2. Request is delivered - The verification URL is sent to the holder via email, link, or QR code
  3. Holder reviews - The holder opens the request in their wallet and sees what's required
  4. Selective disclosure - Holder selects matching credentials and approves sharing specific attributes
  5. Presentation submitted - Wallet sends the credential presentation to the verifier
  6. Verification completed - System validates credentials and provides results

Verification Request Format

openid4vp://?request_uri=https://api.skippy.id/...

This URI contains the verification request including:

  • The verifier's endpoint
  • DCQL query defining required credentials
  • Required attributes for selective disclosure

The Complete Verification Flow

Step 1: Create Verification Request (Verifier)

  • Select presentation template
  • Generate request URL with DCQL query

Step 2: Retrieve Request (Holder)

  • Open verification request in wallet
  • Review required credentials & attributes
  • Select matching credentials from wallet
  • Approve selective disclosure

Step 4: Verify Presentation (Verifier)

  • Validate credential signatures & issuer
  • Check revocation status & expiry

Step 5: Verification Complete (Verifier → Holder)

  • Verification result returned
  • Credentials validated and attributes disclosed

Prerequisites

Before you can verify credentials, you need:

  1. A Project - Organize your verifications and manage verifier DIDs
  2. A Presentation Template - Define which credentials and attributes are required
  3. Holder Information - Optional email address for direct delivery of verification requests

Using Presentation Templates for Verification

Presentation templates define the requirements for credential verification. They specify which credentials holders must present and which attributes must be disclosed during the verification process.

Learn how to create presentation templates →

Verification States

Throughout the verification process, requests move through several states:

  • Request Created - Verification request generated
  • Request Retrieved - Holder opened the verification request
  • Presentation Submitted - Holder submitted credential presentation
  • Verification Successful - Credentials validated successfully
  • Verification Failed - Validation failed or credentials invalid
  • Error - Something went wrong in the process

Key Concepts

DCQL (Decentralized Credential Query Language)

Skippy uses DCQL as the primary method for defining presentation requirements. DCQL provides:

  • Flexible Querying - Query credentials based on type, format, and attributes
  • Privacy-Preserving - Enables selective disclosure of only required information
  • Standards-Based - Built on OpenID4VP and W3C Verifiable Credentials standards
  • Wallet Compatibility - Works with modern credential wallets

Selective Disclosure

Presentation templates leverage selective disclosure capabilities:

  • Privacy-First - Holders only share the information you request
  • Granular Control - Request specific attributes rather than entire credentials
  • User Consent - Holders see exactly what information will be shared
  • Minimal Data - Collect only the data necessary for verification

Verifier

Each presentation template is associated with a verifier:

  • Verifier ID - Unique identifier for the verification entity
  • Verifier DID - Decentralized identifier for cryptographic verification
  • Verification Method - Cryptographic method used to sign verification requests
  • Automatic Creation - Verifier is created automatically when you create your first presentation template

Key Features

Real-Time Verification

Verify credentials instantly as holders present them. See verification results in real-time with detailed validation status.

OpenID4VP Compliance

Built on open standards ensuring compatibility with any OpenID4VP-compliant wallet. Holders can use their preferred wallet application.

Privacy-Preserving

Only request the attributes you need. Holders maintain control over their data and can see exactly what will be shared before consenting.

Revocation Checking

Automatically checks if credentials have been revoked, ensuring you only accept valid, current credentials.

Next Steps

Create Presentation Template

Define requirements for credential verification.

Get Started →

Request Verification

Create your first verification request.

Learn How →