example.com?ref=123 где - 123 это ID пользователя в бд
когда я например новый пользователь перейду по этой ссылке на какой-то сайт, фронт у сайта должен этот параметр куда-то себе сохранить на фронте в куки или localstorage, и когда я впервые зарегаюсь на этом сайт - то фронт должен этот ID который сохранял где-то, отправить на сервер в запросе регистрации и после успешного запроса - убрать параметр с фронта, а в базе сохранить что я вася пупкин, и я являюсь рефералом человека чей ID - 123
а все следующие запросы - которые связаны с реферальной системой - пляшут от этого реферального ID в таблице в бд
а на счет того как скрыть параметры в ссылке - вроде как через мета теги