| 概要 | Discourse Subscriptions プラグインを使用すると、サイト管理者は Discourse インスタンス上のグループへのアクセス権を付与する、定期購入および一括購入のサブスクリプションを販売できます。 | |
| インストールガイド | このプラグインは Discourse コアにバンドルされています。プラグインを個別にインストールする必要はありません。 |
Discourse Subscriptions プラグインを使用すると、ユーザーがゲート付きコンテンツにアクセスするために支払いを行うことができる、一括購入および定期購入のサブスクリプションを作成できます。これは、コミュニティのホスティングコストを資金調達する優れた方法となります。
機能
Discourse Subscriptions プラグインは以下の機能をサポートしています:
- 管理パネルから新しい製品とプランを作成
- 管理パネルからサブスクリプションをキャンセルおよび返金
- 一括購入または定期購入のサブスクリプションプランを作成
- 定期購入に無料トライアルを追加
- SCA/3D Secure のサポート
- サブスクライブ/キャンセル時にプラングループからユーザーを追加/削除
- ユーザープロフィールからサブスクリプションをキャンセル
- サブスクリプション期間終了時のサブスクリプションキャンセル
- Stripe Checkout のオプションサポート
- 自動販売税の計算と徴収
- ユーザーは個別のサブスクリプションのためにカード情報を更新できます
上部ナビゲーションにある「購読」ボタンをクリックすると、サブスクリプションページ /s に移動し、サイト用に構成したサブスクリプションの一覧が表示されます:
ユーザーが特定のプランの「購読」ボタンのいずれかをクリックすると、そのプランの支払いページが開きます:
ユーザーが支払い詳細と住所を入力し、「購読」をクリックすると、「ありがとうございます!」メッセージが表示され、請求ページに移動します:
ユーザーはまた、選択したグループに自動的に追加されるため、どのユーザーが購読したかを簡単に確認でき、そのグループのみが閲覧できるカテゴリでゲート付きコンテンツを提供できます。
用語
- サブスクリプション - サブスクリプションは、コミュニティ内のコンテンツへのアクセスを制御できる定期支払いプランです。サブスクリプションが作成または削除されると、ユーザーはサブスクリプションプランに関連付けられたユーザーグループに追加または削除されます。サブスクリプションは、製品とプランで構成されます。
- 製品 - Stripe の用語では、製品はあなたが販売しているものを指します。製品には1つ以上のプランを含めることができます。
- 製品に説明を追加するには、「description」という名前のメタデータフィールドを追加し、それを使用してください。Markdown を使用できます。
- プラン - プランには価格、定期サイクルが含まれ、購読者がアクセスできるグループに関連付けられます。
Stripe のプライベートキーは常に安全に保管してください。
Discourse のインスタンスをシャットダウンした場合、このプラグインをアンインストールした場合、またはサイトがオフラインになった場合、Stripe はサブスクリプションがキャンセルされるまで、お客様のサービスに対して顧客に請求し続けます。
設定
- プラグインをインストールして有効にする
- 支払いゲートウェイ(Stripe)を設定
- Stripe で Webhook とイベントを設定
- 管理 > プラグイン > インストール済み > サブスクリプション > 設定 で Stripe キー(公開鍵、秘密鍵、Webhook シークレット)を追加
/admin/site_settings/category/discourse_subscriptions?filter=plugin%3Adiscourse-subscriptions. - 購入を通じて参加する購読者用のグループを作成
- 管理 > プラグイン > サブスクリプション で製品とプランを作成
- 利益を得る!
支払いゲートウェイの設定
まず、Stripe 支払いゲートウェイのアカウントが必要です。始めるには、テストモードでアカウントを設定し、実際の取引を行ったり銀行口座を設定したりすることなく、すべてがどのように機能するかを確認できます。プラグインにはテストモードのトグルはありません。代わりに、開発者キー(pk_test、sk_test で始まる)を使用してください。
Stripe アカウントで Webhook とイベントを設定
Webhook はサブスクリプションのキャンセルを完全に機能させるために必要です。正しく設定されていることを確認してください。
Stripe にアカウントを取得したら、Stripe にウェブサイトのアドレスを伝える必要があります。これにより、特定のトランザクションについて通知を受け取ることができます。これは、Stripe ダッシュボードの エンドポイント > URL で入力できます。
Webhook アドレス:[your server address]/s/hooks – ここで [your server address] は Discourse インストールの URL です。
また、Webhook URL を介して Stripe が通知すべきイベントを伝える必要があります。
現在、Discourse Subscriptions は以下のイベントに応答します:
customer.subscription.deletedcustomer.subscription.updatedcheckout.session.completed
Stripe API および Webhook キーをプラグイン設定に追加
Stripe はウェブサイトと通信する権限を持っている必要があります。これを行うために、Stripe はプライベートおよびパブリックの API キー と 署名シークレット を公開します。
Webhook を承認するには、Stripe の設定ページ(開発者向け)に API キーと Webhook シークレットを追加します。
本番環境のキーを追加すると、実際の支払いが行われます。テストする場合は、
View test dataモードに切り替え、開発者セクションでpk_testおよびsk_testキーを取得してください。
Stripe アカウント設定で確認してください:
これらを 管理 > プラグイン > インストール済み > サブスクリプション > 設定 の適切な設定の下に追加します /admin/site_settings/category/discourse_subscriptions?filter=plugin%3Adiscourse-subscriptions.
Discourse でユーザーグループを設定
ユーザーが Discourse アプリケーションに正常に購読すると、クレジットカード取引が処理された後、ユーザーグループに追加されます。ユーザーをユーザーグループに割り当てることで、ウェブサイト上でユーザーがアクセスできるコンテンツを管理できます。ユーザーグループは Discourse の中核的な機能であり、このプラグインはプランに関連付けられたグループからユーザーを追加および削除すること以外、グループに対して何もしません。
1つ以上の製品をプランで作成
管理 > プラグイン > サブスクリプション で、新しい製品を追加をクリックします。製品を保存したら、それにプランを追加できます。プランの価格と課金間隔は、作成後に変更できないことに注意してください。これは、サブスクリプション管理に関する混乱を避けるためです。
Stripe ダッシュボード を確認すると、それらの製品とプランがすべてリストされているのがわかります。Discourse Subscriptions はローカルにそれらを作成しません。それらは Stripe で作成されます。
テスト
以下のクレジットカード番号でテストしてください:
- 4242 4242 4242 4242
- 4111 1111 1111 1111(認証不要)
- 4000 0027 6000 3184(認証必要)
さらに多くのテストカード番号については:Test card numbers | Stripe Documentation
/s にアクセスし、いくつかのテストトランザクションを入力してください。
本番環境への移行
本番環境に移行する準備ができたら、API キーと Webhook シークレットキーを本番環境用に変更してください。本番モードで新しい製品とプランを作成する必要があります。
Stripe の Webhook が適切に設定されていない場合、および定期支払いが何らかの理由(期限切れのクレジットカードなど)で処理できない場合、ユーザーは引き続きグループにアクセスできることに注意してください。Stripe がサブスクリプションを自動的にキャンセルするようにするには、失敗した支払いの管理 設定を以下の画像と同様に設定し、上記のように Webhook を構成してください。
支払い情報の更新
ユーザーは、請求ページにアクセスし、サブスクリプションの横にある編集ボタンをクリックすることで、個別のサブスクリプションに使用されるカードを更新できます。これにより、この画面が開きます:
Stripe Checkout と Stripe Pricing Tables の併用
サブスクリプションプラグインの製品ページとチェックアウトページを置き換え、Stripe Checkout を Stripe Pricing Tables と一緒に使用することも選択できます。
Stripe ダッシュボードで:
- Discourse で製品を作成した後、製品 > 製品カタログ に移動
- 価格表に含めたい製品をクリック
製品を編集をクリックその他のオプションをクリックし、メタデータの下に以下を入力:- キー:
group_name - 値: Discourse 上のグループ名(例:
trust_level_0)
- キー:
製品を更新をクリックして保存
グループ名が Discourse の
User_Groupsで選択されたグループと一致していることを確認してください
Stripe 価格表の作成
- 製品 > 価格表に移動
- 新しいテーブルを作成し、先ほど作成した製品を追加
- テーブルを公開した後、埋め込みコード内にある価格表 ID をコピーします(
prctbl_...で始まります) - 価格表 ID を
discourse_subscriptions_pricing_table_idに貼り付け、サブスクリプション価格表設定を有効にします。 - 緑色のチェックマークをクリックして両方の設定を保存します。
推奨ステップ:
Stripe 内で価格表を設定する際、チェックアウト完了後にユーザーをサイトにリンクさせることをお勧めします。そうしないと、ユーザーはサイトへのリンクがない Stripe の確認ページにとどまります。
サブスクリプションの場合、https://<your-site>/my/billing/subscriptions へのリダイレクトが適切な選択です。一括支払いの場合、https://<your-site>/my/billing/payments に直接リンクすることもできます。
自動販売税の徴収
自動販売税の徴収を有効にするには、discourse_subscriptions_enable_automatic_tax のサイト設定ボックスをチェックします。
これを有効にしても、Stripe インスタンスが正しく設定されていない場合、ユーザーはチェックアウトプロセス完了後にこのポップアップを表示する可能性があります:
詳細についてはこちらのガイドがありますが、プラグインが適切な automatic_tax[enabled]=true パラメータを渡しているため(ステップ 5)、行うべきことはほとんどありません。
登録(ステップ 4)も設定してください:
以下は、税金が自動的に徴収されたことを示す Stripe の Discourse サブスクリプションプラグイントランザクションの例です:
設定
| 名前 | 説明 |
|---|---|
| discourse subscriptions enabled | Discourse Subscriptions プラグインを有効にします。 |
| discourse subscriptions extra nav subscribe | 主要ナビゲーションに購読ボタンを表示します |
| discourse subscriptions public key | Stripe 公開鍵 |
| discourse subscriptions secret key | Stripe 秘密鍵 |
| discourse subscriptions webhook secret | Stripe Webhook シークレット |
| discourse subscriptions currency | デフォルト通貨コード。サブスクリプションプラン作成時に上書きできます。 |
| discourse subscriptions campaign enabled | このコミュニティへの金銭的支援を促進するキャンペーンバナーを有効にします。 |
| discourse subscriptions campaign goal | サポートキャンペーンの数値目標(購読者数または調達額)。 |
| discourse subscriptions campaign type | 実行するキャンペーンの種類を選択します(購読者数または月間調達額)。 |
| discourse subscriptions campaign banner location | キャンペーンバナーの場所を選択します(上部またはサイドバー)。 |
| discourse subscriptions campaign banner bg image | キャンペーンバナーの背景として使用するカスタム画像をアップロードします。 |
| discourse subscriptions campaign banner shadow color | キャンペーンバナーのドロップシャドウの色を選択します。 |
| discourse subscriptions campaign show contributors | 最新のサブスクリプション製品購入者のアバターを表示します。 |
| discourse subscriptions campaign product | キャンペーンのボタンをクリックした際に支援者に送信する Stripe 製品 ID。この設定が空白の場合、支援者はメイン製品ページにリダイレクトされます。 |
| discourse subscriptions campaign grant | ユーザーにサブスクリプションの無料1ヶ月を付与します |
| discourse subscriptions pricing table id | 埋め込みコードからの Stripe 価格表 ID |
| discourse subscriptions pricing table enabled | Stripe 価格表の使用を有効にし、既存の購読ページを置き換えます |
| discourse_subscriptions_enable_automatic_tax | 販売税の徴収を有効にするかどうかを切り替えます。Stripe でのいくつかの設定が必要です。 |
| discourse_subscriptions_enable_verbose_logging | デバッグを支援するためにより詳細なログを有効にします。本番環境で永久に有効にしたままにしないでください。 |
ホスティングサービスをご利用ですか? このプラグインは、当社の Pro、Business、Enterprise のホスティングプランで利用可能です Subscriptions | Discourse - Civilized Discussion















