レベルエンター山本大のブログ

面白いプログラミング教育を若い人たちに

iOSで月額課金モデルを実装する際に気をつけるべき事

iOSiPhoneiPadiPod touch)で課金機能を実装したアプリを開発する際のノウハウについて、ウチのナレッジベースの一部である「ナレッジボックス」での記事が人気を呼んでいるので、ご紹介したいと思います。

月額課金モデル(Auto-Renewable Subscriptions)

開発リーダーの苦労話を中心に掲載してるのですが、ちょっと抜粋。

iOSアプリでの課金処理はiOS SDKに含まれているStoreKitと呼ばれるコンポーネントを利用するため一件簡単に実装できそうなのですが、Auto-Renewable Subscriptionsについては時間の経過により自動で課金されるという特性があるため、テストが非常にややこしいくなっています。
一応、課金テストがやりやすいようにアップルがテスト環境(サンドボックス)を用意してくれているのですが、このテスト環境の仕様が全く明らかにされておらず、手探り状態でテストをする必要があります。

例えば、Auto-Renewable Subscriptionsでは課金タイミングを1週間〜1年の間で選択できるのですが、サンドボックスでは短い期間でテストできるよう、3分〜1時間で自動更新が実行されるようになっています。アプリの仕様により、購入の日時や更新の日時などを自社のサーバに保管し、アプリ内で利用する等した場合、この本番とサンドボックス環境とのタイミングの違いで、非常にややこしいテストケースを用意しないといけなかったり、シビアなタイミングが要求されたりします。

(中略)

とにかく、自動課金処理が全てブラックボックスになっており、仕様が不明瞭なため、Auto-Renewable Subscriptionsを利用する場合は念入りなテストケースと失敗した場合のリカバリの手段を用意しておく必要があります。

テスト環境としてサンドボックスが用意されているところまでは、非常にありがたい環境だと思うのですが、そこはそんなに簡単にはいきませんね。

海外のソフトウェア企業にありがち(というよりAppleにありがち)なのですが、完璧な環境ではなくブラックボックスであり、常に裏側は更新されているのでしょうか多少不安定なようです。

課金の部分はバグが最大に怖い部分ですが、おまけにテストがしにくいとなると中々手が出しづらいですね。


そんなこんなで色々調べていたら、
dodaiiというアプリ内課金のASPを請け負っている会社さんなどもあるようです。
http://www.dodaii.com/

料金は下記のような感じでした。

■法人向けエンタープライズプラン
 ◆月額費用(1アプリあたり):
 ・プラン A月額 25,000円(税別) 月間2,000回課金 目安※(単価:12.5円)
 ・プラン B月額 42,000円(税別) 月間4,000回課金 目安※(単価:10.5円)
 ・プラン C月額 78,000円(税別) 月間10,000回課金 目安※(単価:7.8円)

■個人・法人向け従量制プラン
 ◆月額利用料1アプリあたり980円(税込)
 ◆1課金あたり15円(税込)
 ◆課金なしの無料ダウンロード 1回あたり5円(税込)

■パッケージ販売プラン
 ◆ライセンス料:1サーバ(インスタンス) 80万円


IPhoneアプリは有料にしてもそれほど儲かるものではないので薄い利益の中から出さないといけないのは中々つらいかもしれませんね。

ウチの会社でも、この部分の開発を相談いただければ対応します。
でも開発リーダーは、正直あんまりやりたくないって本音をもらしてましたが。www