LoginSignup
1
1

More than 1 year has passed since last update.

【GooglePlayアプリ内課金】定期購入のライフサイクル

Posted at

はじめに

google play アプリのアプリ内課金(以下、IAB)を実装したので、まとめてみました。
私はバックエンド担当のため、バックエンドの、また、1回限りのアイテムではなく定期購入についてのまとめとなります。
いくつかのトピックごとに記事にしているので他の記事もどうぞ。
初回となる本記事では、定期購入のライフサイクルについて書きたいと思います。

まとめ記事一覧

  1. 定期購入のライフサイクル
  2. 購入と解約のシーケンス
  3. Subscriptions and In-App Purchases API
  4. RTDN
  5. テスト

ライフサイクルについて

定期購入の契約から解約までのライフサイクルを解説します。また、定期購入の一時停止やユーザが支払いに失敗した際の状態遷移についてもまとめました。
参考: https://developer.android.com/google/play/billing/subscriptions#lifecycle

一般的な購入フロー

image.png

定期購入は、ユーザが解約するまで、自動的に更新され、更新時にユーザに請求されます。
IAB では、請求サイクルが終了するまでサービス提供することが期待されており、解約後も期限が切れるまではサービス提供期間となります。
更新時の請求に失敗すると、設定した猶予期間ののち、アカウント保留となり、サービス適用は打ち切られます。
アカウント保留中は、google で自動的に請求の再試行が行われ復帰するか、ユーザが手動で決済方法を修正することでアクティブに復帰します。
また、自動更新を一時的に停止する一時停止機能があります。

状態遷移

  • アクティブ
    • サービスを利用中の状態
  • 解約済
    • ユーザが解約後、自動更新が止まった状態
    • サービス提供は即時に停止されません
  • 期限切れ
    • サービス提供していない状態
  • 猶予期間
    • 自動更新が失敗したが、まだサービス提供している状態
  • アカウント保留中
    • 自動更新の支払い失敗によりサービス提供が停止している状態
    • 支払いが復旧し次第アクティブに戻る
    • 一定期間支払いが復旧ができないと期限切れとなる
  • 一時停止予約
    • 一時停止は、停止するとその場でサービス提供が停止するため、基本的には次回更新日から一時停止させることになり、その予約中の状態
  • 一時停止
    • ユーザは一時停止中はサービスを利用することができなくなります
    • 手動で再開するか、一時停止時に指定した、1週間から3か月の停止期間終了後に自動で再開します
    • 再開時にユーザに請求が行われます

定期購入の設定

定期購入の商品として設定できるものです

請求サイクル

  • 週単位、1か月、3か月、6か月、1年が選択可能
  • 週単位はキャリア決済だと利用不可

価格

お試し価格

  • 一定の期間の安価な初期価格、または、特定回数の定期購入額の減額を設定できる
  • 定期価格より安くなければならない
  • お試し価格が利用できる期間は、3日 ~ 1年

無料試用

  • 一定期間無料で利用できる
  • 請求期間への切り替えは自動で行われる
  • 商品ごとに1回の無料期間を設定できる
    • デフォルトでは、ユーザはアプリで1回(いづれかの定期購入商品で1度)しか利用できない
    • 商品ごとに1回に設定変更可能
  • 期間は3日以上
    • 試用期間は変更可能ですが、適用されるのは設定後の購入者から

Play Console ヘルプ 定期購入の作成

アップグレード・ダウングレード

購読中のプランをアップグレードないしはダウングレードする機能。基本的にアプリ側で実装する
変更時の配分プランをパラメータとして渡す必要がある
設定できる比例配分モードをは下記の通り

  • 日割り調整(デフォルト
  • 差額請求
  • 次回更新時から
  • 更新時のみ切り替え可能

挙動としては、定期購入を再購入する形となり、購入中の定期購入が期限切れになり、新しい定期購入と新しい購入トークンが作成される形となる

価格変更

購入済みの価格を変更する機能が提供されている

  • 値上げの場合
    • 新規ユーザは変更後価格
    • 既存ユーザは価格変更通知が飛び、一定期間内の同意が必要
    • 同意後の請求から自動で切り替えられる
    • 同意しなかった場合、期限経過後の請求日で自動解約される
  • 値下げの場合
    • 変更されたことが通知されるが、変更後の請求から自動で切り替えられる

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1