如何从 stripe api 获取所有发票的总收入?

问题描述 投票:0回答:0

我正在尝试从所有计划的订阅中获得总收入..

    public function subscriptionsIncome()
    {
        Stripe::setApiKey(config('services.stripe-keys.stripe-secret-key'));
        $packages = Package::all();
        $invoices = Invoice::all(['limit'=> 100]);
        $total_revenue = 0;
        foreach ($packages as $package){
            $plan_code = $package->plan_code;
            $package_invoices = array_filter($invoices->data, function ($invoice) use ($plan_code) {
                return !empty($invoice->lines) && $invoice->lines->first()->plan->product == $plan_code;
            });
            $total_revenue += array_reduce($package_invoices, function ($result, $invoice) {
                return $result + $invoice->amount_paid;
            }, 0);
        }
        return number_format($total_revenue / 100, 2);
    }

问题是,stripe api 在使用 all() 函数时最多提供 100 张发票。之后我们需要做分页,这在处理大量发票时可能会花费很多时间, 你知道如何获得这样的结果吗? 提前谢谢你!

问题是,stripe api 在使用 all() 函数时最多提供 100 张发票。之后我们需要做分页,这在处理大量发票时可能会花费很多时间, 你知道如何获得这样的结果吗? 提前谢谢你!

laravel api stripe-payments invoice laravel-cashier
© www.soinside.com 2019 - 2024. All rights reserved.