請求書のラインアイテムを一括管理するベータ
Invoices API を使用して請求書の複数のラインアイテムを追加、更新、削除します。
Invoices API を使用して、ラインアイテムを一括で追加、更新、削除することで、請求書の複数のラインアイテムを編集できます。
Create an invoice
請求書を更新するには、最初に請求書を作成する必要があります。ダッシュボードで請求書を作成するか、Invoices (請求書) API を使用できます。draft ステータスの請求書のみ更新できます。
Add line items
同じ請求書で複数のラインアイテムを作成するには、invoice ID (請求書 ID) を参照します。invoice item ID (請求書アイテム ID) を使用して既存の未割り当ての請求書を割り当てることもできます。新しい 2 つのラインアイテムを作成し、この請求書に既存の請求書アイテムを割り当てる方法をご紹介します。
curl https://api.stripe.com/v1/invoices/
/add_lines \ -u{{INVOICE_ID}}: \ -d "lines[0][amount]"=7500 \ -d "lines[0][currency]"="usd" \ -d "lines[1][price]"={{PRICE_ID}} \ -d "lines[1][description]"="New line item" \ -d "lines[2][invoice_item]"={{INVOICE_ITEM_1}}sk_test_4eC39HqLyjWDarjtT1zdp7dc
よくある間違い
請求書アイテム ID を使用していることを確認してください。ここでラインアイテム ID を使用するとエラーになります。
Update line items
ここから、以下のように請求書 ID とラインアイテム ID に基づいて同じ請求書の複数のラインアイテムを更新できます。
curl https://api.stripe.com/v1/invoices/
/update_lines \ -u{{INVOICE_ID}}: \ -d "lines[0][id]"={{LINE_ITEM_1}} \ -d "lines[0][description]"="New description" \ -d "lines[0][metadata][key]"="new value" \ -d "lines[1][id]"={{LINE_ITEM_2}} \ -d "lines[1][price]"={{PRICE_ID}} \ -d "lines[2][id]"={{LINE_ITEM_3}} \ -d "lines[2][discountable]"=truesk_test_4eC39HqLyjWDarjtT1zdp7dc
上記の例では、ラインアイテム 1 の説明とメタデータ、ラインアイテム 2 の価格、ラインアイテム 3 が割引対象かどうかを更新しています。
Remove line items
請求書 ID とラインアイテム ID を参照し、behavior
キーで複数の削除タイプを区別することで、同一請求書の複数のラインアイテムを削除または割り当て解除できます。次に、LINE_
を完全に削除して、LINE_
の割り当てを解除する方法をご説明します。LINE_
は別のリクエストの別の請求書に再割り当てできます。
curl https://api.stripe.com/v1/invoices/
/remove_lines \ -u{{INVOICE_ID}}: \ -d "lines[0][id]"={{LINE_ITEM_1}} \ -d "lines[0][behavior]"="delete" \ -d "lines[1][id]"={{LINE_ITEM_2}} \ -d "lines[1][behavior]"="unassign"sk_test_4eC39HqLyjWDarjtT1zdp7dc
Restrictions
この機能を使用する場合、いくつかの制限事項があります
- 請求書はまだドラフト状態でなければなりません
- 請求書の line item (ラインアイテム) は 2 種類あります
type: invoiceitem
: 請求書アイテム が請求書に追加されたときに生成されます。type: subscription
: サブスクリプションの請求書用に各サブスクリプションアイテムから自動生成されます。これは 利用可能なフィールドのすべてのリスト で、各アイテムごとに更新されます。invoiceitem
ラインアイテムの場合はすべてのフィールドがサポートされていますが、subscription
ラインアイテムの場合は一部のフィールドしか更新できません。subscription
ラインアイテムでサポートされているフィールドは、tax_
またはrates discounts
です。
- 1 回の API コールで最大 50 件のラインアイテムを更新できます。この制限は変更されることがあるため、増加または減少する可能性があります。
Invoice metadata
上記のいずれかのエンドポイントへの同じリクエストで、請求書メタデータを設定できます。update_lines を呼び出す例を以下に示します。
curl https://api.stripe.com/v1/invoices/
/update_lines \ -u{{INVOICE_ID}}: \ -d "lines[0][id]"={{LINE_ITEM_1}} \ -d "lines[0][description]"="New description" \ -d "lines[1][id]"={{LINE_ITEM_1}} \ -d "lines[2][description]"="Another description" \ -d "invoice_metadata[is_processed]"="true"sk_test_4eC39HqLyjWDarjtT1zdp7dc