Stripe:将发票项目添加到发票

Stripe: Add invoice item to invoice

我在月度发票中添加发票项目时遇到问题。这是我的计费实现。

从 Stripe 获得 invoice.created webhook 后,我计算了额外的付款金额并尝试通过添加发票项目来更新当前发票。这是代码:

stripe.invoiceItems.create({
   'customer': 'cus_00000000',
   'amount': 2000,
   'currency': 'usd',
   'description': 'additional fee'
}, function (error, invoice) {
   if (error) {
     throw new Error('Error creating invoice item');
   }
   return Promise.resolve(invoice);
});

作为结果,Stripe 创建了一个发票项目,并将其添加到下一个即将到来的发票中。问题是,我需要将额外的付款行添加到当前创建的发票中。我的问题是,有什么方法可以更新待定发票,而不是即将到来的发票。

当您通过 API, you can pass the optional invoice parameter 创建发票项目时,它告诉 Stripe 将发票项目附加到哪个发票。如果您不通过一项,它将一直待定,直到未来的发票。

由于您想将其添加到刚创建的发票中,请确保在 invoice 参数中传递该发票的 ID:

stripe.invoiceItems.create({
   'customer': 'cus_00000000',
   'amount': 2000,
   'currency': 'usd',
   'description': 'additional fee',
   'invoice': 'in_1234'
}, function (error, invoice) {
   if (error) {
     throw new Error('Error creating invoice item');
   }
   return Promise.resolve(invoice);
});