ダッシュボードまたは API を使用して、商品と価格の作成と更新を行うことができます。
変動料金の作成といった高度なユースケースでは、API を使用する必要があります。商品や料金が多数ある場合や、Elements にカスタムの導入を構築する場合は、API を使用する必要があります。
- コードを作成せずに済ませたい場合や、商品と価格の種類が少ない場合には、ダッシュボードで商品と価格を作成して管理します。料金体系モデルをテスト環境で設定し、商品の詳細ページの本番環境にコピーボタンをクリックします。
- 商品および価格を作成・管理するには、API または Stripe CLI を使用します。API は本番環境向けの直接的な方法です。一方、Stripe CLI は、端末から直接 Stripe の導入を作成、テスト、管理する開発者向けツールです。
次の API ステップでは、例としてプロジェクト管理ダッシュボードを基本商品とする架空の SaaS コラボレーションツール (Togethere)を使用します。
Create a product
商品と価格を作成する
商品を作成する
ダッシュボードで商品を作成するには、以下のようにします。
- その他 > 商品カタログ に移動します。
- +商品を追加をクリックします。
- 商品の名前を入力します。
- 「(オプション)」 説明を追加します。この説明は、商品の購入時に Costomer portal (カスタマーポータル) と Quotes (見積もり)に表示されます。
- (Optional) Add an Image of your product. Use a JPEG, PNG, or WEBP file that’s smaller than 2MB. The image appears at checkout.
- 「(オプション)」Stripe Tax を使用している場合は、商品の税コードを選択します。適切な商品カテゴリーについて、詳細は税コードをご覧ください。
- (オプション) 明細書表記を入力します。この表記により継続支払いのアカウント表記が上書きされます。銀行明細書に記載された場合に顧客が内容を把握できるような表記を選んでください。
- (オプション) ユニットラベルを入力します。ユニットラベルにより、商品をどのように販売するかを説明できます。たとえば、ユーザー数ベースで請求する場合に「ユーザー数」と入力すると、ラインアイテムには「ユーザー毎」の価格が記載されます。ユニットラベルは購入時や、請求書、領収書、カスタマーポータルに表示されます。
商品の価格を作成する
ダッシュボードで商品を保存するには、価格も 1 つ以上追加する必要があります。
商品エディターは、デフォルトで定額の料金体系モデルを表示します。複数の価格を作成することも、高度な料金体系オプションで異なる料金体系モデルを使用することもできます。
料金体系モデルを選択します。継続的な料金体系モデルの詳細は、料金体系モデルのガイドをご覧ください。
- 定額の料金体系: 各ユニットに対して一律の価格を請求します。このオプションを使用する場合は、1 回限りまたは継続を選択します。
- パッケージ料金体系: 5 ユニットごとに 25 USD を請求するなど、パッケージやグループを単位にして請求します。購入数はデフォルトで切り上げられるので、8 ユニット購入する顧客は 50 USD を支払うことになります。
- 段階的な料金体系: 注文内の一部のユニットに異なる価格が適用される場合がある、段階制料金を使用します。たとえば、最初の 100 ユニットに対してはユニット当たり 10 USD、以降の 50 ユニットについてはユニット当たり 5 USD を請求することができます。このオプションを使用する場合は、価格の通貨を選択して、段階の表に入力してください。
- 数量ベースの料金体系: 販売する合計ユニット数に対して設定された単価で請求します。たとえば、50 ユニットの場合はユニット当たり 10 USD、100 ユニットの場合はユニット当たり 7 USD を請求します。このオプションを使用する場合は、価格の通貨を選択して、段階の表に入力してください。
- 顧客の選択による価格: 商品、サービス、活動に対して支払う金額を支払人が決定できるようにします。顧客の選択による価格は、Checkout および Payment Links でのみ使用できます。
- 使用量ベースの料金体系: 請求サイクルにおけるサービスの利用量に応じて顧客に請求します。
「(オプション)」複数の通貨で販売している場合は、別の通貨を追加をクリックして、通貨ごとの請求額を設定します。
継続価格の請求期間を選択します。ドロップダウンのオプションに目的のものがない場合は、カスタムの期間を追加できます。
料金に税金を含めるかどうかを選択します。詳しくは、サブスクリプションと税金をご覧ください。
「(オプション)」価格の説明を入力します。この説明は顧客に表示されません。
- 「(オプション)」商品に複数の価格を作成する場合は、高度な料金体系オプションをクリックします。
- 商品を追加をクリックして、商品と価格を保存します。どちらも後から編集できます。
Edit a product
ダッシュボードで商品を変更するには、以下のようにします。
- その他 > 商品カタログ に移動します。
- 変更する商品を見つけて、オーバーフローメニュー () をクリックし、商品を編集をクリックします。
- その商品に変更を加えます。
- 商品を保存をクリックします。
商品情報ページ内からオーバーフローメニュー () または編集をクリックすることでも、商品を編集できます。
Archive a product
商品を無効にして新しい請求書またはサブスクリプションに追加できないようにする場合は、その商品をアーカイブすることができます。商品をアーカイブしても、その商品を使用する既存のサブスクリプションは、キャンセルされるまで有効なままになりますが、その商品を使用する既存の決済フォームへのリンクは無効化されます。価格が関連付けられている商品を削除することはできませんが、アーカイブすることはできます。
商品をアーカイブするには、以下のようにします。
- その他 > 商品カタログ に移動します。
- 変更する商品を探して、オーバーフローメニュー () をクリックし、商品をアーカイブをクリックします。
商品のアーカイブを解除するには、以下のようにします。
- 商品カタログ > 概要 ページでアーカイブ済み タブに移動します。
- 変更する商品を探して、オーバーフローメニュー () をクリックし、商品のアーカイブを解除をクリックします。
商品情報ページから商品のアーカイブを解除することもできます。
Delete a product
価格が関連付けられていない商品のみを削除できます。あるいは、商品をアーカイブすることができます。
商品に価格が関連付けられている場合は、商品を削除する前に価格を削除またはアーカイブする必要があります。Stripe は、過去の取引の価格と商品の記録を保持します。
商品を完全に削除するには、以下のようにします。
- その他 > 商品カタログ に移動します。
- 変更する商品を探して、オーバーフローメニュー () をクリックし、商品を削除をクリックします。
Create a price
1 つの商品に対して 1 つまたは複数の価格を作成できます。たとえば、Togethere の「スターター」レベルを月額 10 USD、年額 100 USD、または 1 回限りの購入額 9 EUR で提供することができます。
注
価格の作成後は、その metadata
、nickname
、active
フィールドのみを更新できます。
ダッシュボードで価格を作成するには、まず商品を作成する必要があります。その後、価格を作成できます。
料金体系モデルを選択します。継続的な料金体系モデルの詳細は、料金体系モデルのガイドをご覧ください。
- 定額の料金体系: 各ユニットに対して一律の価格を請求します。このオプションを使用する場合は、1 回限りまたは継続を選択します。
- パッケージ料金体系: 5 ユニットごとに 25 USD を請求するなど、パッケージやグループを単位にして請求します。購入数はデフォルトで切り上げられるので、8 ユニット購入する顧客は 50 USD を支払うことになります。
- 段階的な料金体系: 注文内の一部のユニットに異なる価格が適用される場合がある、段階制料金を使用します。たとえば、最初の 100 ユニットに対してはユニット当たり 10 USD、以降の 50 ユニットについてはユニット当たり 5 USD を請求することができます。このオプションを使用する場合は、価格の通貨を選択して、段階の表に入力してください。
- 数量ベースの料金体系: 販売する合計ユニット数に対して設定された単価で請求します。たとえば、50 ユニットの場合はユニット当たり 10 USD、100 ユニットの場合はユニット当たり 7 USD を請求します。このオプションを使用する場合は、価格の通貨を選択して、段階の表に入力してください。
- 顧客の選択による価格: 商品、サービス、活動に対して支払う金額を支払人が決定できるようにします。顧客の選択による価格は、Checkout および Payment Links でのみ使用できます。
- 使用量ベースの料金体系: 請求サイクルにおけるサービスの利用量に応じて顧客に請求します。
「(オプション)」複数の通貨で販売している場合は、別の通貨を追加をクリックして、通貨ごとの請求額を設定します。
継続価格の請求期間を選択します。ドロップダウンのオプションに目的のものがない場合は、カスタムの期間を追加できます。
料金に税金を含めるかどうかを選択します。詳しくは、サブスクリプションと税金をご覧ください。
「(オプション)」価格の説明を入力します。この説明は顧客に表示されません。
- 価格を作成するをクリックして、価格を保存します。価格は後から編集できます。
デフォルトの価格を設定する
商品のデフォルトの価格は、顧客に提示する最も標準の価格です。たとえば、1 つの商品にシーズンセールの価格が複数設定される場合がありますが、デフォルトは、通常の (セール用ではない) 価格を表します。商品の価格が 1 つのみである場合は、必然的にその価格がデフォルトの価格と見なされます。デフォルトの価格は、active (有効) な Price である必要があります。
ダッシュボードで商品のデフォルトの価格を変更するには、次のようにします。
- その他 > 商品カタログ に移動します。
- 変更する商品を見つけて、オーバーフローメニュー () をクリックし、商品を編集をクリックします。
- 料金情報セクションで、新しいデフォルト価格として設定する価格を見つけ、デフォルト価格として設定をクリックします。
- 商品を保存をクリックします。
ダッシュボードで新しい価格を作成して新しいデフォルト価格にするには、以下のようにします。
- その他 > 商品カタログ に移動します。
- 変更する商品を見つけてクリックし、商品情報ページを開きます。
- 料金体系セクションの新しい料金を追加ボタンをクリックします。
- 料金体系の詳細を入力して、デフォルト価格として設定を選択します。価格を作成するときに使用できるフィールドの詳細をご覧ください。
- 価格を追加をクリックします。
検索キー
企業の多くは、ウェブサイトに価格情報を掲示しています。これらの価格がハードコード化されていて、価格の変更を必要とする場合、その変更プロセスはたいてい手作業であり、新しいコードのデプロイが必要になります。このようなシナリオを管理しやすくするために、Price オブジェクトで lookup_key 属性を使用します。このキーを使用することで以下の処理が可能になります。
- フロントエンドでさまざまな価格をレンダリングする。
- レンダリングされた価格を使用して顧客に請求する。
価格を作成する際に、lookup_key
を渡すことができます。
curl https://api.stripe.com/v1/prices \
-u "sk_test_4eC39HqLyjWDarjtT1zdp7dc
:" \
-d product= \
-d unit_amount=1000 \
-d currency=usd \
-d "recurring[interval]"=month \
-d lookup_key=standard_monthly
料金体系ページで月額 10 USD などのテキストをハードコード化してバックエンドで価格 ID を使用するのではなく、standard_monthly
キーを使用して料金をクエリし、その結果をフロントエンドに表示できます。
curl -G https://api.stripe.com/v1/prices \
-u "sk_test_4eC39HqLyjWDarjtT1zdp7dc
:" \
-d "lookup_keys[]"=standard_monthly
注
パフォーマンスを改善するため、キャッシングレイヤーを追加して、価格の再読み込みは必要な場合のみ行うことをお勧めします。
顧客が登録や支払いのボタンをクリックしたら、上記の GET
リクエストからの価格を Subscriptions API に渡します。
これにより、複数の料金を表示できるようになります。新規ユーザーに対する請求を毎月 10 USD ではなく 20 USD に変更した場合、新しい料金を作成し、transfer_lookup_key=true を使用して検索キーをその新しい料金に転送するだけで済みます。
切り捨て/切り上げ
切り捨て/切り上げは、請求書のラインアイテムレベルで行われます。たとえば、unit_amount_decimal = 0.05
で料金を作成し、その[料金]で quantity = 30
として月次サブスクリプションを作成した場合、数量に小数の金額を乗じた後に切り捨て/切り上げが適用されます。この例の場合、ラインアイテムで算出される金額は、0.05 * 30 = 1.5
となり、2 セントに切り上げられます。複数のラインアイテムが存在する場合は、請求書の合計金額の計算前に、それぞれのラインアイテムで切り捨て/切り上げが行われます。これにより、小数は料金にのみ適用されることになり、顧客への請求は整数単位の金額で行われます。
外税は、税率に応じて各ラインアイテムの金額に加算されます。税金の自動計算を有効にしている場合、外税は、請求書ごとの割引を含めた合計額に対して適用され、端数処理されます。ラインアイテムごとまたは請求書ごとのいずれかで税率を手入力する場合、端数処理の適用方法を選ぶことができます。ダッシュボード内の請求書設定ページで、個々のラインアイテムまたは請求書の小計に対して、税金の適用と端数処理を設定します。
curl https://api.stripe.com/v1/prices \
-u "sk_test_4eC39HqLyjWDarjtT1zdp7dc
:" \
-d product= \
-d unit_amount=2000 \
-d currency=usd \
-d "recurring[interval]"=month \
-d lookup_key=standard_monthly \
-d transfer_lookup_key=true
Edit a price
ダッシュボードまたは API で、価格に関する複数のプロパティを更新できます。たとえば、価格を有効にしたり解除したり、価格のメタデータを変更することができます。
API では価格の金額を変更できないことに注意してください。代わりに、新たな金額で新しい価格を作成し、その新しい価格の ID に切り替えて、古い価格を更新して無効にすることをお勧めします。
ダッシュボードで価格を変更するには、以下のようにします。
- その他 > 商品カタログ に移動します。
- 価格を変更する商品を探してクリックします
- 変更する価格を探して、オーバーフローメニュー () をクリックし、価格を編集をクリックします。
- 価格を変更します。この時点で別の価格を追加することができます。
- 保存をクリックします。
Archive a price
価格を無効にして、新しい請求書またはサブスクリプションに追加できないようにする場合は、その価格をアーカイブできます。価格をアーカイブする場合、その価格を使用する既存のサブスクリプションは、キャンセルされるまで有効なままになります。また、その商品を使用する既存の決済フォームへのリンクは無効化されます。
ダッシュボードで価格をアーカイブするには、以下のようにします。
- その他 > 商品カタログ に移動します。
- 変更する商品を探して、オーバーフローメニュー () をクリックします。
- 商品情報ページで、変更する価格を探して、その価格の横にあるオーバーフローメニュー () をクリックし、価格をアーカイブをクリックします。
価格のアーカイブを解除するには、以下のようにします。
- その他 > 商品カタログ に移動します。
- 変更する商品を探して、オーバーフローメニュー () をクリックします。
- 商品情報ページで、変更する価格を探して、その価格の横にあるオーバーフローメニュー () をクリックし、価格のアーカイブを解除をクリックします。
Delete a price
使用されたことがない価格のみを削除できます。あるいは、価格をアーカイブすることができます。
ダッシュボードで価格を完全に削除するには、以下のようにします。
- その他 > 商品カタログ に移動します。
- 変更する商品を探して、オーバーフローメニュー () をクリックします。
- 商品情報ページで、変更する価格を探して、その価格の横にあるオーバーフローメニュー () をクリックし、料金を削除をクリックします。
Display pricing information
商品と料金を作成した後、ウェブサイトに料金表を埋め込み、料金体系の情報を顧客に表示することができます。顧客がサブスクリプションを選択すると、決済フローに直接移動します。コードを記述することなく、ダッシュボードで設定、カスタマイズ、更新を直接行うことが可能です。