A browser-based EUDI wallet simulator for seeing the full Nexiel Credentials flow before either side has real institutions or employers set up. It redeems a real OpenID4VCI offer from a dedicated sandbox academic issuer, holds the resulting signed credential in the browser tab, and responds to a real verification request with genuine selective disclosure. Read how credential issuance works first if you have not already.
Runs against a local apps/credentials-api instance today, not yet a public nexiel.io hostname. Every request in the flow described below is real: the same OpenID4VCI issuance path, the same signed SD-JWT VC, and the same OpenID4VP verification session the Credentials API quickstart walks through with curl, driven instead by a browser holding real keys.
A visitor opens the wallet, requests a demo credential, and watches a real degree award get issued by a fictional institution called Nexiel Sandbox University. The wallet generates its own key pair with the browser's WebCrypto API, proves possession of it over OpenID4VCI, and receives a genuinely signed SD-JWT VC in return, never a canned response. From there, the wallet can respond to a real OpenID4VP verification request: it shows exactly which claims a verifier is asking for, discloses only those, and signs a real Key Binding JWT with its own holder key.
Institution branding renders in the wallet through the same OpenID4VCI mechanism a real university would configure. The specification's own credential_metadata.display array (OpenID4VCI Final 1.0, section 12.2.4) carries a credential's name, logo, description, and background and text colors. Nexiel Sandbox University's demo branding (a dark background, a light wordmark, a short description) comes from that same field on a real, approved credential_templatesrow, rendered by the identical component an institution's own dashboard preview uses while configuring its own branding. There is one rendering of a branded credential in this codebase, not two.
Alongside the issued degree, the wallet carries a fixed, obviously synthetic Person Identification Data (PID) credential: a name, birthdate, place of birth, and nationality that never map to a real person. Its claim names match the real PID Rulebook (family_name, given_name, birthdate, place_of_birth, nationalities), so the card is a genuine representation of a real PID's shape, not an invented format.
The sandbox issuer identifies itself as a fictional country, the same pattern the EU's own reference wallet implementation uses for its test issuer (a country called “Utopia”). Every screen in the wallet carries a permanent label stating it is a demo, not connected to any real government or wallet, and the wallet never uses the official EU Digital Identity Wallet name or logo. Regulation (EU) 2024/1183 (eIDAS 2.0), recital 45, is explicit that the trust mark exists to prevent exactly that kind of confusion.
Every credential the wallet holds, and the private key it generates to hold one, lives only in that browser tab's session storage. Closing the tab discards it. Nexiel keeps no holder record of a sandbox wallet session anywhere: the only server-side trace of a redeemed demo offer is the same issuance bookkeeping a real institution's batch produces, scoped to a fictional institution and a fictional student.