自升级到 PayPal REST API 后,我们的快速结帐出现了问题。
当使用 Express Checkout 时,用户将首先被发送到 Paypal 站点进行身份验证,以便我们可以获得他的地址详细信息。
在此阶段设置以下值:
创建付款
"transactions": [
{
"amount": {
"currency": "EUR",
"total": "11.95",
"details": {
"shipping": "2.00",
"subtotal": "9.95"
}
},
"item_list": {
"items": [
{
"quantity": "1",
"name": "Some item :)",
"price": "9.95",
"currency": "EUR",
"sku": "123"
}
]
}
}
]
返回我们的结帐页面后,用户可以选择将代金券应用于他的订单。我们不确定如何在 PayPal REST API 中反射(reflect)这一变化。
在旧的 API 中,我们曾经在 item_list 中创建一个价格为负的新商品。
REST API 中是否有正弦方式在身份验证后更新 item_list?
Update 和 Execute payment 命令都只支持“amount”对象的新值,而不支持“item_list”。如果我们按如下方式发送新的(折扣后的)金额,我们会收到 AMOUNT_MISMATCH 错误,因为新的“金额”不再反射(reflect)“item_list”。
执行付款
"transactions": [
{
"amount": {
"currency": "EUR",
"total": "6.95",
"details": {
"shipping": "2.00",
"subtotal": "4.95"
}
}
}
]
结果
Error code : 400 with response : {"name":"AMOUNT_MISMATCH","message":"The totals of the cart item amounts do not match sale amounts"}
Voucher应该如何正确使用?有什么建议吗?
我是一名优秀的程序员,十分优秀!