Prerequisites
- The verification quickstart’s
/api/verification-tokenand/api/verify-presentationroutes. - A schema with a
tierclaim, and a test user who holds a credential from an issuer you accept.
Step 1: Create a program that requests the tier
- In the Developer Dashboard, go to Verifier → Programs and create a program.
- Select the schema with the
tierclaim and the issuers you accept. - Request the
tierclaim, and publish the program. - Copy the verification program ID.
Step 2: Request the tier when the user opens the page
- Web
- Flutter
redirectUrl that points to the issuer’s claim page.
Step 3: Gate the feature on the result
Only"Compliant" results carry a verifiablePresentation. Other statuses, such as "Non-Compliant", "NotFound", "Expired", or "Revoked", have none. See the response reference for the full list.
tier value on your backend when it verifies the presentation, and unlock the page only for the tiers you allow. Wrap verifyCredential in try/catch: a cancelled consent dialog or a rejected token rejects the promise instead of returning a status.
Next steps
- Try it live: member discount at a café or show a seller you passed an ID check
- Verifying credentials for the full result shape and selective disclosure
- Verifying your first credential for the full setup
- Schema Design to understand which fields a program can check