An invite code referral system for Flarum 2.0. Each member gets a unique personal invite code they can share with others. New users enter the code during registration to be credited to the referrer. Admins can optionally require a code to register at all.
- Members get a unique 8-character invite code, with admin-configurable eligibility rules (allowed groups, minimum posts, account age, whitelist)
- Share the code itself, a referral link that pre-fills it, or a QR code shown on screen and downloadable as a print-ready PNG
- New users enter the code during sign-up, or arrive with it pre-filled via the link or QR code
- Referral count badge appears on the member's profile nav tab and profile card
- Referrer receives a notification (alert and optional email) when someone registers with their code
- Admin campaign codes: standalone invite codes with labels, expiry dates, and use counts, each with its own QR code
- Admin setting to require an invite code for all new registrations
- Fully translatable via locale files
Referrals profile tab: shows the member's invite code and total referral count.

Sign-up modal: includes an optional (or required) Invite Code field.

Admin settings: toggle to require an invite code to register.

- Flarum 2.0 or later
- PHP 8.3 or later
Install via Composer:
composer require linkrobins/referral
Then run migrations and clear the cache:
php flarum migrate
php flarum cache:clear
Enable the extension in the Flarum admin panel under Extensions.
- Go to your profile and click the Referrals tab
- Your personal invite code is displayed, with buttons to copy it, copy a referral link, or show a QR code (with a PNG download for print)
- When someone registers using your code, you receive a notification and your referral count increases
- Click Sign Up
- Fill in your username, email, and password as normal
- Enter the invite code you received in the Invite Code field
- Complete registration
- Go to Admin → Extensions → Link Robins Referral
- Toggle Require invite code to register to enforce invite-only registration
- When enabled, no one can register without a valid invite code
The extension ships with English (locale/en.yml). To add a translation:
-
Create a new file in the
locale/directory named after the ISO 639-1 language code, e.g.:ko.yml: Koreanzh.yml: Simplified Chinesees.yml: Spanish
-
Copy the contents of
en.ymland translate the values -
No code changes needed; Flarum picks up locale files automatically
linkrobins-referral:
forum:
profile:
tab: Referencias
invite_code_title: Tu Código de Invitación
invite_code_help: Comparte este código con quien quieras invitar.
copy: Copiar
total_referrals: Total de Referencias
no_referrals: "¡Aún no hay referencias. Comparte tu código para empezar!"
sign_up:
invite_code_label: Código de invitación
invite_code_label_required: "Código de invitación *"
invite_code_placeholder: ej. K7XM2QNP
notifications:
registered_text: "{name} se registró usando tu código de invitación"
admin:
settings:
require_label: Requerir código de invitación para registrarse
require_help: Cuando está activado, los usuarios deben ingresar un código válido.
enabled: Activado
disabled: Desactivado
validation:
required: Se requiere un código de invitación para registrarse.
invalid: Código de invitación inválido.The extension creates two tables:
referral_invite_codes— stores each member's unique invite code and use countreferral_invited_user— records which user referred which
These are created automatically when the extension is enabled. They are safely removed when the extension is uninstalled.
MIT License. See LICENSE for details.