Wallet Toaster

Wallet Service is a comprehensive digital wallet solution built with NestJS, designed to act as middleware between consumer applications and different wallet service providers. It exposes a standardized API for managing Verifiable Credentials (VCs) and handling user authentication, ensuring consistency regardless of the underlying wallet provider.

A key strength of the Wallet Service is its pluggable adapter architecture, which allows seamless integration with different wallet providers. New providers can be supported by implementing custom adapters, making the system highly extensible and adaptable to evolving wallet ecosystems without impacting existing consumer applications.

Service Capabilities

User Persona: End User (Beneficiaries)

This document outlines the key service capabilities available to the user in the Wallet App.

● Splash Screen

  • Displays app logo and branding during initial load.

  • Prepares the application environment and checks for embedded mode.

● User Authentication

  • Login methods: Username/password or pre-issued token.

  • Token is stored in browser local storage as wallet-token.

● Home Screen – VC List page

  • Displays a list of fetched Verifiable Credentials (VCs).

  • Key actions:

  • View VC Details

  • Share VC (via postMessage if embedded) on fetch-vcs page

● Document Management and Scanning

  • Scan QR Code to add Verifiable Credentials.

  • Upload functionality interacts with /vcs/upload-qr endpoint.

  • Shows documents used during VC issuance for transparency.

● Logout

  • Clears session and local storage (wallet-token).

  • Redirects to login screen.

This capability set is designed to offer end users a smooth, verifiable credential experience while ensuring privacy, consent, and usability, whether used standalone or embedded.

Last updated