商品および価格を管理する
商品と価格を管理する方法をご紹介します。
ダッシュボードまたは API を使用して、商品と価格の作成と更新を行うことができます。
変動料金の作成といった高度なユースケースでは、API を使用する必要があります。商品や料金が多数ある場合や、Elements にカスタムの導入を構築する場合は、API を使用する必要があります。
- コードを作成せずに済ませたい場合や、商品と価格の種類が少ない場合には、ダッシュボードで商品と価格を作成して管理します。料金体系モデルをテスト環境で設定し、商品の詳細ページの本番環境にコピーボタンをクリックします。
- 商品および価格を作成・管理するには、API または Stripe CLI を使用します。API は本番環境向けの直接的な方法です。一方、Stripe CLI は、端末から直接 Stripe の導入を作成、テスト、管理する開発者向けツールです。
次の API ステップでは、例としてプロジェクト管理ダッシュボードを基本商品とする架空の SaaS コラボレーションツール (Togethere)を使用します。
商品をアーカイブする
商品を無効にして新しい請求書またはサブスクリプションに追加できないようにする場合は、その商品をアーカイブすることができます。商品をアーカイブしても、その商品を使用する既存のサブスクリプションは、キャンセルされるまで有効なままになりますが、その商品を使用する既存の決済フォームへのリンクは無効化されます。価格が関連付けられている商品を削除することはできませんが、アーカイブすることはできます。
価格を作成する
1 つの商品に対して 1 つまたは複数の価格を作成できます。たとえば、Togethere の「スターター」レベルを月額 10 USD、年額 100 USD、または 1 回限りの購入額 9 EUR で提供することができます。
注
価格の作成後は、その metadata
、nickname
、active
フィールドのみを更新できます。
デフォルトの価格を設定する
商品のデフォルトの価格は、顧客に提示する最も標準の価格です。たとえば、1 つの商品にシーズンセールの価格が複数設定される場合がありますが、デフォルトは、通常の (セール用ではない) 価格を表します。商品の価格が 1 つのみである場合は、必然的にその価格がデフォルトの価格と見なされます。デフォルトの価格は、active (有効) な Price である必要があります。
検索キー
企業の多くは、ウェブサイトに価格情報を掲示しています。これらの価格がハードコード化されていて、価格の変更を必要とする場合、その変更プロセスはたいてい手作業であり、新しいコードのデプロイが必要になります。このようなシナリオを管理しやすくするために、Price オブジェクトで lookup_key 属性を使用します。このキーを使用することで以下の処理が可能になります。
- フロントエンドでさまざまな価格をレンダリングする。
- レンダリングされた価格を使用して顧客に請求する。
価格を作成する際に、lookup_
を渡すことができます。
料金体系ページで月額 10 USD などのテキストをハードコード化してバックエンドで価格 ID を使用するのではなく、standard_
キーを使用して料金をクエリし、その結果をフロントエンドに表示できます。
注
パフォーマンスを改善するため、キャッシングレイヤーを追加して、価格の再読み込みは必要な場合のみ行うことをお勧めします。
顧客が登録や支払いのボタンをクリックしたら、上記の GET
リクエストからの価格を Subscriptions API に渡します。
これにより、複数の料金を表示できるようになります。新規ユーザーに対する請求を毎月 10 USD ではなく 20 USD に変更した場合、新しい料金を作成し、transfer_lookup_key=true を使用して検索キーをその新しい料金に転送するだけで済みます。
切り捨て/切り上げ
切り捨て/切り上げは、請求書のラインアイテムレベルで行われます。たとえば、unit_
で料金を作成し、その[料金]で quantity = 30
として月次サブスクリプションを作成した場合、数量に小数の金額を乗じた後に切り捨て/切り上げが適用されます。この例の場合、ラインアイテムで算出される金額は、0.
となり、2 セントに切り上げられます。複数のラインアイテムが存在する場合は、請求書の合計金額の計算前に、それぞれのラインアイテムで切り捨て/切り上げが行われます。これにより、小数は料金にのみ適用されることになり、顧客への請求は整数単位の金額で行われます。
外税は、税率に応じて各ラインアイテムの金額に加算されます。税金の自動計算を有効にしている場合、外税は、請求書ごとの割引を含めた合計額に対して適用され、端数処理されます。ラインアイテムごとまたは請求書ごとのいずれかで税率を手入力する場合、端数処理の適用方法を選ぶことができます。ダッシュボード内の請求書設定ページで、個々のラインアイテムまたは請求書の小計に対して、税金の適用と端数処理を設定します。
価格を編集する
ダッシュボードまたは API で、価格に関する複数のプロパティを更新できます。たとえば、価格を有効にしたり解除したり、価格のメタデータを変更することができます。
API では価格の金額を変更できないことに注意してください。代わりに、新たな金額で新しい価格を作成し、その新しい価格の ID に切り替えて、古い価格を更新して無効にすることをお勧めします。
価格をアーカイブする
価格を無効にして、新しい請求書またはサブスクリプションに追加できないようにする場合は、その価格をアーカイブできます。価格をアーカイブする場合、その価格を使用する既存のサブスクリプションは、キャンセルされるまで有効なままになります。また、その商品を使用する既存の決済フォームへのリンクは無効化されます。