这个问题已经被问了几次,但我仍然没有弄清楚如何在.NET SDK上工作 https://github.com/paypal/PayPal-NET-SDK:
通话后
payment.Create(apiContext)
我成功地通过填充的创建时间,PayID,链接等得到回复。
现在,当我使用买家/卖家测试帐户登录PayPal沙盒时。我无法看到交易
这个流行的问题指向致电DoExpressCheckoutPayment
来解决此问题。在对如何使用 .NET SDK 调用DoExpressCheckoutPayment
进行了一些研究之后,我发现的唯一方法是使用标记为已弃用的以前版本的 SDK (https://github.com/paypal/merchant-sdk-dotnet)
我有点迷茫地试图找出一些不应该那么困难的事情我在这里遵循了示例,我相信它应该无需任何其他东西即可工作
您所指的 SDK 适用于(相对)新的 REST API。
假设您指的是paypal
付款(不是credit_card
),因此您必须execute
它 - 我会将其映射到经典 API 中的DoExpressCheckoutPayment
SDK 有一个示例: 其中 在引用的示例中,你将在第 155 行看到PaymentWithPayPal.aspx.cs
execute
调用
使用intent='sale'
进行credit_card
的示例(这意味着一步身份验证和捕获,或"立即捕获")位于信用卡付款中.aspx.cs
呵......
更新:
付款执行丢失
实际上,这一切都在第 146 - 155 行中:
var paymentExecution = new PaymentExecution() { payer_id = payerId };
var payment = new Payment() { id = paymentId };
// ^ Ignore workflow code segment
#region Track Workflow
this.flow.AddNewRequest("Execute PayPal payment", payment);
#endregion
// Execute the payment.
var executedPayment = payment.Execute(apiContext, paymentExecution);
呵呵。。
你是对的。paymentExecution
不见了SDK 示例不完整真是太可惜了。我会尝试联系作者,因为我不希望其他人像我一样陷入困境。
我在检查 REST API 文档后使其工作PayPal我建议浏览此文档,而不是 .NET SDK 示例