Логика начисление процентов каждый день mysql php
Я не могу понять логику начисление процентов.
Есть сумма, которую например человек положил.
Каждый день ему должно зачислятся 2.5%
Например, он положил 200 рублей, ровно через день, должны прийти 5 рублей.
Я конечно может быть понимаю как это делать. Например человек хочет посмотреть сколько уже у него зачислилось, и отправляет запрос в базу данных. Перед тем как он положил сумму, записалась дата пополнения. Берем эту дату, сравниваем с текущей, и (Текущая дата - Дата пополнения = часы); Узнаю разницу в часах, и например уже 34ч, т.е уже прошло 34 часа, после пополнения, прошел уже 1 день. Узнаю день: 34 / 24 = 1,41, округляю получается 1 день, значит будет одно зачисление. Как узнать что прошел уже второй день? Не знаю честно. Может быть записывать в бд количество зачислений. И например, уже прошло 48 часов, 48 / 24 = 2. Видим в бд 1 день уже зачислен. 2 - 1 = 1, опять 1 раз зачисляем. Если там уже 96 / 24 = 4, в бд уже видим 2, а прошло уже как 4 дня. 4 - 2 = 2, значит 2 раза зачисляем ему на баланс. Или можно как то обновлять дату.
Вопросы:
- Проблема в том, если пользователь опять пополнит сумму. Как это тогда? Обновлять дату или нет?
- Как сделать так, что бы смотреть баланс не за день, а например за секунды, т.е в течение дня должно быть + 2.5%.
- Есть ли другая логика или другие способы?
Я понимаю, это сделать легко, но я думаю мне из-за своих идей нужно возится и есть какие то подводные камни. Не могли бы вы предложить свой способ?