我正在网站上重构PayPal付款,但是我不清楚。
我已经实施了is no longer available for new integrations的自适应支付。
我想转到受支持的PayPal SDK。我认为我应该使用PayPal Checkout SDK。但是我发现旧解决方案与新解决方案之间存在显着差异。
这是我以前的流程:
POST
发出了www.paypal.com/cgi-bin/webscr
请求,并传递了一些参数。我认为最重要的是cmd=_xclick
; 有了新的流程,似乎没有立即在PayPal上捕获付款。我正在关注这个example。
即使Intent = "CAPTURE"
,也好像是在单独的步骤中捕获了金钱:
POST
发出/v2/checkout/orders
请求。我认为最重要的是Intent="CAPTURE"
; POST
返回了200/201
(老实说,我现在不记得了),用户将被重定向到Approve Paypal link
并由用户付款。在这里,在Paypal网站上,用户付款。但是付款不会立即被捕获; approved
... 从这里我有一些疑问:
CHECKOUT.ORDER.APPROVED
; 这是正确的流程吗?对于通过两个不同的步骤来筹集资金,我不太有信心。我想立即取钱。有其他选择吗?
我不能使用Smart button,因为我需要一个可在不同付款类型之间切换的自定义按钮。
答案 0 :(得分:0)
我仍然建议使用智能按钮。您可以将其配置为仅显示黄色的贝宝付款方式,如果这是您希望显示的唯一方式。使用智能按钮的优点是没有重定向。您的网站保持在后台。与重定向到PayPal网站相比,这是一种更好的付款体验。
无论您是否使用智能按钮,都需要在买方批准后捕获订单。这是必需的步骤。您不需要为此需要一个网络挂钩。批准事件将在智能按钮内触发,或者在返回您的站点后触发,然后您可以进行v2 /订单捕获。
如果您选择使用智能按钮(推荐),则以下是前端的演示模式:https://developer.paypal.com/demo/checkout/#/pattern/server
以下是一些用于自定义外观的选项,以使其适合您的其他付款方式:https://developer.paypal.com/docs/checkout/integration-features/customize-button/