【问题标题】:PayPal Adaptive Payments - Separating Payment across back end and clientPayPal 自适应支付 - 在后端和客户端之间分离支付
【发布时间】:2015-12-12 11:25:02
【问题描述】:

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

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

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

当我尝试这个时,它没有通过验证,说 receiverList 不能为空。我认为 paymentKey 会有这个细节,我可以“批准”正在使用我的预批准密钥。

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

可能吗?

【问题讨论】:

  • 基本上,您的问题归结为您是否可以使用预批准密钥进行连锁支付,答案是肯定的。如果您在尝试时遇到某种错误,我们需要查看您发送给 PayPal 的原始 API 请求的副本以及您收到的响应。
  • 我本身没有收到错误。只是我想打两个单独的电话。一个带有付款详细信息和链接的付款详细信息和接收者,它返回一个 PaymentId,然后使用该 paymentId 进行单独调用,并且只是预先批准以“批准”它。第一次调用工作正常并返回paymentId,但是当我尝试发送一个“preapprovalKey”时,它说我需要传递所有收件人 - 我不想这样做,因为它当时已经确定我打了第一个电话并取回了paymentId。我将尝试获取示例请求/响应

标签: paypal paypal-adaptive-payments chained-payments


【解决方案1】:

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

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

使用 PAY_PRIMARY 设置,资金将仅流向主要接收方。然后,您将在必要时调用 ExecutePayment API 以触发二次付款。

【讨论】:

  • 优秀。这就说得通了。我已经有了预先批准的钥匙,不明白延迟付款。因此,两种处理声音的方法就像在一次调用中使用 payKey 和 preapprovalKey 调用 Pay API,或者如您上面提到的使用 PAY_PRIMARY 然后稍后使用 ExecutePayment。谢谢!
猜你喜欢
  • 2017-11-21
  • 2021-08-04
  • 2013-05-07
  • 2014-04-07
  • 2014-01-23
  • 2012-03-21
  • 2015-07-19
  • 2014-09-10
  • 2014-06-23
相关资源
最近更新 更多