Referral Program
The referral program turns your customers into advocates by rewarding them for bringing new riders. Both referrers and new customers receive rewards when referrals are successful.
Navigation
Access Referral Settings from Dashboard > Loyalty > Referrals tab.
How Referrals Work
The Referral Flow
- Share — Every rider has a unique auto-generated referral code in their app
- Sign Up — A new rider creates an account and enters the code
- Qualify — The new rider completes their first ride; the referral flips from
pendingtoqualified - Reward — Both the referrer and the new rider receive wallet credit, and the referral is marked
rewarded
Rewards are paid as wallet credit in cents (not points, not free rides, not discount codes). Wallet credit applies to the rider's next ride automatically.
Referral Codes
Each rider's referral code is:
- Auto-generated when their customer record is created — there is no UI for custom codes
- Unique across all riders (database-enforced)
- Shareable from the Referrals screen in the mobile app (copy, share sheet, etc.)
- Stored on the new rider's customer record as
referred_by, so attribution is permanent
Configuring the Program
There is no separate "enable referrals" toggle. The referral system is active as soon as you have at least one referral tier defined. If you have no tiers, no referrals will pay out.
Referral Tiers (Dott Surfers model)
Referral rewards are configured as tiers based on lifetime referral count. As a rider racks up successful referrals, they move up tiers and their payouts get richer. Configure these in Loyalty → Referrals.
| Field | Description |
|---|---|
| Name | Tier display name (e.g. "Surfer", "Big Wave", "Legend") |
| Description | Optional rider-facing summary |
| Min referrals | Lifetime successful referrals required to reach this tier |
| Referrer reward (cents) | Wallet credit the referrer earns per successful referral at this tier |
| Referee reward (cents) | Wallet credit the new rider earns when they qualify |
| Milestone bonus (cents) | Extra one-time wallet credit paid when the referrer first reaches this tier |
| Badge color | Hex color for the tier badge in the rider app |
The base tier (min referrals = 0) is what every new rider starts on.
Example Tier Structure
| Tier | Min referrals | Referrer reward | Referee reward | Milestone bonus |
|---|---|---|---|---|
| Surfer | 0 | $5.00 | $5.00 | — |
| Big Wave | 5 | $7.50 | $5.00 | $10.00 |
| Legend | 20 | $10.00 | $5.00 | $25.00 |
A rider with 0 referrals who brings in their first new rider earns $5. Once they hit 5 lifetime referrals, they jump to Big Wave: they get a one-time $10 bonus on promotion, and from then on every referral pays them $7.50 instead of $5.
Qualifying Action
The qualifying action is fixed: the new rider's first completed ride. There is no picker for sign-up-only or spend-threshold qualification — this is intentional, because first-ride qualification balances reward velocity against fraud prevention.
Customer Experience
Finding Referral Code
Customers access their code:
- Open app
- Go to Profile/Loyalty
- Tap "Refer Friends"
- See unique code
Sharing Options
Built-in sharing methods:
- Copy code to clipboard
- Share via SMS
- Share via email
- Share to social media
- QR code (optional)
Using a Referral Code
New customers enter code:
- Download app
- Create account
- Enter referral code
- Code is stored
- Reward triggered after qualifying action
Tracking Referrals
Referral Dashboard
View program performance:
- Total referrals
- Successful conversions
- Pending referrals
- Rewards issued
Per-Customer Tracking
For each customer, see:
- Referral code
- Referrals made
- Successful conversions
- Total rewards earned
Referral Status
Each referral row has one of these statuses:
| Status | Meaning |
|---|---|
| pending | New rider signed up with a code but hasn't completed their first ride yet |
| qualified | New rider completed their first ride; rewards have been calculated |
| rewarded | Wallet credits have been paid to both parties |
| expired | Referral aged out without ever qualifying |
| cancelled | Referral was manually invalidated (fraud, account issue, etc.) |
Referral Analytics
Key Metrics
| Metric | Description |
|---|---|
| Conversion Rate | Sign-ups / code shares |
| Completion Rate | First rides / sign-ups |
| Cost Per Acquisition | Reward cost / new customer |
| Viral Coefficient | Referrals per customer |
Top Referrers
Identify your best advocates:
- Leaderboard of top referrers
- Reward top performers
- Feature in promotions
- Build ambassador program
Referral Trends
Track over time:
- Daily/weekly/monthly referrals
- Seasonal patterns
- Campaign effectiveness
- Channel performance
Fraud Prevention
What's enforced automatically
- First-ride qualification — referrals only pay out after the new rider completes a ride, not on signup
- One referral per new rider —
referrals.referee_idis unique, so the same new rider can't be referred twice - Verified payment method — the new rider needs a working payment method to start their first ride at all, which gates most signup-only fraud
What's not automated
Velocity limits (max referrals per day / per month / per device) aren't built in. If you see a rider racking up suspicious volume, set their referral to cancelled directly and reach out to the support team to investigate the pattern.
Promotional Campaigns
Boosted Referrals
Run limited-time referral promotions:
- Double referral rewards
- Bonus for X referrals
- Holiday specials
Referral Contests
Gamify referrals:
- Monthly top referrer prize
- Milestone rewards (10, 25, 50 referrals)
- Team challenges
Partner Referrals
Special codes for partners:
- Business partnerships
- Influencer codes
- Event promotions
Communication
For Referrers
Keep them motivated:
- Remind of referral code
- Notify on successful referral
- Show earnings
- Suggest sharing
For Referees
Welcome new customers:
- Explain reward earned
- Show how to unlock
- Guide first ride
- Introduce loyalty program
Notifications
| Event | Referrer | Referee |
|---|---|---|
| Sign up | "Friend signed up!" | "Welcome! Reward pending" |
| First ride | "Reward earned!" | "Reward unlocked!" |
| Reward issued | "$5 added to wallet" | "$3 added to wallet" |
Best Practices
Reward Balance
- Make rewards meaningful but sustainable
- Referee reward should encourage first ride
- Referrer reward should motivate sharing
- Track cost per acquisition
Easy Sharing
- One-tap sharing
- Pre-written messages
- Multiple channels
- QR codes for in-person
Clear Terms
- Explain when rewards apply
- Be transparent about limits
- Clear expiration if applicable
- Easy to understand
Fraud vs. Friction
Balance security with ease:
- Don't over-verify legitimate users
- Focus on highest-risk patterns
- Allow manual review/override
- Monitor, don't over-restrict
Troubleshooting
Referral Code Not Working
- Confirm the code matches a real
customers.referral_codevalue (case-insensitive) - Confirm the new rider applied it before their first ride completed — codes can't be retro-applied after a ride is over
- If the new rider already has a
referred_byvalue set, they were already attributed to someone else and can't be re-referred
Missing Rewards
- Check the referral row's status. If it's still
pending, the new rider hasn't completed their first ride yet - If status is
qualifiedbut no wallet credit appeared, check the rider's wallet transactions — the credit will be there as a referral payout - If a referral is
cancelled, no payout was made - If everything looks correct but the rider is missing wallet credit, use a manual wallet adjustment with a clear reason (referrals are not "redone" automatically)
Duplicate Referrals
The unique constraint on referee_id prevents the same new rider from being referred twice. If you see two referral rows for the same new rider, something is off — flag it to support to investigate.
Need Help?
For referral program assistance, contact support@levyelectric.com.