PayPal API-在付款时更新付款明细

时间:2018-08-21 21:36:59

标签: java paypal

我已将PayPal Express-Checkout集成到我的应用程序中,并添加了授权和捕获流程。在流程(授权)开始时,我不知道稍后会捕获的最终价格,因此,我总是设置初始价格,并在金额详细信息中添加税款,例如本例:

...
"transactions": [
{
  "amount":
  {
     "total": "5.50",
     "currency": "USD",
     "details":
     {
       "subtotal": "4.45",
       "tax": "1.05"
     }
   }
 }]
  ...
"item_list":
{
   "items": [
   {
      "name": "foo",
      "description": "bar",
      "quantity": "1",
      "price": "4.45",
      "tax": "1.05",
      "currency": "USD"
  }]
}
...

到目前为止,一切都按预期进行。

但是稍后,当我尝试使用其详细信息(小计和税金)更新金额并进行呼叫捕获时,PayPal API会引发错误,告诉我此时无法更新详细信息(即使总计金额小于原来的总金额。

但是,如果我仅更改总额而没有详细信息(小计和税项),那么它将起作用。

到目前为止,我发现的唯一提示是在PayPal API docs中:

  

重要提示:如果您想更新任何更改原始授权金额的购买详细信息,贝宝(PayPal)要求您在购买时或在捕获时获得购买者的同意。

这是否意味着我必须创建一个完整的新授权并再次将客户重定向到PayPal页面以授权更新的付款?

0 个答案:

没有答案