Как реализовать виртуальную валюту на сайте?
можно примитивно - у пользователя есть "кошелек" где количество денег изменяется в зависимости от операции
можно нормально - по аналогии с бухучетом
Заводишь счета "кошелек", "поступило, "покупки"
и дополнительно например: "заблокировано", "выведено" , "партнерка"
каждая операция изменяет 2 счета например 
поступление пишется + в кошелек + в поступило
покупка - в кошелек и + в покупки
общий баланс =0
кошелек + покупки = поступило
или
кошелек  + покупки + выведено + заблокировано = поступило + партнерка
Каким образом организовать баланс средств в личном кабинете?