public IActionResult Get([FromQuery] StripePaymentResponse request)
        {
            var    source = new StripeSourceService(stripeSettings.StripePrivateKey).Get(request.source);
            string status = null;

            if (source.Status != "chargeable")
            {
                // remove custom;
                //var customer = new StripeSourceService(stripeSettings.StripePrivateKey).Delete(request.source);
                status = source.Status;
            }
            else
            {
                var charge = new StripeChargeService(stripeSettings.StripePrivateKey).Create(
                    new StripeChargeCreateOptions
                {
                    Amount     = request.amount,
                    Currency   = request.currency,
                    CustomerId = request.customerid,
                    SourceTokenOrExistingSourceId = request.source
                });
                status = charge.Status;
            }
            //return Json(status);
            return(Redirect($"{request.returnUrl.Replace("_qm_", "?").Replace("_amp_", "&")}{(request.returnUrl.Contains("_qm_") ? "&" : "?")}status={status}"));
        }
        public IActionResult Get([FromQuery] StripePaymentResponse request)
        {
            var charge = new StripeChargeService(paymentSettings.StripePrivateKey).Create(
                new StripeChargeCreateOptions
            {
                Amount     = request.amount,
                Currency   = request.currency,
                CustomerId = request.customerid,
                SourceTokenOrExistingSourceId = request.source
            });

            return(Redirect(request.returnUrl.Replace("_qm_", "?").Replace("_amp_", "&")));// todo: rework this hotfix
        }