Share a code
Referral links use a code owned by a wallet. The public routes can place that code into the join flow, but a stored URL value alone is not the fee-earning record.The referred wallet must consent
The app requests a short-lived challenge for the wallet, code, and chain. The wallet signs the exact message, then the app submits the signature to the accept endpoint. The API rejects self-referral, an invalid or expired challenge, and wallets that are already bound. The accepted binding is permanent. A later URL cannot silently replace it.Two records, two purposes
An on-chain event does not create the signed binding. A browser’s local storage does not prove either record.
Accounting states
Referral dashboards can expose pending, uncertain, finalized, accrued, claimable, reserved, and paid values. They are not the same balance. Wait for finality and preserve the quote asset before displaying a cash amount.View referrals
The product page shows the connected wallet’s referrals:/ink/referrals/<wallet-address> page. To read a specific wallet from your own backend, use the address-specific dashboard and activity API routes below.
API
Use the Referral APIs for:- Global code challenge, creation, ownership, and lookup.
- Ink and Robinhood binding challenge and acceptance.
- Wallet dashboard and activity.
- Ink eligibility checks.