こんにちは、モバイルクライアントグループの明渡です。
2年近く前にStudyplus iOS版のサブスクリプションを実装した際、Appleの課金テスト用Sandboxアカウントが扱いづらかったのですが、iOS 14から改善されていたことを最近知りました。 途中解約ができるようになったうえ、反映に時間がかかるもののお試し資格のリセットまで可能になっており、アプリ開発者に優しくなったのだなと感動しました。
今回は、1月25日にリリースしたStudyplus有料版でお試し期間に対応するにあたり考慮した、Studyplus iOS版でのお試し利用資格判定についてを中心にお話しします。
Studyplus有料版とは
もともとStudyplus Proというサブスクリプションを提供していたのですが、そちらの内容にStudyplusブック読み放題を加えたプレミアムプランをリリースしました。 これを機にStudyplus Proはベーシックプランへ名称を変更し、これらをまとめてStudyplus有料版として提供することとなりました。
プレミアム・ベーシック両プラン共に、それぞれ1ヶ月・1年単位で購入できます。 また、プレミアムプランのみ1週間無料トライアルが可能です。
Studyplusブックについての詳細が気になる方は、以下をご覧ください。
iOSアプリのサブスクリプション
お試し利用できるようにするには
iOSアプリでサブスクリプションへお試し期間を設けるには、App Store Connectで該当アイテムへお試しオファーを設定する必要があります。
設定できる支払いモードや期間、設定方法についてはApple Developerの公式ドキュメントをご確認ください。 日本語で親切丁寧に記載されています。
Studyplusでは、Studyplusブック読み放題を含むプレミアムプランで、1ヶ月プラン・1年プラン共に1週間の無料トライアルを設定しました。
お試し利用資格の判定
上記Appleの公式ドキュメントのうち「利用資格を判断する」項目に記載の通り、現在ログインしているApple IDのレシートを解析して判定を確認する必要があります。
Studyplus iOS版ではレシート検証方法のドキュメントに記載の警告に則り、サーバー側でレシート検証を依頼していました。 よって、今回の利用資格判定についてもサーバー側で新たなAPIを作成してもらい、対応することとなりました。
お試し利用資格の判定が必要な理由
Studyplus iOS版ではお試し利用が可能な場合、キャプチャのように「まずは7日間、無料トライアル!」とお試し可能な旨を表示しています。
お試し利用の可否判定については、Appleの設定手順ドキュメント、自動更新サブスクリプションのお試しオファーの設定に以下の記載があります。
App 内でお試しオファーを表示することもできます。App 内でオファーを表示する場合は、レシート検証で資格を判断することで、対象となるカスタマーだけにオファーを表示するようにしてください。
つまり、現在サインイン中のApple IDでお試し利用資格を喪失している場合、お試し可能な旨を表示してはいけないと理解できます。 お試し可能な旨の文言について表示・非表示を切り替えるため、レシート検証を伴うお試し利用資格判定を実装しました。
Studyplus Android版のお試し利用資格判定
Androidアプリについては、ログイン済のGoogleアカウントに無料試用資格があるかを判定する方法がありません。 Studyplus Android版はお試しできる旨を条件問わず固定で表示しつつ、サブスクリプションアイテム下の注意書きに初回購入時のみ適用される旨の注意書きをしています。
正直なところ、固定表記できた方がアプリ開発者としては実装がシンプルになり嬉しいです。 しかしながら、ユーザーとしてはお試しできないならお試しできる旨について記載のない方が分かりやすいので、ちょっと複雑な気持ちです。
Studyplusサービスとしてのサブスクリプション
お試し利用可能なユーザーとは
Studyplusでは、iOS・Android版共に各プラットフォームのアプリ内課金システムによりサブスクリプションを提供しています。
このため、Studyplusサービスのアカウント単位でお試し利用したことがあるかどうかは関係なく、利用端末でサインイン済みの各プラットフォームアカウントに利用資格があればお試し利用が可能です。
例えば、ログイン中のサービスアカウントで過去にGoogleアカウントを使ってAndroid版からお試し利用したことがあったとします。 そうするとGoogleアカウントで再度お試しはできないですが、Appleアカウントでお試し利用資格を満たしていれば、iOS版でお試し利用ができてしまいます。
複数プラットフォームにわたりアプリ内課金を実装する場合、現在サインイン中のプラットフォームで購入時にお試し利用資格を操作する方法はありません。 上記の例だと、Android版で過去にお試し利用済みだからといって、新たに利用を始めたiOS版にてサインイン済みのApple IDでお試し利用資格を取り消せません。
1個のサービスアカウントで複数回お試しできるケースがある点は認識しておくとよさそうです。
さいごに
サブスクリプションのお試し利用へ初めて対応するにあたり、考慮を巡らせたことについて書いてみました。 プレミアムプランで利用可能なStudyplusブック読み放題機能の開発も頑張ったので、今回のリリースが1人でも多くのユーザーさんが快適に学習できる一助になれることを祈っています。 また、今後もリリースした機能を強化するような開発にどんどん携わっていく所存です。