我即将将Paypal Express Checkout集成到在线食品订购系统中。我目前对流程的看法如下:
SetExpressCheckout
被调用,并且客户被重定向到带有令牌的 Paypal。- 客户批准付款后,他将被重定向到等待页面,同时将订单发送到餐厅。
- 收到餐厅回复后,会发生以下情况:
- 如果订单被批准,
DoExpressCheckoutPayment
则调用并完成付款; - 如果订单被拒绝,则付款永远不会完成。
- 如果订单被批准,
这让我想知道,是否有可能DoExpressCheckoutPayment
失败,并且无法以任何理由提取资金?因为在我的情况下,取消已经发送到餐厅的订单为时已晚。
我应该PAYMENTACTION=Authorization
改用,然后获取/取消授权吗?由于资金可以保留3天,而我只需要几分钟的时间来决定,这看起来有点矫枉过正。