繁体   English   中英

ASP MVC PayPal交易

[英]Asp MVC PayPal Transaction

我试图做一个贝宝处理程序。 您在输入中输入金额,然后按“捐赠”按钮,您将被转发到贝宝页面,您可以登录,然后按“继续”按钮...按“继续”按钮后的问题将其转发回https ://www.example.org/Account/PayPalHandler/页面,仅此而已。 完成我的贝宝交易的代码中缺少什么?

[HttpPost]
        public ActionResult DoPaymentPaypall(UserModel User_)
        {
            ResultModel<ManageAccountListModel> res_ = new ResultModel<ManageAccountListModel>();
            res_.DataSelect = new ManageAccountListModel();

            if (SessionManagement.LoginnedUser != null)
            {
                var config = ConfigManager.Instance.GetProperties();
                var accessToken = new OAuthTokenCredential(config).GetAccessToken();
                var apiContext = new APIContext(accessToken);
                string moneyCount_ = User_.moneycount.ToString();
                var payment = Payment.Create(apiContext, new Payment
                {
                    intent = "sale",
                    payer = new Payer
                    {
                        payment_method = "paypal"
                    },
                    transactions = new List<Transaction>
                                    {
                                        new Transaction
                                        {
                                            description = "Donation",
                                            invoice_number = "001",
                                            amount = new Amount
                                            {
                                                currency = "USD",
                                                total = moneyCount_,
                                                details = new Details
                                                {
                                                    tax = "0",
                                                    shipping = "0",
                                                    subtotal = moneyCount_
                                                }
                                            },
                                            item_list = new ItemList
                                            {
                                                items = new List<Item>
                                                {
                                                    new Item
                                                    {
                                                        name = "Donation",
                                                        currency = "USD",
                                                        price = moneyCount_,
                                                        quantity = "1",
                                                        sku = "Custom Package"
                                                    }
                                                }
                                            }
                                        }
                                    },
                    redirect_urls = new RedirectUrls
                    {
                        return_url = "https://www.example.org/Account/PayPalHandler/",
                        cancel_url = "https://www.example.org/"
                    }
                });

                res_.SuccessMessage = payment.links.ToList()[1].href;

            }
            res_.Success = true;
            return new JsonResult { Data = res_, JsonRequestBehavior = JsonRequestBehavior.AllowGet };
        }

上面的代码似乎仅显示流程的开始/开始...因此, 假设您的意思是用户批准您使用Paypal进行付款的请求 之后 (不要将其误认为是“付款”-此步骤仅表示用户同意使用Paypal付款),则需要Execute付款

链接显示完整流程

  • Create付款(这是您上面的代码所映射的内容)-在此步骤中,您将获得payment id
  • 使用您收到的id将用户重定向到Paypal approval_url网址(在上面Create中的详细信息)以进行批准
  • 贝宝将用户返回到您的网站,并提供有关如何Execute付款的信息(如果用户批准)
  • Execute付款(在您的网站/应用上完成)

高度

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM