在PayPal Express Checkout中更改订单确认步骤的发货地址



我正在使用Express Checkout API接受在线商店的付款。付款流程如下:

1) 用户将商品添加到购物车

2) 用户进入PayPal

3) 用户输入或选择现有发货地址,进行确认,然后重定向到订单确认步骤

4) 使用GetExpressCheckoutDetails从PayPal检索订单详细信息,如发货地址。

5) 在订单确认步骤(在DoExpressCheckoutPayment之前),用户可以选择更改PayPal返回的发货地址。如果用户更改了运输地址,我需要重新计算到这个新地址的运输成本,并将新的运输成本以及新地址提交回PayPal

6) 作为DoExpressCheckoutPayment支付调用的一部分,我正尝试使用PAYMENTREQUEST_0_SHORTONAME等进行此操作,但交易详细信息中的发货地址不会更改。(可能是因为这些已被弃用)相反,在PayPal上选择或输入的地址仍然存在。

如何在不让用户从一开始就重新进入交易渠道的情况下向PayPal提交新的发货地址?

DECP中的装运参数不受反对。文件有点误导。在向EC添加并行支付功能之前,这些参数的旧版本已被弃用。

因此,例如,SHIPTONAME已被弃用。相反,您现在应该像以前一样使用PAYMENTREQUEST_n_SHIPTONAME。

也就是说,无论你在DECP请求中发送什么,都应该转移到PayPal,最终成为付款的发货地址。事实上,根据我的经验,如果你不在DECP中包含地址,它就不应该成为支付细节的一部分。

如果你想在结账时提供API请求的样本,我很乐意看看,看看我是否能找出你哪里出错了。

相关内容

最新更新