medium complexity extracted Referral Program Confidence: 100%
4
Components
18
Shared
0
User Stories
Yes
Analyzed

Description

This feature enables peer mentors to generate and share personalized invite links and QR codes for recruiting new members to their organization. Each link carries a unique referral token tied to the sharing user, supporting both URL-based sharing via messaging apps and email, and QR code display for in-person recruitment at events or workshops. The system tracks every new sign-up back to the originating peer mentor, closing the attribution loop. The flow integrates with the mobile platform share sheet so sharing requires a single tap.

Sources & reasoning

HLF named referral / member recruitment as a SHOULD HAVE requirement and the priority matrix assigns it Phase 3 (Fase 3), which maps to v1.1. The invite-link and QR sharing mechanism is the entry point of the referral flow - without it, recruitment tracking has nothing to count. Blueprint ID invite-link-qr-sharing is preserved exactly as specified.

Analysis

Business Value

Referral programs are among the most cost-effective member acquisition channels for volunteer organizations, leveraging existing trust networks rather than paid outreach. HLF explicitly identified vervefunksjonalitet as a strategic organizational need, framing the mobile app as a marketed member benefit - a recruitment tool in itself. QR code support enables face-to-face recruitment at workshops and events, matching the peer mentor working context. Personalized links make each peer mentor an active ambassador, increasing organizational reach without additional marketing spend. Attribution data also feeds the gamification layer, making recruiting impact visible and motivating continued engagement among peer mentors.

Implementation Notes

Flutter implementation uses deep links generated via Firebase Dynamic Links or a lightweight custom deep-link service, with QR code rendering handled client-side by the qr_flutter package. The backend creates a unique referral token per request, stored in the referral_links table with the referring user ID and creation timestamp. The platform share sheet is triggered via the share_plus package, requiring no custom share UI. On new user registration the onboarding flow captures the referral token from the incoming deep link and posts it to the backend, which writes a referral_events row for attribution. Token expiry and single-use enforcement should be configurable per organization to align with varying recruitment policies.

Quality Assurance

Peer Mentor (primary)
1
Scenarios
6
UAT Steps
17
A11y Annotations
4
Role Boundaries
Peer Mentor

Peer Mentor

Quick UAT

  1. Logg inn i Meander-appen som Likeperson. Naviger til Hjem-fanen og finn Vervefunksjon-kortlenken, eller gĂ„ via innstillingsmenyen → Verv en venn.
  2. Bekreft at skjermen Verv en venn vises med din personlige invitasjonslenke tydelig fremvist.
  3. Trykk pÄ Del-knappen. Bekreft at operativsystemets deleark (iOS Share Sheet / Android Sharesheet) Äpnes med invitasjonslenken forhÄndsutfylt.
  4. Velg en meldingsapp fra delebladet (f.eks. SMS eller e-post), fullfĂžr delingen, og bekreft at du kommer tilbake til Verv-skjermen uten feil.
  5. Trykk pÄ Vis QR-kode-knappen. Bekreft at QR-koden fyller skjermen, at skjermen forblir aktiv (skjerm-dimming deaktivert), og at lysstyrken Þkes automatisk.
  6. Be en annen person skanne QR-koden med kameraet sitt. Bekreft at skanningen Äpner den korrekte invitasjonslenken med din vervekode i URL-en.

Quick UAT — Accessibility

  1. Logg inn i Meander-appen som Likeperson. Naviger til Hjem-fanen og finn Vervefunksjon-kortlenken, eller gĂ„ via innstillingsmenyen → Verv en venn.
    • Screen reader Hjem-fanen annonseres som 'Hjem, fane 1 av 5'; kortlenken for verving leser 'Verv en venn, knapp'.
    • Keyboard / focus Tab-rekkefĂžlge pĂ„ hjemskjermen inkluderer vervekortlenken; Enter aktiverer navigasjonen.
    • Focus visibility Synlig fokusring pĂ„ vervekortlenken og alle menyknapper.
  2. Bekreft at skjermen Verv en venn vises med din personlige invitasjonslenke tydelig fremvist.
    • Screen reader Sideoverskrift annonseres som 'Verv en venn'; invitasjonslenken leses opp som selekterbar tekst med label 'Din personlige invitasjonslenke'.
    • Zoom Invitasjonslenken og Del-knappen forblir synlige og trykkvennlige ved 200 % zoom.
    • Contrast 4.5:1 for invitasjonslenketekst mot bakgrunn; URL-tekst ikke kun markert med farge.
  3. Trykk pÄ Del-knappen. Bekreft at operativsystemets deleark (iOS Share Sheet / Android Sharesheet) Äpnes med invitasjonslenken forhÄndsutfylt.
    • Screen reader Del-knappen annonseres som 'Del invitasjonslenke, knapp'; delebladet annonserer seg ved Ă„pning.
    • Focus visibility Fokus flyttes til delebladet ved Ă„pning; lukkeknapp er tilgjengelig via Tab.
    • Touch target Del-knappen er minst 24×24 CSS-piksler.
  4. Velg en meldingsapp fra delebladet (f.eks. SMS eller e-post), fullfĂžr delingen, og bekreft at du kommer tilbake til Verv-skjermen uten feil.
    • Screen reader Tilbakevending til Verv-skjermen annonseres; ingen feilmelding leses opp.
    • Live region 'Invitasjonslenke delt.' annonseres som polite live region ved vellykket deling.
  5. Trykk pÄ Vis QR-kode-knappen. Bekreft at QR-koden fyller skjermen, at skjermen forblir aktiv (skjerm-dimming deaktivert), og at lysstyrken Þkes automatisk.
    • Screen reader Vis QR-kode-knappen annonseres som 'Vis QR-kode, knapp'; QR-skjermen annonserer 'QR-kode for din invitasjonslenke — hold mot kamera for Ă„ skanne'.
    • Focus visibility Lukkknapp pĂ„ QR-skjermen er tilgjengelig via Tab og har synlig fokusring.
    • Touch target Vis QR-kode-knappen er minst 24×24 CSS-piksler.
    • Contrast QR-koden har svart-hvitt farge med tilstrekkelig kontrast for skanning; ingen statusmarkering kun via farge.
  6. Be en annen person skanne QR-koden med kameraet sitt. Bekreft at skanningen Äpner den korrekte invitasjonslenken med din vervekode i URL-en.
    • Screen reader Resultatbekreftelse er ikke nĂždvendig fra testpersonens enhet; skjermen annonserer fortsatt 'QR-kode aktiv' under hele visningen.
    • Zoom QR-koden skaleres proporsjonalt og forblir skannerbar ved 200 % zoom pĂ„ visningsskjermen.

Role Boundaries

4 role(s) must NOT access this feature
  • Coordinator

    Verv en venn-skjermen finnes ikke i koordinatorens navigasjon; direkte deep-link returnerer 403.

  • Organization Administrator

    Vervefunksjon er ikke tilgjengelig i Admin Web Portal; mobilappen viser ikke Verv-skjermen for org-admin-rollen.

  • Global Administrator

    Global administrator har ingen mobilapp-tilgang til vervefunksjonen; deep-link returnerer 403.

  • Prospective Organization Representative

    Rollen har ingen konto i appen; alle autentiserte ruter returnerer 401.

Expected End State

Invitasjonslenken er delt via plattformens deleark eller QR-koden er vist for skanning. Mottakeren kan Äpne lenken og fullfÞre registrering med likepersonens vervekode forhÄndsutfylt, slik at tilskrivingen registreres i ReferralRepository.

User Stories

No user stories have been generated for this feature yet.