首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Paypal批量支付API

Paypal批量支付API
EN

Stack Overflow用户
提问于 2015-08-24 16:43:29
回答 1查看 891关注 0票数 3

我试图找出贝宝批量支付的最佳工作流程:

我有所有的工作,即我可以发送批量支付,阅读和存储的回应。

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

代码语言:javascript
复制
// ...

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. 第五是重要的,因为下次我希望发送一个支出,我想从当前的支付金额中扣除以前成功支付的金额。

请帮帮忙。谢谢。

EN

回答 1

Stack Overflow用户

发布于 2017-03-06 23:52:22

我是否会打电话得到支付批处理的详细信息后,立即得到状态?还是有等待期?

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

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

我建议您始终以这种方式使用sender_batch_id,以防您无法从PayPal获得响应,您将重新发送相同的sender_batch_id,如果它通过,您将得到相同的响应(防止重复支付)。这应该和结果的payout_batch_id一起存储。若要区分批处理存储payout_item_id中的每个项,请执行以下操作。您可以根据payout_batch_id或payout_item_id获取状态。

第五是重要的,因为下次我希望发送一个支出,我想从当前的支付金额中扣除以前成功支付的金额。

如果您已经发送了支付,并且它正在挂起(或任何其他不确定状态),则不应该为该金额发出另一笔支出。假设在您将请求发送到PayPal之前成功地发送了资金,然后假设它失败了,如果您得到了具体的失败场景,否则您可能仍然要承担责任。

希望这能帮上忙

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32187470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档