PayPal Adaptive Payments - 将后端和客户端的付款分开

标签 paypal paypal-adaptive-payments chained-payments

我正在使用 PayPal 自适应支付进行链式支付处理。我可以通过调用 https://svcs.paypal.com/AdaptivePayments/Preapproval 成功获得预批准 key .

我的理解是,在完成付款请求 ( https://svcs.paypal.com/AdaptivePayments/Pay ) 时,您可以添加参数 &preapprovalkey=PA-a891asnk 以进行隐式授权,并防止用户必须输入其凭据,付款将自动完成。

我的问题是:“支付”流程可以拆分吗?换句话说,我有一个服务器进程,它已经具有创建接收者和金额的逻辑,它调用“pay”并返回一个 paymentKey。如果还没有预先批准,这个 paymentKey 将被传递到重定向中,用户将输入他们的凭据。我可以保留此服务器进程,然后通过 paymentKey 和 preapprovalKey 回调 PayPal 并进行隐式授权吗?

当我尝试这样做时,验证失败,提示 receiverList 不能为 null。我认为 paymentKey 会包含此详细信息,我可以“批准”使用我的预批准 key 。

我知道很多人只会问我为什么不希望在一次调用中就完成它,但我想在各方之间保持匿名并将该逻辑保留在服务器上并希望客户端只进行最后的“批准”

可能吗?

最佳答案

它的工作方式是您调用预批准,以便您的付款人可以创建预批准配置文件。您可以将该预批准 ID 与该用户的详细信息一起存储在您的系统中。

为该用户提交延迟的链式付款时,您将调用包含预批准 ID 并将操作设置为 PAY_PRIMARY 的支付 API。这就是它延迟的原因。不过,您可以在此请求中包含主要和次要接收方的详细信息。

设置 PAY_PRIMARY 后,资金将仅转到主要接收方。然后,您可以调用 ExecutePayment API 以在必要时触发二次支付。

关于PayPal Adaptive Payments - 将后端和客户端的付款分开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32599038/

相关文章:

paypal - 一个应用程序与多个 Paypal 账户交互

沙盒中的 PayPal 快速结帐帐单地址

ios - 隐藏 PayPal MPL 的 UiAlert

paypal - 仅向链式支付的次要接收方收取费用?

paypal - 通过 REST API 向 PAYPAL 的付款请求添加折扣金额

c# - Paypal 订阅按钮错误

paypal - 避免用户在 Paypal 上支付已经支付的项目

PHP - AdaptivePaymentsService::pay() - 总是返回错误:520002

authentication - 如何通过第三方权限服务获得卖家的退款权限

PayPal 自适应支付链式支付不会让主要收款人收取的款项少于次要收款人。想要这个退款