paypal - paypal自适应支付链方式如何退还部分退款

标签 paypal paypal-adaptive-payments

我正在使用 paypal 自适应支付,我需要使用 API 退款,如果是 parrralel 支付,我可以成功退款,但在链式支付中遇到问题

例如-买家/发件人在付款时共支付了 200 美元
接收者 1 = $90
接收者 2 = $90
接收者(主要)= $20

当我处理来自 API 的每个接收者的退款 0f 10 美元时,每个接收者的 API 返回状态已完成,主要接收者从次要接收者获得 10 美元和 10 美元的退款,但买家仅获得 10 美元的退款。
API代码

-H "X-PAYPAL-SECURITY-PASSWORD: api_password" 
-H "X-PAYPAL-SECURITY-SIGNATURE: api_signature" 
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV" 
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV" 
-H "X-PAYPAL-APPLICATION-ID: your_app_id "  https://svcs.sandbox.paypal.com/AdaptivePayments/Refund  -d  
"requestEnvelope.errorLanguage=en_US 
requestEnvelope.errorLanguage = en_US
payKey = AP-95V43510SV018561T0
receiverList.receiver(0).email = receiver-1@example.com
receiverList.receiver(0).amount = 10.00
receiverList.receiver(0).email = receiver-2@example.com
receiverList.receiver(0).amount = 10.00
receiverList.receiver(0).email = primary-receiver-1@example.com
receiverList.receiver(0).amount = 10.00
currencyCode = USD

API 响应:

  responseEnvelope.timestamp:2015-08-12T22%3A21%3A54.003-07%3A00
  responseEnvelope.ack:Success
  responseEnvelope.correlationId:189c035575d2d
  responseEnvelope.build:17603431
  currencyCode:USD
  refundInfoList.refundInfo(0).receiver.amount:10.00
  refundInfoList.refundInfo(0).receiver.email:reciver-1%40example.com
  refundInfoList.refundInfo(0).refundStatus:REFUNDED
  refundInfoList.refundInfo(0).refundNetAmount:9.71
  refundInfoList.refundInfo(0).refundFeeAmount:0.29
  refundInfoList.refundInfo(0).refundGrossAmount:10.00
  refundInfoList.refundInfo(0).totalOfAllRefunds:10.00
  refundInfoList.refundInfo(0).refundHasBecomeFull:false
  refundInfoList.refundInfo(0).encryptedRefundTransactionId:4R029320L1387345S
  refundInfoList.refundInfo(0).refundTransactionStatus:COMPLETED
  refundInfoList.refundInfo(1).receiver.amount:10.00
  refundInfoList.refundInfo(1).receiver.email:reciver-2%40example.com
  refundInfoList.refundInfo(1).refundStatus:REFUNDED
  refundInfoList.refundInfo(1).refundNetAmount:9.71
  refundInfoList.refundInfo(1).refundFeeAmount:0.29
  refundInfoList.refundInfo(1).refundGrossAmount:10.00
  refundInfoList.refundInfo(1).totalOfAllRefunds:10.00
  refundInfoList.refundInfo(1).refundHasBecomeFull:false
  refundInfoList.refundInfo(1).encryptedRefundTransactionId:94P25967RW2250454
  refundInfoList.refundInfo(1).refundTransactionStatus:COMPLETED
  refundInfoList.refundInfo(2).receiver.amount:10.00
  refundInfoList.refundInfo(2).receiver.email:primary-reciver%40example.com
  refundInfoList.refundInfo(2).refundStatus:REFUNDED
  refundInfoList.refundInfo(2).refundNetAmount:10.00
  refundInfoList.refundInfo(2).refundFeeAmount:0.00
  refundInfoList.refundInfo(2).refundGrossAmount:10.00
  refundInfoList.refundInfo(2).totalOfAllRefunds:10.00
  refundInfoList.refundInfo(2).refundHasBecomeFull:false
  refundInfoList.refundInfo(2).encryptedRefundTransactionId:48K03063M44155052
  refundInfoList.refundInfo(2).refundTransactionStatus:COMPLETED

在此先感谢您的帮助

最佳答案

您需要将金额指定为 20 美元用于主要:

receiverList.receiver(0).email = primary-receiver-1@example.com
receiverList.receiver(0).amount = 20.00

因此,无论您在退款 API 中与主要接收方关联的多少金额都将退还给买家。

关于paypal - paypal自适应支付链方式如何退还部分退款,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31980280/

相关文章:

php - 为什么在 paypal 集成中金额为零?

paypal - 为沙盒帐户创建立即购买按钮

paypal - 如何将多行paypal ipn变量插入mysql数据库

asp.net-mvc - MVC Paypal 自适应支付

php - 自适应支付设置选项,receiver不能为null

paypal - Moodle Paypal_enrolment 插件不适用于 Paypal 沙盒?

paypal - 在移动设备上未从 Paypal 接收自定义值

php - 如何加密 Paypal 的按钮

node.js - 通过 node.js 中的 Paypal 自适应支付 API 发送隐式支付时出错

paypal - 选择正确的 Paypal 计费选项