これは、Webhook エンドポイントの設定が不適切な可能性があります。サブスクリプション期間が終了すると、Stripe から Webhook が送信され、プラグインがそれを使用してグループへの参加を解除し、その製品における既存顧客としてのユーザー登録を削除します(これにより、ユーザーは再度購入できるようになります)。
この設定は、以下の OP に従って行う必要があります:Discourse Subscriptions
サーバー側で確認する方法:
./launcher enter app
rails c
u = User.find_by_username(<username>)
c = DiscourseSubscriptions::Customer.where(user_id: u.id)
subscription = DiscourseSubscriptions::Subscription.where(customer_id: c.customer_id)
<username> を実際のユーザー名に置き換えることを忘れないでください。
もし subscription が [] を返す場合、別の問題が発生しています。しかし、値が返された場合、それは欠落している Webhook が原因である可能性が高いことを示しています。
ユーザーが再度製品を購入できるようにするために DiscourseSubscriptions::Subscription エントリを削除する方法:
subscription.count を実行して、subscription に値が 1 つだけ含まれていることを確認してください。返された値が 1 より大きい場合は、正しいサブスクリプションインスタンスを削除していることを確認するために、さらに詳しく調べる必要があります。間違ったものを削除すると、サブスクリプションデータが不整合な状態になり、予期せぬ動作を引き起こす可能性があります。
サブスクリプションが 1 つだけであることを確認したら、以下のコマンドを実行できます:
subscription.destroy_all
ここで subscription は、Rails コンソールで最初に実行した一連のクエリから返された値であることを覚えておいてください。
お役に立てれば幸いです!