gpt4 book ai didi

php - Paypal 批量支付 API

转载 作者:搜寻专家 更新时间:2023-10-31 21:29:05 25 4
gpt4 key购买 nike

我正在尝试找出 Paypal 批量付款的最佳工作流程:

我一切正常,即我可以发送批量付款以及读取和存储响应。

我有一个与 Paypals API 交互的 PaypalService 类。

// ...

use myApp\Contracts\Payment;

class PaypalService implements Payment
{
public function sendBatchPayout(...)
{
...
}

public function getPayoutDetails($payout_batch_id)
{
...
}
}

// .. etc

我想知道处理批量付款的理想流程是什么。

例如:

  1. 3位收件人需要获得X金额

  2. 我用:

    创建批量付款。

  3. 这将返回带有“payout_batch_id”的响应,并且这是异步的。

  4. 我是否会在获取状态后立即调用获取付款批处理详细信息?还是有等待期?

  5. 我要将响应的哪一部分存储在我的存储/数据库中,我为批量支付的每个接收者创建一个记录,我是否应该为这些记录中的每一个分配“payout_batch_id”

    <
  6. 第 5 点很重要,因为下次我希望发送付款时,我想从当前付款金额中扣除之前成功付款的金额。

请帮忙。谢谢。

最佳答案

Do I make a call to get payout batch details immidiately after to get the status? or is there a waiting period?

您可以定期检查状态,但理想情况下我会使用 Webhooks,以便在批处理/项目完成时通知您而不是轮询。然后,如果您错过了事件通知(您的服务器已关闭),请通过/v1/notifications/webhooks-events 重新列出通知,或者定期轮询自您上次收到更新以来是否超过特定时间限制(可能是 5/10/15/30/45 天)。

What part of the response am I to store in my Storage/DB, I create a record for each recipient of the bulk payout, should I assign 'payout_batch_id' to each of these records

我建议始终以这种方式使用 sender_batch_id,以防万一您没有收到 PayPal 的回复,您将重新发送相同的 sender_batch_id,如果成功,您将收到相同的回复(防止重复付款)。这应该与生成的 payout_batch_id 一起存储。区分批处理中的每个项目存储 payout_item_id。您可以根据 payout_batch_id 或 payout_item_id 获取状态。

no.5 is important since the next time I wish to send a payout I want to deduct the amount of previous successful payouts from the current payout amount.

如果您已经发送了付款并且它处于待处理状态(或任何其他不确定状态),您不应针对该金额发出另一笔付款。假设在您向 PayPal 发送请求之前,钱已成功发送,然后只有在您遇到具体的失败情况时才假设它失败了,否则您可能仍要承担责任。

希望对你有帮助

关于php - Paypal 批量支付 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32187470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com