使用发票说明更新 Stripe 订阅数量并开具发票

Updating and Invoicing Stripe Subscription Quantity with Invoice description laravel cashier

提问人:Kolawole Emmanuel Izzy 提问时间:7/14/2020 最后编辑:Kolawole Emmanuel Izzy 更新时间:3/10/2022 访问量:1998

问:

日安

我正在做一个涉及 Laravel Cashier 的项目。我想让用户能够更新他们的订阅数量并立即收费(我已经能够实现,使用下面的代码)

$user = Auth::user()
$user->subscription('main')->incrementAndInvoice(10000);

尽管上述工作符合预期,但返回的发票不包含指示更改的说明,而是发票说明为空。但是当我检查条纹上的事件数据时,有两个描述在那里 [见下图]

First Description which is the user's current/unused quantity enter image description here

上图显示了一个用户,该用户当前使用的订阅计划有 5000 个数量,但增加到 15000 个数量。有没有办法在生成的发票中包含这些描述。

在我检查了该方法后,它只接受两个参数(1.count,2.)Plan)如下图所示;incrementAndInvoice()

enter image description here

没有像我们对方法那样包含描述的选项。有什么解决方法吗?任何正确方向的想法或指针将不胜感激。charge()

提前感谢您的帮助。

php laravel 条纹支付 laravel-收银员

评论

0赞 MrEduar 12/16/2022
试用$invoice = $subscription->asStripeSubscription(['latest_invoice']); $invoice->description

答:

0赞 Mahmood Ahmad 7/22/2020 #1

目前,还没有将描述包含在 中的实现。incrementAndInvoice()

因此,我们必须实施它,在执行此操作之前,请查看更新发票

首先将这一行更改为:to(我们将其分配给变量)$user->subscription('main')->incrementAndInvoice(10000);$subscription = $user->subscription('main')->incrementAndInvoice(10000);$subscription

然后获取发票,如下所示:

$new_invoice = $user->invoices()->filter(function($invoice) use ($subscription) {
   return $invoice->subscription === $subscription->stripe_id;
});

更新订阅数量后,我们将添加以下内容:

$client  = new \GuzzleHttp\Client();
$request = $client->post('https://api.stripe.com/v1/invoices/' . $invoice_id, [
    'auth' => [$secret_key, null]
    'json' => ['description' => 'your description']
]);

$response = json_decode($request->getBody());

或以下内容:

$stripe = new \Stripe\StripeClient(
  $secret_key
);
$stripe->invoices->update(
  $invoice_id,
  ['description' => 'your description']
);

请注意:

  • 是发票的 ID。$invoice_id
  • 是 API 密钥。$secret_key

评论

0赞 Kolawole Emmanuel Izzy 7/26/2020
感谢您的回复。问题是,无法访问发票 ID,因为当订阅数量更新时,发票会从 stripe 发回,并且立即向用户收费(这称为IncrementAndInvoice() )
0赞 Mahmood Ahmad 7/26/2020
当你这样做时,你会得到什么dd($user->subscription('main')->incrementAndInvoice(10000));
0赞 Kolawole Emmanuel Izzy 7/26/2020
我获取用户的订阅表数据和数量变化....与发票无关。ibb.co/wg0LLHribb.co/z7Tm3SS
0赞 Mahmood Ahmad 7/26/2020
查看更新的答案...请查看此链接 laracasts.com/discuss/channels/eloquent/... 了解更多信息
0赞 Kolawole Emmanuel Izzy 7/28/2020
发票仍然没有描述 ibb.co/5Mq14sr