Member Recruitment
Feature Detail
Description
This feature enables peer mentors and coordinators to actively recruit new members and volunteer peer mentors directly from within the app using personalised referral links and in-app recruitment flows. Users can generate a unique referral link tied to their profile and local association, share it via any channel, and track the status of people who have signed up through their link. The feature supports HLF's strategy of positioning the app itself as a marketed membership benefit, turning existing users into ambassadors for the peer mentor programme.
Analysis
Organic peer-to-peer recruitment is consistently more effective and lower cost than traditional outreach campaigns for voluntary organisations. By embedding a referral mechanism directly into the app, the feature removes friction from the recruitment journey and gives every active peer mentor the tools to grow their local chapter. For HLF, which has explicitly identified member recruitment as a strategic goal and plans to market the app as a membership benefit, this feature is a direct revenue and growth lever. For all partner organisations, tracking referral attribution provides data on which peer mentors are most engaged in community building, informing recognition and coordination strategies at the local level.
Referral links are generated as short URLs containing an encoded user ID and organisation slug, resolved by a Supabase Edge Function that pre-fills the registration flow with the referring association's context. The Recruitment Service records each referral event in the member_recruitments table and updates the referrer's recruitment count, which feeds into the achievement badges system. The Referral Link Widget uses Flutter's Share plugin to surface the native share sheet on both iOS and Android. The feature must integrate with the Member System API Gateway so that successful sign-ups are reflected in Cornerstone or Consio as appropriate, avoiding duplicate member creation. Deep-link handling must work correctly from both cold-start and warm-start app states, and the referral attribution window should be configurable (default 30 days) to accommodate delayed sign-up completions.
Dependencies
Definition of Done
Components (5)
User Stories (5)
As a As a Peer Mentor (Likeperson)
I want I want to see a list of people who have signed up through my referral link and their current membership status
So that So that I can follow up with people who clicked but have not yet completed registration, and feel recognised for my recruitment contributions
- Given the peer mentor has referral events recorded, when they view the recruitment screen, then each referral appears as a list item with a status indicator (pending, registered, active)
- Given a referral is in 'pending' state and the attribution window has not expired, when the referred person completes registration, then the status updates to 'registered' on the peer mentor's screen
- Given a referral event is older than the configured attribution window (default 30 days) and the person has not registered, when the screen loads, then the referral is shown as expired or removed from the active list
- +2 more
As a As a Peer Mentor (Likeperson)
I want I want my successful referrals to be recognised as achievements within the app
So that So that my recruitment efforts are acknowledged alongside my other volunteer contributions, giving me an additional reason to continue recruiting
- Given a referred user completes registration and is confirmed as a new member, when the Recruitment Service processes the confirmation, then the peer mentor's recruitment_count in member_recruitments is incremented by 1
- Given the recruitment count reaches a milestone threshold (e.g. 1, 5, 10 successful referrals), when the Achievement Service checks for new badges, then the appropriate recruitment badge is awarded to the peer mentor
- Given a badge is awarded for recruitment, when the peer mentor opens the Achievements screen, then the badge is visible with a label indicating it was earned through member recruitment
- +1 more
As a As a Peer Mentor (Likeperson)
I want I want to open the recruitment screen and see an overview of my referral activity
So that So that I can understand my contribution to growing my local chapter and stay motivated to recruit new members
- Given the peer mentor is authenticated and navigates to the recruitment section, when the screen loads, then the recruitment overview screen is displayed with their referral statistics
- Given the peer mentor has no referrals yet, when the recruitment screen loads, then a referral count of 0 is shown with an encouraging call-to-action to share their link
- Given the peer mentor has existing referrals, when the recruitment screen loads, then each referred person's sign-up status is listed (pending within attribution window, registered, active member)
- +1 more
As a As a Peer Mentor (Likeperson)
I want I want to share my referral link through any channel on my device using the native share sheet
So that So that I can reach potential new members through whichever communication channel they prefer — SMS, WhatsApp, email, or social media — without friction
- Given the peer mentor is on the recruitment screen with their referral link visible, when they tap the share button, then the native platform share sheet appears (iOS share sheet on iPhone, Android share sheet on Android)
- Given the native share sheet is open, when the peer mentor selects a channel (e.g. WhatsApp, SMS, email), then the referral link is pre-populated in the message field
- Given the peer mentor completes a share action, when they return to the recruitment screen, then the share was treated as a non-blocking action and the screen is still intact
- +1 more
As a As a Peer Mentor (Likeperson)
I want I want to generate a unique referral link tied to my profile and local association
So that So that any new member who registers through my link is correctly attributed to me and pre-enrolled in my local association
- Given the peer mentor opens the recruitment screen, when the referral link widget loads, then a unique short URL is displayed that encodes their user ID and organisation slug
- Given the peer mentor's referral link has been generated, when they close and reopen the app, then the same link is shown (links are persistent, not regenerated each session)
- Given the peer mentor's link is generated, when a new user navigates to the link, then the Referral Edge Function resolves it and the registration flow is pre-filled with the referring local association
- +1 more