Честно говоря, конечно, создание контракта под каждого юзера - это просто замусоривание блокчейна
так он вычищается все равно (в стейте не сохраняется). Но идея прикольная.
Хотя я бы как раз оставлял задеплоиным контракт. т.е. да, для пользователя, который может и не пополнить счет, создавать контракт не очень.
А для тех, кто уже пополнил - залить контракт, который в дальнейшем будет сразу отправлять депозит на hotwallet - классная идея (особенно тем, что комса за такой депозит ляжет на плечи пользователя).