サブスクリプションを使用すると、自動更新で継続的なアクセスを販売できます。柔軟な請求サイクル、無料トライアル、プラン変更、アドオンを使用して、各顧客に合わせた価格設定を行います。
アップグレードとダウングレード
按分と数量の更新でプラン変更を管理します。
オンデマンドサブスクリプション
今すぐ命令を承認し、後でカスタム金額で請求します。
顧客ポータル
顧客がプラン、請求、キャンセルを管理できるようにします。
サブスクリプションWebhook
作成、更新、キャンセルなどのライフサイクルイベントに反応します。
サブスクリプションとは?
サブスクリプションは、顧客がスケジュールに従って購入する定期的な製品です。以下に最適です:- SaaSライセンス: アプリ、API、またはプラットフォームアクセス
- メンバーシップ: コミュニティ、プログラム、またはクラブ
- デジタルコンテンツ: コース、メディア、またはプレミアムコンテンツ
- サポートプラン: SLA、成功パッケージ、またはメンテナンス
主な利点
- 予測可能な収益: 自動更新による定期請求
- 柔軟なサイクル: 月次、年次、カスタム間隔、トライアル
- プランの柔軟性: アップグレードとダウングレードのための按分
- アドオンと席数: オプションの数量化可能なアップグレードを添付
- シームレスなチェックアウト: ホストされたチェックアウトと顧客ポータル
- 開発者ファースト: 作成、変更、使用状況追跡のための明確なAPI
サブスクリプションの作成
Dodo Paymentsダッシュボードでサブスクリプション製品を作成し、チェックアウトまたはAPIを通じて販売します。製品をアクティブなサブスクリプションから分離することで、価格設定のバージョン管理、アドオンの添付、パフォーマンスの独立した追跡が可能になります。サブスクリプション製品の作成
ダッシュボードでフィールドを設定して、サブスクリプションの販売、更新、請求の方法を定義します。以下のセクションは、作成フォームで見る内容に直接対応しています。製品の詳細
- 製品名 (必須): チェックアウト、顧客ポータル、請求書に表示される名前。
- 製品説明 (必須): チェックアウトと請求書に表示される明確な価値声明。
- 製品画像 (必須): PNG/JPG/WebP 最大3MB。チェックアウトと請求書で使用されます。
- ブランド: 特定のブランドに製品を関連付けてテーマやメールに使用します。
- 税カテゴリ (必須): 税ルールを決定するためにカテゴリ(例: SaaS)を選択します。
価格設定
- 価格タイプ: サブスクリプション(このガイド)。代替は単一支払いと使用ベースの請求です。
- 価格 (必須): 通貨付きの基本的な定期価格。
- 適用可能な割引 (%): 基本価格に適用されるオプションのパーセント割引; チェックアウトと請求書に反映されます。
- 毎回の支払いの繰り返し (必須): 更新の間隔、例: 毎月1回。サイクル(月または年)と数量を選択します。
- サブスクリプション期間 (必須): サブスクリプションがアクティブな合計期間(例: 10年)。この期間が終了すると、更新は停止します(延長しない限り)。
- トライアル期間日数 (必須): 日数でトライアルの長さを設定します。トライアルを無効にするには0を使用します。最初の請求はトライアルが終了すると自動的に発生します。
- アドオンを選択: 基本プランと一緒に顧客が購入できる最大3つのアドオンを添付します。
アドオンは、席数やストレージなどの数量化可能な追加に最適です。顧客が変更したときに許可される数量と按分の動作を制御できます。
高度な設定
- 税金を含む価格設定: 適用される税金を含む価格を表示します。最終的な税金計算は顧客の所在地によって異なります。
- ライセンスキーを生成: 購入後に各顧客にユニークなキーを発行します。ライセンスキーガイドを参照してください。
- デジタル製品の配信: 購入後にファイルやコンテンツを自動的に配信します。デジタル製品の配信で詳細を学びます。
- メタデータ: 内部タグ付けやクライアント統合のためにカスタムキー–バリューのペアを添付します。メタデータを参照してください。
サブスクリプショントライアル
トライアルを使用すると、顧客は即時の支払いなしでサブスクリプションにアクセスできます。最初の請求はトライアルが終了すると自動的に発生します。トライアルの設定
製品の価格設定セクションでトライアル期間日数を設定します(無効にするには0を使用)。サブスクリプションを作成する際にこれを上書きできます:
トライアルステータスの検出
サブスクリプションがトライアル中かどうかを判断するには、サブスクリプションの支払いリストを取得します。金額が0の支払いが正確に1件ある場合、サブスクリプションはトライアル期間中です:トライアル期間の更新
next_billing_dateを更新してトライアルを延長します:
サブスクリプションプランの変更
プラン変更により、サブスクリプションをアップグレードまたはダウングレードしたり、数量を調整したり、異なる製品に移行したりできます。各変更は、選択した按分モードに基づいて即時の請求をトリガーします。按分モード
プラン変更時に顧客がどのように請求されるかを選択します:prorated_immediately
現在の請求サイクルの残り時間に基づいて按分された金額を請求します。未使用の時間を考慮した公正な請求に最適です。
difference_immediately
価格差を即時に請求します(アップグレード)または将来の更新のためにクレジットを追加します(ダウングレード)。シンプルなアップグレード/ダウングレードシナリオに最適です。
difference_immediatelyを使用したダウングレードからのクレジットは、サブスクリプションスコープであり、将来の更新に自動的に適用されます。これは、顧客クレジットとは異なります。full_immediately
残りの時間を無視して、新しいプランの全額を即時に請求します。請求サイクルをリセットするのに最適です。
アドオンを伴うプランの変更
プラン変更時にアドオンを修正します。アドオンは按分計算に含まれます:プラン変更は即時の請求をトリガーします。請求に失敗した場合、サブスクリプションは
on_holdステータスに移行する可能性があります。subscription.plan_changed webhookイベントを介して変更を追跡します。プラン変更のプレビュー
プラン変更を確定する前に、正確な請求額と結果のサブスクリプションをプレビューします:プラン変更プレビューAPI
プラン変更を確定する前にプレビューします。
サブスクリプションの状態
サブスクリプションはライフサイクルの中で異なる状態にあることがあります:active: サブスクリプションはアクティブで、自動的に更新されますon_hold: サブスクリプションは支払い失敗により一時停止されています。再活性化には支払い方法の更新が必要ですcancelled: サブスクリプションはキャンセルされ、更新されませんexpired: サブスクリプションは終了日を迎えましたpending: サブスクリプションは作成中または処理中です
保留状態
サブスクリプションは次の理由でon_hold状態に入ります:
- 更新支払いが失敗した場合(残高不足、カードの期限切れなど)
- プラン変更の請求が失敗した場合
- 支払い方法の承認が失敗した場合
保留からの再活性化
on_hold状態からサブスクリプションを再活性化するには、支払い方法を更新します。これにより自動的に:
- 残りの未払い金の請求を作成します
- 請求書を生成します
- 新しい支払い方法を使用して支払いを処理します
- 支払いが成功した場合、サブスクリプションを
active状態に再活性化します
on_holdサブスクリプションの支払い方法を正常に更新した後、payment.succeededに続いてsubscription.active webhookイベントを受け取ります。API管理
サブスクリプションの作成
サブスクリプションの作成
POST /subscriptionsを使用して、製品からプログラム的にサブスクリプションを作成します。オプションのトライアルとアドオンがあります。APIリファレンス
サブスクリプション作成APIを表示します。
サブスクリプションの更新
サブスクリプションの更新
PATCH /subscriptions/{id}を使用して、数量を更新したり、期間終了時にキャンセルしたり、メタデータを変更したりします。APIリファレンス
サブスクリプションの詳細を更新する方法を学びます。
プラン変更(按分)
プラン変更(按分)
按分コントロールを使用して、アクティブな製品と数量を変更します。
APIリファレンス
プラン変更オプションを確認します。
オンデマンド料金
オンデマンド料金
オンデマンドサブスクリプションに対して、特定の金額をオンデマンドで請求します。
APIリファレンス
オンデマンドサブスクリプションを請求します。
リストと取得
リストと取得
GET /subscriptionsを使用してすべてのサブスクリプションをリストし、GET /subscriptions/{id}を使用して1つを取得します。APIリファレンス
リストと取得APIを参照してください。
使用履歴
使用履歴
メーターまたはハイブリッド価格モデルの記録された使用状況を取得します。
APIリファレンス
使用履歴APIを参照してください。
支払い方法の更新
支払い方法の更新
サブスクリプションの支払い方法を更新します。アクティブなサブスクリプションの場合、これは将来の更新のために支払い方法を更新します。
on_hold状態のサブスクリプションの場合、残りの未払い金の請求を作成することでサブスクリプションを再活性化します。APIリファレンス
支払い方法を更新し、サブスクリプションを再活性化する方法を学びます。
一般的なユースケース
- SaaSとAPI: 席数や使用量のための階層的アクセス
- コンテンツとメディア: 月次アクセスと導入トライアル
- B2Bサポートプラン: プレミアムサポートアドオン付きの年間契約
- ツールとプラグイン: ライセンスキーとバージョン管理されたリリース
統合例
チェックアウトセッション(サブスクリプション)
チェックアウトセッションを作成する際に、サブスクリプション製品とオプションのアドオンを含めます:按分を伴うプラン変更
サブスクリプションをアップグレードまたはダウングレードし、按分の動作を制御します:期間終了時にキャンセル
即時のアクセス終了なしにキャンセルをスケジュールします:オンデマンドサブスクリプション
オンデマンドサブスクリプションを作成し、必要に応じて後で請求します:アクティブなサブスクリプションの支払い方法を更新
アクティブなサブスクリプションの支払い方法を更新します:保留からサブスクリプションを再活性化
支払い失敗により保留になったサブスクリプションを再活性化します:RBI準拠の命令を伴うサブスクリプション
UPIおよびインドのカードサブスクリプションは、特定の命令要件を伴うRBI(インド準備銀行)規制の下で運営されています:命令の制限
命令の種類と金額は、サブスクリプションの定期的な請求に依存します:- ₹15,000未満の請求: ₹15,000 INRのオンデマンド命令を作成します。サブスクリプション金額は、サブスクリプションの頻度に従って定期的に請求され、命令の制限まで請求されます。
- ₹15,000以上の請求: 正確なサブスクリプション金額のサブスクリプション命令(またはオンデマンド命令)を作成します。
アップグレードとダウングレードの考慮事項
重要: サブスクリプションをアップグレードまたはダウングレードする際は、命令の制限を慎重に考慮してください:- アップグレード/ダウングレードにより請求金額が₹15,000を超え、既存のオンデマンド支払い制限を超える場合、取引手数料が失敗する可能性があります。
- その場合、顧客は支払い方法を更新する必要があるか、正しい制限で新しい命令を確立するために再度サブスクリプションを変更する必要があります。
高額請求の承認
₹15,000以上のサブスクリプション請求の場合:- 顧客は銀行から取引を承認するように求められます。
- 顧客が取引を承認しない場合、取引は失敗し、サブスクリプションは保留になります。
48時間の処理遅延
処理タイムライン: インドのカードおよびUPIサブスクリプションの定期的な請求は、独自の処理パターンに従います:- 請求は、サブスクリプションの頻度に従って予定された日に開始されます。
- 顧客の口座からの実際の控除は、支払い開始から48時間後にのみ発生します。
- この48時間のウィンドウは、銀行APIの応答に応じて最大2-3時間延長される場合があります。
命令キャンセルウィンドウ
48時間の処理ウィンドウ中:- 顧客は銀行アプリを通じて命令をキャンセルできます。
- 顧客がこの期間中に命令をキャンセルした場合、サブスクリプションはアクティブのままです(これはインドのカードおよびUPI自動支払いサブスクリプションに特有のエッジケースです)。
- ただし、実際の控除が失敗する可能性があり、その場合、サブスクリプションは保留されます。
- 支払い確認まで特典のアクティベーションを遅らせる
- グレース期間や一時的なアクセスを実装する
- 命令キャンセルのためのサブスクリプションステータスを監視する
- アプリケーションロジックでサブスクリプション保留状態を処理する
ベストプラクティス
- 明確な階層から始める: 明確な違いのある2〜3のプラン
- 価格を伝える: 合計、按分、次回の更新を表示
- トライアルを慎重に使用する: 時間だけでなくオンボーディングで変換する
- アドオンを活用する: 基本プランをシンプルに保ち、追加をアップセルする
- 変更をテストする: テストモードでプラン変更と按分を検証する
サブスクリプションは、定期収益の柔軟な基盤です。シンプルに始め、徹底的にテストし、採用、解約、拡張の指標に基づいて反復してください。