You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调用Stripe的refund->all接口查询特定时间段内超过10条退款记录

问题原因

你当前的写法错误拆分了Stripe PHP SDK refunds->all() 方法的参数:limit属于查询参数,必须和created时间筛选条件放在同一个数组中,第二个参数位仅用于传递请求配置项(比如你用到的stripe_account)。

修正后的单页查询代码

单次最多可拉取100条退款记录,代码如下:
注:Stripe接口限制limit参数最大值为100,超出该值的配置会被自动截断为100

$stripe_refunds = $this->stripe->refunds->all(
    [
        'created' => ['gte' => $date_from_unix, 'lte' => $date_to_unix],
        'limit' => 100
    ],
    [
        'stripe_account' => env('STRIPE_APP_CLIENT_ID')
    ]
);
超出100条记录的全量拉取方案

如果目标时间段内退款总数超过100条,需要通过游标分页拉取全量数据,有两种实现方式:

  • 手动分页:每次请求后取返回结果最后一条的id作为下一次请求的starting_after参数值,循环请求直到返回结果条数小于100即可停止
  • 自动分页迭代器:直接使用Stripe PHP SDK内置的自动分页方法,无需手动处理游标逻辑,示例代码如下:
$all_refunds = $this->stripe->refunds->all(
    [
        'created' => ['gte' => $date_from_unix, 'lte' => $date_to_unix],
        'limit' => 100
    ],
    [
        'stripe_account' => env('STRIPE_APP_CLIENT_ID')
    ]
)->autoPagingIterator();

// 遍历即可获取所有符合条件的退款记录
foreach ($all_refunds as $refund) {
    // 处理单条退款逻辑
}

内容的提问来源于stack exchange,提问作者hardrock2005

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 04:06:01