При регистрации юзера генеришь ему рандомную строчку и записываешь в таблицу, также тебе нужно поле рефералы и реферал босс , это по сути филды которые имеют отношение один ко многим и многие к одному к таблице юзеров. Также когда человек вводит реферальное слово либо переходит по ссылке то ты находишь по реферальному коду реферал босса и записываешь ему реферала.
LolBall, как уже было сказано выше создаёшь пользователю при регистрации его уникальный код это может быть его user_id в телеграм. Если нужно сделать рефералку по ссылке, то создаёшь deep link и делаешь проверку того что приходит вместе со /start и если при проверке с реф. кодом пользователя всё совпадает то он становится его рефералом. Если без ссылки, то сделай проверку его уникального кода и если всё совпадает пользователь будет рефералом. Deep link телеграмма - https://core.telegram.org/bots#deep-linking