如何使用paypal C# sdk获取直接支付方式的transactionid

Posted

技术标签:

【中文标题】如何使用paypal C# sdk获取直接支付方式的transactionid【英文标题】:How to get with paypal C# sdk, the transactionid of a directpayment method 【发布时间】:2015-03-31 16:38:52 【问题描述】:

我正在使用 c# sdk 直接向 paypal 付款。

一切都很好,但是我没有得到 transactionId,因为 sdk 的“Payment”对象没有 transactionId,http 响应也没有。

代码很简单。

Payment pymnt = new Payment();
        pymnt.intent = "sale";
        pymnt.payer = payr;
        pymnt.transactions = transactions;


Payment createdPayment = pymnt.Create(apiContext);

Pymnt Create 方法,创建并执行支付,并通过将属性从 json 转换回来。

我正在取回 payid。我检查了文档,但找不到任何关于如何通过 payid 获取 transactionId 的信息。

我的应用程序的另一部分使用 paypal 标准创建,通过 IPN 方法中的“txn_id”查询参数获取 paypal 交易 ID,并将其保存在数据库中。

因此我们需要将transactionid保存在数据库中以保持一致。

请帮忙。

【问题讨论】:

查看此链接并在链接中向下滚动到此页面底部以查看编码示例get transactionId via payid 【参考方案1】:

(在GitHub 上提出了类似的问题。)

可以通过与付款关联的每个transactionrelated_resources 属性找到付款的交易ID。

例如,如果您进行销售付款,则可以通过以下方式检索交易 ID:

var payment = Payment.Get(apiContext, "PAY-89W644977H834061FKTDRCCY");
var transactionId = payment.transactions[0].related_resources[0].sale.id;

【讨论】:

以上是关于如何使用paypal C# sdk获取直接支付方式的transactionid的主要内容,如果未能解决你的问题,请参考以下文章

沙盒模式下使用信用卡paypal SDK直接支付

paypal支付--平行支付

paypal支付--平行支付

如何使用 paypal 直接支付 NPV API c# 设置自定义定期支付服务

PayPal Plus / PHP SDK - 使用银行帐户/借记卡付款

使用 PayPal-PHP-SDK 进行第三方支付的 Paypal 沙盒测试