【问题标题】:Updating and Invoicing Stripe Subscription Quantity with Invoice description laravel cashier使用发票描述 laravel 收银员更新和开票 Stripe 订阅数量
【发布时间】:2020-11-03 06:40:04
【问题描述】:

美好的一天,

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

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

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

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

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

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

提前感谢您的帮助。

【问题讨论】:

    标签: php laravel stripe-payments laravel-cashier


    【解决方案1】:

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

    所以我们必须实施它,在我们这样做之前请检查Update an invoice

    首先将这一行:$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']
    );
    

    请注意:

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

    【讨论】:

    • 感谢您的回复。问题是,无法访问发票 ID,因为当订阅数量更新并立即向用户收费时,发票会从条带中发回(称为 IncrementAndInvoice()
    • 你这样做会得到什么dd($user->subscription('main')->incrementAndInvoice(10000));
    • 我得到了用户的订阅表数据和数量的变化......没有关于发票的信息。 ibb.co/wg0LLHribb.co/z7Tm3SS
    • 查看更新的答案...请查看此链接laracasts.com/discuss/channels/eloquent/… 了解更多信息
    • 发票仍然没有说明ibb.co/5Mq14sr
    猜你喜欢
    • 2017-09-09
    • 1970-01-01
    • 1970-01-01
    • 2021-09-02
    • 2020-04-23
    • 2016-02-19
    • 2019-06-04
    • 1970-01-01
    • 2015-12-31
    相关资源
    最近更新 更多