質問: 外部課金について教えてください。 現在、アプリを「App Store」、「Google Play Store」、「auスマートパス」に無料提供し、一部コンテンツをアプリ内課金で提供しています。 今後の展望として、上記展開しているマーケットでl購入した有料コンテンツをOSまたいでお客様にご利用いただきたいと思っていますが、リジェクト等含めて可能かどうか教えていただけないでしょうか。 **【前提条件】** ・無料でアプリ提供。 ・アプリ内に複数有料コンテンツ(1年間提供)を販売。 ・無料ダウンロードした際に独自のID発行を行っており、このIDに課金情報を紐付けている。 **【実装したいこと(例)】** ・課金したコンテンツをOSまたいで利用可能かどうか (1)Google Play Storeでアプリを無料ダウンロードし、有料コンテンツを購入。その後、auスマートパスで無料ダウンロードし、Googleで購入した有料コンテンツが使用できるようにしたい。 (2)App Storeでアプリを無料ダウンロードし、有料コンテンツを購入。その後、Android端末に機種変更を行い、Google Play Storeで無料ダウンロードし、iOS版で購入した有料コンテンツが使用できるようにしたい。 (3)(2)の逆パターン(Google Playで課金したものをiOSで使用したい)
回答: 一部自分が読み違えているかもしれませんが、結論で言うと「独自のアカウントを発行し、そのアカウントに対し課金情報を紐付ける」形などであれば実装可能です。 そしてAndroid版とiOS版それぞれの正式なアプリ内課金のシステムで決済できるように実装すれば、リジェクト対象にも引っかからないかと思います。ただ、どちらのアプリでも、例えば「クレジットカードで支払い可能です」といった文言をつけて、Webに誘導してクレカ課金できるUIにするとリジェクトの可能性が高まります。 特にiOSの方に関しては、Apple側が非常に厳しくリジェクトのルールを設けていますので、アプリ内で少しでも別システムで課金できることを臭わせる見せ方をするだけで、リジェクトの可能性があります。 「独自アカウントで課金情報の紐付け」の部分ですが、この要件で一番のネックになるのが「Aの端末とBの端末は同一人物の所有端末である」ということを客観的に判断できる何かが必要になるというところです。 例えばAppStoreやGooglePlayでは、それぞれのアカウント(前者はApple ID、後者はGoogleアカウント)によって、同一人物のものであるかをストア側が判断してくれるので、アカウントを変えなければiOS>iOS、Android>Androidと機種変更しても、課金情報をストア側で引き継いでくれます。 しかしこれがiOS>Androidとなると、端末も違えば本人を確認するアカウントも別物となりますので、客観的にも機械的にも、「該当の人物が機種変更した」という判断ができません。そのため、複数の端末をまたいだコンテンツの提供を行うためには、別途ベンダ側で管理できるアカウントにログインしてもらい、課金情報を管理しておく必要があります。 もしくはパズドラなどのように、機種変更時の移行コードを発行してデータ引き継ぎを行うという手もあります。 なんにせよ、これはGoogle側からもApple側からもそうしろと言われていますが、購入情報をベンダ側でも管理していなければ実装できないのでご注意ください。 また、おそらくauスマートパス側も含め、課金情報=レシート情報には「どのアカウントから購入したか」といった情報までは含まれておらず、あくまでもGoogle(Apple/au)側が「これは正当な課金情報である」という判断ができるまでのデータしか取得できないため、同じOSによる機種変更でも、アカウントが変わってしまうとまったく同じ問題が発生します。