ScannedCode

sealed interface ScannedCode

What a scanned QR code (or an incoming deep link) asks the wallet to do. Standards-based only — app-specific links (e.g. a verifier's own https://… short link) are the app's to translate first.

Inheritors

Types

Link copied to clipboard
object Companion
Link copied to clipboard
data class CredentialOffer(val uri: String) : ScannedCode

OpenID4VCI credential offer (openid-credential-offer://…) — add a credential.

Link copied to clipboard
data class PresentationRequest(val uri: String) : ScannedCode

A presentation request — OpenID4VP by reference (openid4vp://, haip://, eudi-openid4vp://, or any URL carrying request_uri=) or an ISO 18013-7 mdoc:// engagement. Run it with the online presentment UI (WalletUriPresentmentActivity on Android, OnlinePresentmentHost on iOS).

Link copied to clipboard
data class Unrecognized(val text: String) : ScannedCode

Anything else (e.g. a proximity mdoc: engagement meant for a verifier, or plain text).