public async Task <ActionResult> Subscribe(decimal amount)
        {
            var id                 = (int)Session["providerId"];
            var callbackurl        = Request.Url.ToString();;
            var price              = (int)amount * 100;
            var useremail          = User.Identity.GetUserName();
            var connectionInstance = new PaystackTransaction(ConfigurationManager.AppSettings["Credential"]);
            var response           = await connectionInstance.InitializeTransaction(useremail, price, callbackUrl : callbackurl);

            try
            {
                if (response.status)
                {
                    Reference = response.data.reference;
                    Response.AddHeader("Access-Control-Allow-Origin", "*");
                    Response.AppendHeader("Access-Control-Allow-Origin", "*");
                    Response.Redirect(response.data.authorization_url); //Redirects your browser to the secure URL
                }

                string reference = Reference;

                string secretKey = ConfigurationManager.AppSettings["Credential"];
                var    paystackTransactionApi = new PaystackTransaction(secretKey);
                var    response1 = await paystackTransactionApi.VerifyTransaction(reference);

                if (response1.status && response1.data.status.Equals("success"))
                {
                    var userid   = User.Identity.GetUserId();
                    var username = User.Identity.GetUserName();
                    var sub      = BusinessLogic.ActivateSubscribed(amount, "success", userid, username);
                    _subscribed.Add(sub);

                    if (_subscribed.comit())
                    {
                        TempData["subscribe"] =
                            $"subscription successful {sub.SubscribedMonth} months, amount {sub.AmountSubscribed} ,expiries{sub.SubscribtionExpiryDate}";
                        return(RedirectToAction("SiteDetails", "Loan", new { id = id }));
//          return RedirectToAction("MyNextAction",
//            new { r = Request.Url.ToString() });
//          return Redirect(ReturnUrl);
                    }
                }
            }
            catch (Exception e)
            {
                Console.Write(e.InnerException.ToString() ?? e.Message);
            }

            return(RedirectToAction("Failed", "Subscribed"));
        }