Getting Started
Wallet API v2 provides the capabilities to build end-to-end digital ID wallets. It manages wallets, keys, DIDs, and credentials, and implements the latest OID4VCI 1.0 (receiving credentials from issuers) and OID4VP 1.0 (presenting credentials to verifiers) specifications, using DCQL for credential matching. Supported formats include SD-JWT VC (IETF), W3C VC, and ISO 18013-5 mDL.
The original wallet service remains available for existing projects. For new projects, we recommend Wallet API v2 with its OID4VCI/VP 1.0 support. Migrating from v1? See the Migration guide.
Supported Standards
| Credential Formats: | SD-JWT VC (IETF), W3C VC (v1.1+, v2.0), ISO 18013-5 mDL |
| Credential Exchange: | OID4VCI 1.0, OID4VP 1.0 (DCQL) |
| Signing Algorithms: | Ed25519, secp256k1, secp256r1, RSA |
How It Differs from Wallet API v1
| Feature | Wallet API v1 | Wallet API v2 |
|---|---|---|
| OID4VP query language | Presentation Exchange | DCQL |
| OID4VCI/VP version | Draft 11–20 | 1.0 |
| Persistence | Built-in | Optional, pluggable |
| Authentication | Built-in | Optional, pluggable |
Setup
If you are new to the stack, the Docker Compose quick start is the fastest way to get running — it spins up the Issuer, Verifier, and Wallet together in one command, which lets you issue a credential, receive it into the wallet, and present it, end to end. Once running, the Wallet API v2 is available at http://localhost:7006.
When running via Docker Compose, Wallet API v2 runs on port 7006 (Issuer2 on 7005, Verifier2 on 7004). When running Wallet API v2 standalone with Docker, it uses port 7005.
- Docker Compose quick start — Spin up the wallet together with the issuer and verifier. (Recommended for first-time users)
- Run standalone — Pull and run the wallet container in isolation using the walt.id identity repo.
- Full API reference — Explore all endpoints via Swagger.
Core Concepts
- Wallets — A wallet is a container of keys, credentials and DIDs. Learn more on Managing Wallets.
- Receiving Credentials — Claim credentials from an issuer over OID4VCI 1.0, via a one-call full flow or step-by-step Custom Flow.
- Presenting Credentials — Share credentials with a verifier over OID4VP 1.0 via a one-call full flow or step-by-step Custom Flow.
- Persistence and auth — The default configuration provided via the waltid-identity repo enables SQLite persistence (data survives restarts); authentication is off (wallets are open, and the
authfeature is not yet available). Manage these via Configurations — e.g. switch persistence to in-memory.
Next Steps
- Setup — Run the wallet v2 service on your machine.
- Managing Wallets — Create and manage wallets and stores.
- Key Management & DID Management — Manage the wallet's identity material.
- Receive a credential — Claim what an issuer offers.
- Present a credential — Share it with a verifier.
- Configurations — Persistence, authentication, and more.
