PayPal - SetExpressCheckout 后更新运输信息
Posted
技术标签:
【中文标题】PayPal - SetExpressCheckout 后更新运输信息【英文标题】:PayPal - update shipping information after SetExpressCheckout 【发布时间】:2015-08-19 07:08:21 【问题描述】:以下是与 PayPal API 相关的问题。我正在使用 PayPal Express Checkout,我在 .NET 中使用它。
使用我们的软件,用户可以通过两种不同的方式使用 PayPal 结账。一个是他们从结帐页面选择它作为付款选项。如果他们以这种方式到达那里,他们将已经输入了他们的运输信息并选择了他们的运输方式,所有这些(运输信息、运输总额、运输折扣)都通过 SetExpressCheckout 函数传递到 PayPal。然后他们被重定向到一个现场确认页面,他们在该页面上单击一个按钮以确认他们的付款(称为 DoExpressCheckoutPayment)以及所支付的金额。这一切都有效,但此页面还使用户能够在点击确认之前更改他们首选的运输方式。更改运输方式会更改运输总额,也可能会影响运输折扣和税收总额。在确认订单(通过 DoExpressCheckoutPayment)之前,我找不到在 PayPal 中实际更新此信息的方法。在这种情况下,我向此函数传递的金额与最初通过 SetExpressCheckout 给出的订单总额不同。
客户结账的另一种方式是他可以点击购物车页面上的 PayPal 结账按钮。如果用户以这种方式结账,他甚至不会选择送货方式,直到他到达确认页面,所以最初的 SetExpressCheckout 调用根本不会发送运费总额和折扣。除此之外,在这种情况下,一切都与第一个相同。它会更新我们软件中的运输方式和总计,并将最终金额发送回 PayPal。
首先,我想知道在调用 SetExpressCheckout 之后是否真的有任何方法可以更新运费总额、运费折扣、税收总额等。我没有看到这些值被传递到 DoExpressCheckoutPayment,也没有看到另一种更新方法。如果这不可能,只传递与通过 SetExpressCheckout 发送的总金额不同的付款金额是否就足够了,还是会导致问题?或者有没有我没有想到的更好的方法?
【问题讨论】:
【参考方案1】:你很好。 ExpressCheckout 旨在根据在 SetEC 时间发送的大致购物车获得买家的批准(并评估买家的支付能力),然后将买家返回到卖家的网站并可能更改购物车(例如加快运输或追加销售额外购买)在调用 DoEC 之前。这应该都有效。您只需在 DoEC 调用中发送不同的最终金额。
有几点需要注意:
如果总额变化很大,则在 DoEC 时间被拒绝付款的可能性更大。例如。买家可能会以 80 美元的价格测试 OK,但如果您随后用 300 美元致电 DoEC,PayPal 可能会要求买家返回 PayPal 以解决他们的支付能力(例如更改或添加资金来源)。通常在 20% 以内你应该是安全的。 PayPal 有特定的返回代码,表明您应该将买家送回给他们(通过另一个重定向)以纠正问题/重新进行资金来源选择和批准。
如果您告诉 PayPal 一个送货地址,但实际上将货物运送到其他地方,您可能没有资格获得卖家保护。当然,如果修改后的地址是该 PayPal 帐户的新地址,那么 PayPal 会在其风险评估中考虑到这一点,因此不提供该信息将使 PayPal 的保证失效。
【讨论】:
感谢您的信息!抱歉,我不能投票,因为我没有在 *** 上发布那么多内容,而且我的声誉显然还不够高以上是关于PayPal - SetExpressCheckout 后更新运输信息的主要内容,如果未能解决你的问题,请参考以下文章