Testing the Verification Flow
What We Are Doing:
Running through the entire process end to end: issuance, verification, and accessing the dashboard.
Why: To ensure all components work together smoothly, from claiming a credential into the wallet to satisfying a verification request and reaching a protected resource.
Steps:
Start the server:
node src/index.jsIssue a credential by submitting the form and scanning the issuance QR code with the Empe DID Wallet. The credential is now stored in the wallet.
Click "Authorize with KYC Credential" to create an authorization request and display the verification QR code.
Scan the verification QR code with the wallet. The credential requirement (a
[email protected]:sd-jwtcredential of the expected type whoseageis at least 18) is enforced by thepresentationDefinitioncarried in the authorization request itself — the wallet only offers credentials that satisfy it, so a holder without a matching credential has nothing to present. (If you switch to adcqlQueryinstead, remember it cannot expressage >= 18— your app must then check the disclosedageitself.)When the wallet sends a matching presentation, the verification session advances to
ResponseVerified. Your frontend observes this in real time over the proxied session events stream, exchanges the session for the app session token, stores it, and redirects you to/authorization/dashboard. The dashboard's DID and claim fields show values only if your flow signed them into the token (see Creating a Protected Dashboard).
If everything works, you've successfully completed the end-to-end flow — the credential was issued, presented, verified against your request, and the verified result was delivered through the verification session.
Last updated