Paypal サブスクリプションとインスタント支払い通知 (IPN) を使用して、サイトのサブスクライバーを処理しています。
ほとんどの場合、問題なく動作しますが、時折発生する問題が 1 つあります。
通常、ユーザーがサブスクリプションをキャンセルした場合、サイトへのアクセスを無効にする前に、「期間の終了」(subscr_eot) 通知を待ちます。
そのため、1 か月分を前払いしてすぐにキャンセルした場合でも、その月の残りの期間は引き続きアクセスできます (そうあるべきです)。
しかし、一部のユーザーは、次の場合にこの問題を抱えています。
- サブスクリプションをキャンセルする
- 「期間の終わり」に達する前に、彼らは再購読を決定します
- 最初のサブスクリプションの「期間の終わり」に達すると、私のアプリは通知を受け取り、「アカウントが無効になっています。もう一度サインアップしたい場合は、再登録できます.ここをクリックして購読してください。」
- 彼らは考えているので、これは彼らを混乱させます...それは奇妙です、私は1週間前のように購読したと思っていました(そして彼らはそうしました)。それで、彼らは再び購読します。現在、彼らは私のサイトに対して 2 つの同時実行サブスクリプションを持っており、1、2 か月でサポート メールを受け取ります (「今月は 2 回請求されましたね!」)。
そのため、これを修正する良い方法が見つかりませんでした。最良の解決策は、paypal に「この人はすでに再登録しましたか?」と尋ねる「期間終了」通知を受信したときに、追加の API 呼び出しを行うことだと思います。もしそうなら、そのメールを送信する必要はありません。しかし、この API 呼び出しを行う方法はまだ見たことがありません。
別の解決策は、キャンセル時にすぐにアカウントを無効にすることです (「subscr_cancel」通知) が、その後、別の怒っているサポート メールが届きます。
他の誰かがこれを解決しましたか?