見出し画像

解約率を改善するという Google Play 定期購入の 「一時停止」に対応した #Zaim

Android アプリ開発者のみなさん、こんにちは。Zaim Android チームの ishikawy です。

今回は Google Play の定期購入の専用機能に追加された「一時停止」に対応した話を書きます。Google の勉強会で聞いたところによると、「一時停止機能を実装すると解約率を 2 割程度下げられる想定」とのことで、定期購入を辞める抑止力になる効果が期待できます。

定期購入の「一時停止」とは

ユーザー側から購読している定期購入を一時的に停止できます。停止期間はユーザーが 1 か月から 3 か月の間で選べ、直近の有効期間が終わった時点から停止になります。指定した停止期間が終了すると、自動的に定期購入は再開します。

画像4

アプリ側での開発は不要ですが(※UI 対応などは必要)、Google Play Console から設定を変えることと、サーバー側の実装が必要です。

以下、具体的な手順をご紹介します。

管理画面で「一時停止」機能を有効にする

定期購入の一時停止は、デフォルトでは有効になっていません。有効化は Google Play Console の「設定」から可能です。これはアプリの定期購入に共通したフラグで、購読アイテムごとには設定できません。

1. Google Play Console にログイン
2. アプリを選択し [ストアでの表示] > [アプリ内アイテム] > [定期購入] へ
3. [定期購入の設定] を展開
4. [一時停止を有効にする] チェックボックスをオン

また、「一時停止」を有効にするには「アカウントの一時停止」も有効にする必要があるので両方有効にします。

画像2

ユーザー側から定期購入を「一時停止」する

設定の反映が完了すると、ユーザー側から見える Google Play の定期購入の画面に「支払いを一時停止」というリンクが現れます。

画像2

これをタップして停止期間を選択すると、その終了日まで定期購入は停止になります。ユーザーには停止させたタイミング、復帰するタイミングで Google から通知メールが送られます。

サーバー側で「一時停止」状態を判定する

最後にサーバー側で、ユーザーの定期購入のステータス変化をキャッチし、一時停止の状態であれば Zaim 側の有料機能をオフにする必要があります。

方法としては(1)リアルタイムデベロッパー通知を使いリアルタイムに検知する、(2)定期バッチにより定期購入の有効性を判断する、の 2 パターンがあります。今回、Zaim では実装のスピードを優先し、後者の方法を採用しました。

公式サイトにある通りですが、

expiryTimeMillis が過去で autoResumeTimeMillis 未来であれば一時停止中である、つまり「有料機能を使えなくする」

expiryTimeMillis と autoResumeTimeMillis の両方に将来の日付であればユーザーが一時停止を保留にした、つまり「有料機能を使えるようにする」

という部分がポイントになるかと思います。

対応して初めて分かった注意点

実装自体は比較的シンプルでしたが、実際に対応を進めた所、以下の点に戸惑いがありました。

(1)年間の定期購入は一時停止できない

公式サイトにある通り、年間の定期購入は一時停止できません。

(2)一時停止の有効化はタイムラグがある

定期購入の停止を有効にしても、アプリ側にはすぐに反映されないのでご注意ください。私が試したときは、およそ半日かかりました。

(3)ユーザーによる一時停止は年 3 回まで

年 3 回に渡り繰り返し一時停止を実行した場合、そのユーザーは以下のような画面となり、一時停止を選べなくなります。

画像3

(4)テスト環境のみの一時停止の有効化は不可

この一時停止の機能は、テスト環境だけ有効にはできません。つまり、デバッグするためには本番環境としても反映する必要があり、実際に使っているユーザーからも一時停止が操作できてしまう状態になります…。

このため Zaim ではテストの日程をあらかじめ決め、本番の定期バッチが動く前にテスト環境でテストを終わらせ、その日のうちにサーバー側の処理を反映させました。

終わりに

今回、一時停止の機能が追加されたことで、「解約まではするつもりはないけれども、ちょっと一回ストップしたい」というニーズに応えられるようになりました。

効果測定はまだこれからですが、「定期購入で得られる機能は、今すぐ有用ではないかも」と解約以外の選択肢を提供しておくのはユーザーさんにとってのメリットはあると思われるので、一時停止まだ有効化していない、存在を知らなかった、という方は有効化を検討してみてはいかがでしょうか。

サービスを便利にしたい!継続率を上げたい!という方、お待ちしています


この記事が気に入ったらサポートをしてみませんか?