public static Result <ChangeBalanceCmd> Create(int userId, decimal amount)
 {
     return(ParametersValidation.Validate(
                ParametersValidation.Ensure(() => userId > 0, "Invalid user"),
                ParametersValidation.NotDefaultValue(amount, nameof(amount))
                )
            .Combine()
            .Map(() => new ChangeBalanceCmd(userId, amount)));
 }