くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

RevenueCat入門 その17 | サブスク運用のあれこれ

前回の続き。Subscription Guidanceがあったので、読んでおく(*´ω`*)

Subscription Guidance

章立てとしてはこんな感じ

  • Free Trials & Promo Offers
    • トライアルや特典の話。各ストアでの処理が解説
  • Billing Issues & Grace Periods
    • 請求/決済の問題と猶予期間について
  • Upgrades, Downgrades, & Management
    • プラン変更やキャンセル、払い戻しについて
  • Changing Prices
    • サブスクの価格変更について
  • Handling Refunds
    • 購入の払い戻しについて
  • Google Prepaid Plans

支払い問題と猶予

各ストアでの対応状況はこんな感じ。

Store Required? Duration
App Store Optional Customizable
Google Play Optional Customizable
Stripe Optional Customizable
Amazon ❌ Not supported N/A

Encountering Billing Issues

支払い方法が無効や期限切れの場合、サブスクの購入や自動更新ができない。
この請求に関する問題が発生すると、管理画面やwebhookに送られる。
RevenueCatが送信する請求問題イベントは1つだけ

Entering a Grace Period

支払いが失敗しても、猶予期間の間は、購入状態を維持する。
猶予期間が過ぎると、キャンセル扱いになる。


プラン変更/解約

一部はRevenueCat経由で操作できるけど、それ以外は顧客がストアで直接操作する必要がある。

Upgrade or Downgrade a Subscription

アップグレード/ダウングレードなどのプラン変更について

Cancelling Subscriptions

サブスクのキャンセル/解約について

managementURLに各ストアのURLがあるため、iOS/Androidであれば、
このリンク先を表示するのが便利。

また、RevenueCat上でユーザを削除しても、サブスクは解約されないので注意


価格変更

各ストアで価格を変更した場合、顧客は新しい価格にオプトインする必要がある。
もしオプトインしない場合、各ストア側からキャンセルされる場合がある。
(変更した価格への反映は、24時間ほどかかるらしい)

App Store Price Changes

iOSでは、値上げすると、影響を受ける顧客にメールとプッシュ通知を送信し、
新しい価格への同意を求める場合がある。小規模・高頻度の場合はオプトイン不要な場合もある。

iOS13.4+/iPadOS13.4+では、メッセージシートが自動表示され、
新しい価格に同意を得ることができる。同意しない場合、キャンセルとなる。

既存のサブスクを廃止し、新しいサブスクを追加することで、
値上げすることもできるが、この場合は、同意が必要ない。

値下げの場合は、同意は不要で、更新時に適用される。

Appleのガイドは、このあたり

RevenueCatでは、購入時の価格を追跡しているが、
ダッシュボード上では、新規購入したときの価格を表示する。

platform server notificationsのv2やApp Store Connect API Keyを設定することで、
価格変更の検出を有効にでき、正確な取引価格を保つことができる。

Google Play Price Changes

Google Playは個別の取引価格を送信しないため、
新規購入したときの価格のままであると想定して記録される。
既存の定期購入者には、そのままの価格を維持する場合は問題がない。

既存のサブスクの価格を変更すると、以下の動きになる

  • 新規のユーザは、新しい価格
  • 既存のユーザには、価格変更の7日後にメールと通知が送られる 30日以内に価格変更に同意しないと、キャンセル扱いになる
  • 値下げの場合、通知が送信され、次回更新日に適用される

Googleのガイドは、このあたり

返金対応

各ストアで対応方法が異なる


以上!! 運用するうえで必要なのがまとまってた。。 ありがたい。。。(*´ω`*)