public IActionResult DepositFunds(decimal amount, string transactionId)
        {
            _logger.LogInformation($"Deposit/{transactionId}/{amount} was called");
            ErrorModel errorResult = new ErrorModel();

            if (amount <= 0)
            {
                errorResult.ErrorCode        = "NegativeOrZeroValue";
                errorResult.ErrorDescription = "უარყოფითი ან ნულოვანი მნიშვნელობის გადაცემა არაა დაშვებული";

                return(BadRequest(errorResult));
            }

            ErrorCode gameDecreaseBalanceResult = _gameBalanceManager.DecreaseBalance(amount, transactionId);

            try
            {
                if (gameDecreaseBalanceResult != ErrorCode.Success)
                {
                    errorResult.ErrorCode        = gameDecreaseBalanceResult.ToString();
                    errorResult.ErrorDescription = gameDecreaseBalanceResult.GetErrorDescription() + $" (GameBalance)";

                    return(BadRequest(errorResult));
                }
            }
            catch (Exception ex)
            {
                errorResult.ErrorCode        = ErrorCode.UnknownError.ToString();
                errorResult.ErrorDescription = ErrorCode.UnknownError.GetErrorDescription();
                _logger.LogError($"Error executing Deposit/{transactionId}/{amount}: {ex.Message}");
                return(BadRequest(ErrorCode.UnknownError));
            }

            ErrorCode casinoIncreaseBalanceResult = _casinoBalanceManager.IncreaseBalance(amount, transactionId);

            if (casinoIncreaseBalanceResult != ErrorCode.Success)
            {
                casinoIncreaseBalanceResult = _gameBalanceManager.Rollback(transactionId);

                if (casinoIncreaseBalanceResult == ErrorCode.Success)
                {
                    casinoIncreaseBalanceResult = ErrorCode.TransactionRollbacked;
                }
            }

            try
            {
                if (gameDecreaseBalanceResult != ErrorCode.Success)
                {
                    errorResult.ErrorCode = casinoIncreaseBalanceResult.ToString();
                    if (casinoIncreaseBalanceResult == ErrorCode.TransactionRollbacked)
                    {
                        errorResult.ErrorDescription = casinoIncreaseBalanceResult.GetErrorDescription() + $" (GameBalance)";
                    }
                    else
                    {
                        errorResult.ErrorDescription = casinoIncreaseBalanceResult.GetErrorDescription() + $" (CasinoBalance)";
                    }

                    return(BadRequest(errorResult));
                }
                else
                {
                    return(Ok());
                }
            }
            catch (Exception ex)
            {
                errorResult.ErrorCode        = ErrorCode.UnknownError.ToString();
                errorResult.ErrorDescription = ErrorCode.UnknownError.GetErrorDescription();
                _logger.LogError($"Error executing Deposit/{transactionId}/{amount}: {ex.Message}");
                return(BadRequest(ErrorCode.UnknownError));
            }
        }