Skip to main content

Overview

Once you have the authorizationRequestQrUri from Step 2, display it to the youth so they can respond using their wallet. You can present it as a QR code or a tappable link.

Generating a QR Code

Use any QR code generation service to turn the authorizationRequestQrUri into a scannable QR code:
const qrCodeUrl = `https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=${encodeURIComponent(
  response.authorizationRequestQrUri
)}`;
Display the resulting image in your application’s UI for the youth to scan with their wallet. If the youth is on mobile, display the authorizationRequestUri as a tappable link instead. This is the direct link variant — youth can tap it to open their wallet directly.

What the Youth Experiences

When Thandi scans the QR code that the employment provider presented:
  1. Wallet launches — automatically displays the verification request
  2. Request details — shows the requesting organisation and the specific attributes being asked for
  3. Credential matching — her wallet shows all credentials that match (she might have completions from multiple opportunity providers)
  4. Credential selection — Thandi chooses which credential to share
  5. Selective disclosure — she can share the programme name and completion date while withholding her assessment score or other private attributes
  6. Consent and submit — she confirms the share, and the verified data is returned to the verifier’s system
Youth maintain complete control over what personal information they share and with which partners. They can decline any verification request at any time.

Integration Patterns

Web Application (Desktop)

Display the QR code on screen. The youth scans it with their mobile wallet.

Mobile Application

Use the authorizationRequestUri as a deep link. When the youth taps it, their wallet opens directly.

Bulk Verification

For opportunity providers processing hundreds of scholarship applications, generate a unique presentation request per applicant and embed the QR code in your application portal. Each request is single-use and linked to a specific youth.

Next Step

After displaying the request, check whether the youth has responded — Step 4: Verify Presentation.
Use webhooks instead of polling to know when the youth responds. Your application is notified automatically — no need to repeatedly check the API.