# 請求書テンプレート 請求書テンプレートを使用して、請求書のデザインを顧客ごとに変える 特定の顧客グループに対して、請求書の内容を調整できます。以下に例を挙げます。 - 特定の国の顧客に対して、請求書のフッターフィールドに特定のテキストを表示する - 特定の収益チャネルの顧客向けに特定のメモを表示する - 複雑な取引を行う顧客のために、ラインアイテムを一定の方法でグループ化する このガイドでは、請求書テンプレートを使用して以下のことを行う方法をご説明します。 - 関連するすべての請求書について入力する代わりに、請求書フィールドの共通の値を保存して再利用する - 大規模な顧客に適用される請求書のフィールド値を保存、管理、更新する - 項目のグループ化ルールの設定 (請求書テンプレート以外では設定できません) - サブスクリプションの請求書の場合、請求書を直接操作せずに請求書の値をカスタマイズします ## 請求書テンプレートの設定 請求書テンプレートはダッシュボードでのみ作成できます。API を使用して作成することはできません。 1. 請求書の設定で、[請求書> テンプレートタブ](https://dashboard.stripe.com/settings/billing/invoice-templates) を選択します。 1. **+ テンプレートを作成**をクリックします。 1. テンプレートの名前を入力します。 1. テンプレートに含めたい項目の値を指定します。請求書テンプレートでは、メモ、フッター、カスタム項目を設定できます。 1. 必要に応じて、[Common Expression Language (CEL) の式を使用して 1 つ以上のラインアイテムグループを定義する](https://docs.stripe.com/invoicing/group-line-items.md)ことができます。 1. テンプレートのプレビューを表示するには、プレビューペインの**請求書 ID** フィールドに該当する請求書の ID を入力します。ただし、その請求書に直接設定された値は、対応するテンプレートの値を上書きします。たとえば、請求書にフッターの値がある場合、プレビューには、テンプレートのフッターではなく、請求書のフッターが表示されます。 ## 請求書テンプレートの請求書への適用 #### ダッシュボード ダッシュボードでは、次の方法でテンプレートを請求書に適用できます。 - 請求書エディター - サブスクリプションエディターで、サブスクリプションに関連付けられたすべての請求書に適用する - 顧客の請求書設定で、その顧客に関連付けられた今後のすべての請求書に適用する #### API > #### Accounts v2 API を使用した顧客の表現 > > Accounts v2 API は、Connect ユーザー向けには GA、その他の Stripe ユーザー向けには公開プレビューとして提供されています。すべての Stripe ユーザーは [Dashboard](https://dashboard.stripe.com/settings/connect/platform-setup) で Accounts v2 を有効にできます。ただし、Accounts v2 API の呼び出し時には、プレビューユーザーは[プレビューバージョンを指定](https://docs.stripe.com/api-v2-overview.md#sdk-and-api-versioning)する必要があります。 > > ほとんどのユースケースでは、[Customer](https://docs.stripe.com/api/customers.md) オブジェクトを使用するのではなく、[顧客を顧客設定の Account オブジェクトとしてモデル化する](https://docs.stripe.com/connect/use-accounts-as-customers.md)ことをお勧めします。 #### Accounts v2 API では、次の方法でテンプレートを請求書に適用できます。 - When you create a draft invoice using the [Invoicing API](https://docs.stripe.com/api/invoices/create.md#create_invoice-rendering-template): ```curl curl https://api.stripe.com/v1/invoices \ -u "<>:" \ -d "customer_account={{CUSTOMERACCOUNT_ID}}" \ -d collection_method=send_invoice \ -d days_until_due=30 \ -d "rendering[template]=inrtem_xxx" ``` - When you create or update a customer-configured `Account`, use [configuration.customer.billing.invoice.rendering.template](https://docs.stripe.com/api/v2/core/accounts/object.md#v2_account_object-configuration-customer-billing-invoice-rendering-template) to apply a template to all future invoices associated with that customer, including subscription-generated invoices: ```curl curl -X POST https://api.stripe.com/v2/core/accounts \ -H "Authorization: Bearer <>" \ -H "Stripe-Version: $latestPreviewApiVersion" \ --json '{ "contact_email": "jenny.rosen@example.com", "display_name": "Jenny Rosen", "configuration": { "customer": { "billing": { "invoice": { "rendering": { "template": "inrtem_xxx" } } } } }, "include": [ "configuration.customer" ] }' ``` #### Customers v1 API では、次の方法でテンプレートを請求書に適用できます。 - When you create a draft invoice using the [Invoicing API](https://docs.stripe.com/api/invoices/create.md#create_invoice-rendering-template): ```curl curl https://api.stripe.com/v1/invoices \ -u "<>:" \ -d customer=cus_xxx \ -d collection_method=send_invoice \ -d days_until_due=30 \ -d "rendering[template]=inrtem_xxx" ``` - When you create or update a `Customer`, use [invoice_settings.rendering_options.template](https://docs.stripe.com/api/customers/create.md#create_customer-invoice_settings-rendering_options-template) to apply a template to all future invoices associated with that customer, including subscription-generated invoices: ```curl curl https://api.stripe.com/v1/customers \ -u "<>:" \ -d "name=Jenny Rosen" \ -d "invoice_settings[rendering_options][template]=inrtem_xxx" ``` API を使用して、請求書テンプレートをサブスクリプション、サブスクリプションスケジュール、見積もりに直接適用することはできません。代わりに、テンプレートを顧客に関連付けて、その顧客に関連付けられた今後のすべての請求書に適用したり、請求書が下書きの状態である間に請求書にテンプレートを適用したりすることができます。 ## テンプレートを上書きして更新する 請求書のフッター、メモ、カスタムフィールドの値は複数の場所で設定できます。1 つの請求書のフィールドに複数の値が適用される可能性がある場合は、高いものから低いものへと、次の順序で優先付けされます。 | 優先順位 | 設定 | メソッド | | --------------------- | ---------------- | -------------- | | 1 | 請求書に対して | ダッシュボードまたは API | | サブスクリプションに対して | ダッシュボードのみ | | 2 | 請求書に適用されるテンプレート | ダッシュボードまたは API | | サブスクリプションに適用されるテンプレート | ダッシュボードのみ | | 3 | 顧客に関連付けられたテンプレート | ダッシュボードまたは API | | 4 | 顧客の請求書設定 | API のみ | | 5 | アカウントの請求書設定 | ダッシュボードのみ | > 定義された請求書設定は、優先度の高い設定で上書きされない限り、常に適用されます。たとえば、顧客の添付テンプレートを上書きする顧客用に 1 回限りの請求書を作成するには、別のテンプレートを請求書に適用するか、請求書の値を直接設定する必要があります。 テンプレートを更新または置き換えると、新しい値はそのテンプレートに関連付けられた今後のすべての請求書に適用されます。たとえば、顧客のテンプレート内の値を更新した場合、その顧客の既存サブスクリプションに対する今後の請求書には、新しい値が適用されます (ただし、サブスクリプション側のテンプレートで上書きされていない場合に限ります)。