首页 > 解决方案 > Paypal .Net SDK 实施

问题描述

尊敬的 StackOverflow 社区,我们已经开始在我们的项目中实现 PayPal .Net SDK。

我们使用以下代码创建付款:

 var payment = Payment.Create(GetDefaultApiContext(), new Payment
        {
            intent = "sale",
            payer = new Payer
            {
                payment_method = "paypal"
            },
            transactions = new List<Transaction>
            {
                new Transaction
                {
                    description = "Test",
                    invoice_number = "009",
                    amount = new Amount
                    {
                        currency = "EUR",
                        total = "41.00",
                        details = new Details
                        {
                            tax = "0",
                            shipping = "0",
                            subtotal = "40",
                            handling_fee = "1"
                            
                        }
                    },
                    item_list = new ItemList
                    {
                        items = new List<Item>
                        {
                            new Item
                            {
                                name = "Room 12",
                                currency = "EUR",
                                price = "10",
                                quantity = "4",
                            }
                        }
                    }
                }
            },
            redirect_urls = new RedirectUrls
            {
                return_url = "https://google.de/",
                cancel_url = "https://google.de/"
            }
        });

付款也被创建并生成相应的链接。如果我们现在用我们的测试账户付款,这笔钱没有被借记,也没有任何事情发生,转发也能正常工作。但是,不会向 PayPal 报告任何交易。

如果有人可以帮助我们解决这个问题,那就太好了。

谢谢!

标签: c#.netpaypalpaypal-sandboxpaypal-rest-sdk

解决方案


在重定向回return_url您提供的页面后,您应该会显示一个订单审核页面,然后当用户确认订单时,您必须执行付款执行 API 调用,这将导致 PayPal 交易。如果您不执行 Execute API 调用,则不会有事务。

不用担心从付款人账户中扣款,因为付款人账户在沙盒中有无限资金的资金来源。


另请注意,您使用的 v1/payments SDK 已弃用,您应该升级到当前的 v2/checkout/orders Checkout-NET-SDK 并使用它在您的服务器上创建两条路由,一条用于“创建交易”,一条用于'捕获交易',记录在这里

与您的两条新路线配对的最佳批准流程是https://developer.paypal.com/demo/checkout/#/pattern/server


推荐阅读