我使用c#sdk直接付款给paypal。
一切都很好,但是我没有得到transactionId,因为sdk"付款" object没有transactionId也没有http响应。
代码非常简单。
Payment pymnt = new Payment();
pymnt.intent = "sale";
pymnt.payer = payr;
pymnt.transactions = transactions;
Payment createdPayment = pymnt.Create(apiContext);
Pymnt创建方法,创建并执行付款,并通过从json转换属性来检索属性。
我正在收回payid。我检查了文档,但无法找到有关如何通过payid获取transactionId的信息。
使用paypal标准创建的应用程序的另一部分通过" txn_id"获取paypal交易ID。在IPN方法中查询参数并将其保存在数据库中。
因此,我们需要将数据库中的transactionid保存为一致。
请帮忙。
答案 0 :(得分:3)
(在GitHub上提出了类似的问题。)
付款的交易ID可以通过与付款相关联的每个related_resources
的transaction
属性找到。
例如,如果您进行销售付款,则可以通过以下方式检索交易ID:
var payment = Payment.Get(apiContext, "PAY-89W644977H834061FKTDRCCY");
var transactionId = payment.transactions[0].related_resources[0].sale.id;