Реферальная схема БД

Я кодирую новый {ежемесячный | годовой} платный сайт с теперь типичной "реферальной" системой: когда новый пользователь регистрируется, они могут указать {username| реферальный код} другого пользователя (это может быть обнаружено автоматически, если они через специальный URL-адрес), что заставит реферера получать процент от всего, что платит новый пользователь.

Прежде чем изобретать велосипед, я хотел бы знать, есть ли у кого-нибудь из вас опыт хранения данных такого рода в реляционной БД. В настоящее время я использую MySQL, но я считаю, что любое хорошее решение должно быть легко адаптировано к любой СУБД, верно?

Я рассчитываю на поддержку следующих функций:

  • Система онлайн-биллинга - после оплаты каждого счета подсчитывается заработок для рефералов, и они смогут выводить деньги. Это включает, конечно, возможность просматривать счета / платежи онлайн.

  • Платные варианты различаются - они различаются по своему характеру и стоимости (которые иногда изменятся), поэтому комиссионные должны рассчитываться на основе каждого окончательного счета.

  • Отслеживание рефералов (отношения между пользователями, дата, на которую они были переданы, и любая другая полезная информация - есть идеи?)

  • Простой способ получить доступ к историческим ссылочным данным (сколько было выплачено) или накопленным комиссиям.

  • В будущем я мог бы предложить обменять накопленные денежные средства на продление подписки (покрывая всю новую подписку или только ее часть, при необходимости оплачивая разницу)

  • Несколько уровней - я думаю заплатить около 10% от прямой рекомендованной прибыли + 2% на следующем уровне, но это может измениться в будущем (добавить больше уровней, изменить проценты), поэтому я должен иметь возможность хранить исторические данные.

Обратите внимание, что я не планирую использовать это в любом другом проекте, поэтому я не беспокоюсь о том, что он будет "включай и работай".

Работали ли вы с подобными требованиями? Если так, как вы справились со всем этим? Вы бы порекомендовали какую-либо конкретную схему БД? Зачем?

Есть ли что-то, что я пропускаю, что помогло бы сделать это более гибкой реализацией?

1 ответ

Скорее всего, есть библиотека схем баз данных. Хотя я не вижу что-то конкретное для рефералов, может быть что-то связанное. По крайней мере (надеюсь) вы сможете получить некоторые идеи.

Другие вопросы по тегам