【发布时间】:2015-09-23 12:22:25
【问题描述】:
我已经使用 RefundTransaction 方法很长时间了。我已经使用端点成功申请了部分和全额退款:https://developer.paypal.com/docs/classic/api/merchant/RefundTransaction_API_Operation_NVP/
当我上周添加 INVOICE 参数以设置退款数据的唯一信息时,响应开始失败。
$refundArr = array(
'TRANSACTIONID' => $transactionId,
'REFUNDTYPE' => 'Partial',
'AMT' => $refundAmount,
'CURRENCYCODE' => $refundCurrency,
'INVOICEID' => $orderId
);
示例响应是:
{"TIMESTAMP":"2015-07-06T08:11:52Z","CORRELATIONID":"****4dee2****","ACK":"Failure","VERSION":"106.0 ","BUILD":"********","L_ERRORCODE0":"10001","L_SHORTMESSAGE0":"内部 错误","L_LONGMESSAGE0":"交易无法进行 已加载","L_SEVERITYCODE0":"Error","REFUNDSTATUS":"None","PENDINGREASON":"None"}
所以我认为 INVOICEID 作为一个条件参数来查找原始结帐交易。你能给我关于这个问题的详细信息吗?
最好的问候
【问题讨论】:
-
这听起来像是 PayPal 可以帮助您理解的东西?根据他们的文档,InvoiceId 是可选的,并且仅针对您,但我怀疑如果您想将其用于退款,他们需要原始交易中的 invoiceId。该错误表明 PayPal 无法找到您的交易,可能与使用 invoiceId 搜索有关。
-
您想通过添加发票 ID 来完成什么?提供它是为了支持非参考退款(与付款人 ID 一致)。如果您已经有交易 ID,那么您不需要(也不应该)提供原始交易的订单 ID 以进行查找,并且我认为不支持在退款中添加新的/唯一的订单 ID。
-
我需要匹配从贝宝获取的数据。所以我想简单地添加一个独特的参数。由于贝宝文档,它适合使用可选的 invoiceid 参数。但实际上我遇到了问题。所以我以另一种方式做到了。我已使用返回的交易 ID paypal 进行匹配。
标签: paypal