Overview
Portal2 is a white-label web app for credential issuance and verification using the walt.id Issuer2 and Verifier2 APIs.
Features
- Issue credentials — Issue a credential from a custom JSON payload or a pre-configured Issuer2 profile to a wallet via OID4VCI v1.
- Verify credentials — request a credential presentation from a wallet via OID4VP v1.
- Simple and Advanced modes — a guided form for common credential types, or a raw JSON editor for full control over the request payload. Simple mode is the default.
- Load examples — payloads can be auto-populated from the Issuer2 and Verifier2 OpenAPI/Swagger specs.
- Real-time event log — issuance and verification steps (e.g.
OFFER_RECEIVED,CREDENTIAL_ISSUED) stream in via Server-Sent Events as the wallet interacts with the offer or request.
Try It Out
- Live demo: portal2.demo.walt.id
- Local: included in the Quick Start Docker Compose — once running, open localhost:7105.
Setup
- Clone the identity repo
git clone https://github.com/walt-id/waltid-identity.git && cd waltid-identity
- Running the project
Local
Docker
- Change directory
cd waltid-applications/waltid-web-portal2/
- Configure the dependency services
Create a .env file:
NUXT_PUBLIC_ISSUER_BASE=http://localhost:7005
NUXT_PUBLIC_VERIFIER_BASE=http://localhost:7004
NUXT_PUBLIC_WALLET_URL=http://localhost:7101
NUXT_PUBLIC_WALLET_URL points at the demo Web Wallet — there is no Wallet API v2 app yet. Three optional variables (NUXT_PUBLIC_VERIFIER_KEY_JWK, NUXT_PUBLIC_VERIFIER_X5C, NUXT_PUBLIC_VERIFIER_CLIENT_ID) pre-populate the advanced verification security section; leave them empty unless you need them.
- Run the development server
npm install
npm run dev
The app is available at localhost:3000.
Last updated on August 18, 2026
