Согласно SOLID Principal, на каждый класс / функцию / метод должна быть возложена только одна ответственность, поэтому я предлагаю более позднюю опцию: клиент должен вызвать метод для проверки пользователя и в случае успеха вызвать метод createWallet ().Также это будет полезно, если пользователь не авторизован, тогда клиент может сообщить какое-то сообщение.