Academy

Live on Testnet

Referrals

Academy referrals attribute a wallet to a referrer on a given chain, then share a fixed slice of that wallet’s task points with a two-hop chain: direct (the person you invited) and grand (people your directs invite).

UI states

  • Not authenticated — prompt to authenticate to unlock your referral link
  • Profile not ready — link appears once the Academy profile / code is ready
  • Ready — copyable link plus Direct referrals and Grand referrals counts

Your referral link

After Sign In, Academy ensures an 8-character referral code for your wallet on the active chain and builds a link of the form:

Text
https://www.aurove.xyz/academy?ref=<8-char-code>
  • Query param: ref
  • Code charset: alphanumeric plus _ / -, length 8
  • One code per user + chain; codes are unique globally

How someone becomes your referral

  1. They open your link (or any URL carrying your ref code).
  2. If they are not signed in yet, the app can store the code in a short-lived pending cookie (academy_referral, ~7 days) until they authenticate.
  3. On bind (authenticated POST /api/academy/referral), the system records a relationship: referred user → referrer for that chain.

Binding rules

  • One referrer per wallet per chain — once bound, a different code is rejected as already bound.
  • No self-referral — you cannot use your own code.
  • Chain must match — the code’s chain must match the authenticated session chain.
  • Re-binding the same referrer is idempotent (returns the existing relationship).

Direct vs grand referrals

The network is a two-hop tree built only from direct relationships:

Direct and grand referral chain
You (grand to C)
↓ invites
Alice — your direct referral
↓ Alice invites
Carol — your grand referral
MetricMeaningHow it is counted
Direct referralsWallets that bound your referral codeCount of relationships where you are the referrer_user_id on this chain
Grand referralsWallets referred by your directsCount of relationships one hop below your directs (your direct is their referrer)

How referral points are earned

Referrals do not pay a one-time signup bonus in the current system. Instead, when a referred user earns task points (for example from a qualifying swap or fee collection), the base award is split across the action user and their referral chain:

RecipientShare of base task pointsWhen paid
Action user (the person who completed the task)90%Always, for the task award
Direct referrer of that user3%Only if a direct referrer is bound
Grand referrer (referrer of the direct referrer)7%Only if a grand referrer exists on the chain

Example: Alice is bound to you, and Carol is bound to Alice. When Carol earns 100 base task points:

  • Carol receives 90 (user share)
  • Alice receives 3 (direct referral reward)
  • You receive 7 (grand referral reward)

If Carol has no grand referrer (Alice was not referred by anyone), Alice still gets 3% and Carol 90%; the 7% grand slice is simply not minted to anyone.

Where rewards show up

  • Points total / rank — include user and referral award entries for the season
  • Activity dialog (leaderboard row) — badges such as Task reward, Direct referral reward, and Grand referral reward

Ledger source types used internally: task_award_user, task_award_referral_direct, task_award_referral_grand.

Qualified referrals (epoch context)

For some epoch / leaderboard helpers, a direct referral may be treated as qualified only when the referred user also has points activity inside that epoch window. The Academy referral card counts (Direct / Grand) are total relationship counts for the chain, not limited to the current epoch.

Quick reference

  1. Connect wallet, switch network, Sign In on Academy.
  2. Copy your referral link and share it.
  3. When friends sign in via your link, your Direct count increases.
  4. When they refer others, your Grand count increases.
  5. You earn ongoing points when they complete Academy tasks (3% direct / 7% grand of their base task points).
academyreferralsdirectgrandpoints