Exemple #1
0
        public static viafront3.Models.ApiViewModels.ApiFiatPayoutRequest GetFiatPayoutRequest(FiatProcessorSettings fiatSettings, string token)
        {
            var jsonBody = JsonConvert.SerializeObject(new { api_key = fiatSettings.FiatServerApiKey, token = token });
            var response = RestUtils.ServiceRequest(fiatSettings.FiatServerUrl, "payout_status", fiatSettings.FiatServerSecret, jsonBody);

            if (response.IsSuccessful)
            {
                var json = JsonConvert.DeserializeObject <Dictionary <string, string> >(response.Content);
                if (json.ContainsKey("status"))
                {
                    var status = json["status"];
                    var asset  = json["asset"];
                    var amount = json["amount"];
                    // return to user
                    var model = new viafront3.Models.ApiViewModels.ApiFiatPayoutRequest
                    {
                        Token  = token,
                        Status = status,
                        Asset  = asset,
                        Amount = decimal.Parse(amount),
                    };
                    return(model);
                }
            }
            return(null);
        }
Exemple #2
0
        public static viafront3.Models.ApiViewModels.ApiFiatPayoutRequest CreateFiatPayoutRequest(ILogger logger, ExchangeSettings settings, FiatProcessorSettings fiatSettings, string token, string asset, decimal amount, string account_number, string email)
        {
            var cents    = amount * Utils.IntPow(10, settings.Assets[asset].Decimals);
            var centsInt = Convert.ToInt64(cents);

            // call payment server to create request
            var jsonBody = JsonConvert.SerializeObject(new { api_key = fiatSettings.FiatServerApiKey, token = token, asset = asset, amount = centsInt, account_number = account_number, account_name = email, reference = fiatSettings.PayoutsReference, code = token });
            var response = ServiceRequest(fiatSettings.FiatServerUrl, "payout_create", fiatSettings.FiatServerSecret, jsonBody);

            if (response.IsSuccessful)
            {
                var json = JsonConvert.DeserializeObject <Dictionary <string, string> >(response.Content);
                if (json.ContainsKey("status"))
                {
                    var status = json["status"];
                    // return to user
                    var model = new viafront3.Models.ApiViewModels.ApiFiatPayoutRequest
                    {
                        Token  = token,
                        Status = status,
                        Asset  = asset,
                        Amount = amount,
                    };
                    return(model);
                }
            }
            else
            {
                logger.LogError($"fiat payment request ({fiatSettings.FiatServerUrl}) failed with http statuscode: {response.StatusCode}");
            }
            return(null);
        }