Overview
Webhooks are HTTP callbacks that notify your application about important events on the didx:me platform — eliminating the need to continuously poll the API for status updates.Supported Events
- For Issuers
- For Verifiers
| Event | Description |
|---|---|
openid4vc.issuance.offered | Credential offer sent to user |
openid4vc.issuance.completed | User accepted and received the credential |
openid4vc.issuance.failed | Issuance attempt failed |
openid4vc.issuance.expired | Credential offer expired before user accepted |
Registering a Webhook Endpoint
Response (201 Created)
Webhook Payload Structure
All webhook payloads include aneventType and a payload with a resource reference:
Technical Requirements
Your webhook endpoint must:- Accept POST requests
- Use HTTPS exclusively
- Respond promptly with a 2xx status code
- Handle duplicate deliveries (the platform may retry on failure)
- Be idempotent — processing the same event twice should produce the same result
Implementation Example
Here’s a Node.js/Express implementation with deduplication handling and asynchronous processing:Local Development
Use ngrok to expose your local server via a public HTTPS URL during development:https:// ngrok URL as your webhook endpoint. The platform will retry failed deliveries automatically.
