You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法从PayPal ExpressCheckout接口返回结果中获取交易ID用于退款

你当前调用的getExpressCheckoutDetails接口返回结果中不包含退款所需的交易ID,原因是该接口仅用于获取买家的授权信息,此时支付流程还未最终完成,返回结果里的CHECKOUTSTATUS字段值为PaymentActionNotInitiated也验证了这一点。

获取交易ID的正确流程

  • 拿到getExpressCheckoutDetails返回的PAYERID和已有TOKEN后,需要先调用doExpressCheckoutPayment接口完成最终的支付确认
  • doExpressCheckoutPayment接口的成功返回结果中会包含PAYMENTINFO_0_TRANSACTIONID字段,该值就是可用于退款的交易ID

参考代码示例:

// 完成支付确认
$paymentParams = [
    'token' => $request->token,
    'PayerID' => $response['PAYERID'],
    'amount' => 24.99,
    'currency' => 'USD'
];
$paymentResponse = $provider->doExpressCheckoutPayment($paymentParams);

// 提取交易ID
$transactionId = $paymentResponse['PAYMENTINFO_0_TRANSACTIONID'];

// 执行退款
$refundResponse = $provider->refundTransaction($transactionId);

如果该笔交易已经完成支付但你没有留存交易ID,可以通过返回结果里的订单号INVNUM(当前值为61)在PayPal商户后台查询对应交易ID,也可以调用PayPal交易搜索接口按订单号检索获取。

内容的提问来源于stack exchange,提问作者Gurpal singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 09:54:03