【发布时间】:2017-10-20 19:02:21
【问题描述】:
在我的商店中,我需要能够取消客户的订单并将他们支付的总金额退还给他们。
在 PayPal 结账时,客户会看到他们的商品成本和运费,然后是总成本。当我尝试通过 NVP API 发出全额退款时,它只会退还商品的金额,不包括他们支付的运费。
有没有办法确定是否退还绝对总金额?
最初我只通过了 PayPal 交易 ID,因为它默认自动全额退款,
'TRANSACTIONID' => $paypalTransactionId
但我在从 API 传回的数据中收到以下内容。
["TOTALREFUNDEDAMOUNT"]=> string(5) "64.40"
总金额应该是 69.40。 (产品为 64.00,运费为 5.00)。
我自己尝试过通过总金额 (AMT),但 API 抱怨退款需要小于或等于产品的成本。
'TRANSACTIONID' => $paypalTransactionId,
'AMT' => $totalPrice,
'REFUNDTYPE' => 'Full'
并且还尝试过传递运费
'TRANSACTIONID' => $paypalTransactionId,
'SHIPPINGAMT' => $shipping_price,
'REFUNDTYPE' => 'Full'
两者都不做。
解决此问题的一种可能方法是在客户结账时不通过 Paypal 转嫁任何运费,而只是将其混入产品成本中。但这不会是最佳的客户体验,而且感觉有点老套。
【问题讨论】:
标签: php paypal paypal-sandbox paypal-nvp