自身の課題解決方法は、積極的に社外へ発信!〜VASILY DEVELOPERS BLOGが公開されました〜

こんにちは、広報の坂井です。

本日7月25日(金)、VASILY DEVELOPERS BLOGが公開されました。

今回のタイトルはiOSの消耗型課金のサーバーサイドTipsまとめ”、担当はバックエンドエンジニアの北條です!

tech.vasily.jp

f:id:vasilyjp:20170824153323j:plain

さっそくインタビューです

ー 今回はどのような内容でしょうか?

今回は、消耗型課金のサーバーサイド実装についてです。

消耗型課金とは、AppStoreで登録できる使い切りのアイテムのことをいいます。例えば、ゲームアプリでいうライフの追加購入のような、使い切りのアイテムのことです。

一方、1ヶ月など決まった期間にサービスが受けられる課金のことを月額課金や、自動更新購読といいます。IQONの有料会員版はこちらにあたります。

ー なるほど、実装方法とは具体的にどのようなものでしょう?

ユーザーが消耗型課金商品を購入すると、AppStoreやアプリ、自社サーバーを通って様々な処理が行われます。その中の1つであるレシート検証というものを解説しています。

レシート検証とは、ユーザーによる不正な購入を防ぐために、売り元であるAppStoreに購入履歴を確認することです。

アプリと自社サーバー間だけの確認だと、そこで何かしら手が加えられ不正があった場合に対応できず「本当は買っていない商品を手に入れる」などの不正が起きてしまう可能性があります。

アプリから自社サーバーへリクエストが来た時に、アプリからの情報だけで課金処理を行うのではなく、一度AppStoreに確認することで、不正を防ぐことができます。

ー 他にはどういったことを紹介していますか?

課金アイテムの扱い方を紹介しています。

消耗型課金は、課金アイテムが1つでない限り、課金アイテムのリストをアプリに表示する必要があります。

例えば、ルビー12個で120円、1200個購入で10000円といったように、アイテムが複数ある場合です。そのリストをアプリ上で表示するたびに、Appstoreに問い合わせる処理を行っています。

AppStoreは為替レートの変動により価格が変わることがある為「アプリの画面上では100円と表示しているのに実際買ったら120円だった」といった差が生じないよう、逐一照らし合わせています。

ー 今回のような業務は初めてだったと思いますが、どのように勉強して取り入れたのでしょうか?

まずは、Appleが出している公式ドキュメントを読んで勉強しました。そのドキュメントに加え、繰り返しテストを行い試行錯誤しています。何度もテストを行うことで、公式ドキュメントでは分かりづらかった課題や問題が見えてきて、改善することができます。

今回のブログは自分自身がつまずいた部分の解決策を記載しているので、これから同じようなことを行う方の参考になると幸いです。

ー ありがとうございました!

最後に…

VASILYでは、新しい業務にも積極的にチャレンジし、常に技術力を磨いています。また、業務の中で起こった課題などは積極的に社外へ発信し、自身の成長やインターネット業界全体の進化へ貢献しようと励んでいます。

この夏、VASILYインターンに挑戦し、現場での実践力を身に着けませんか?応募期間はあと1ヶ月ほどです!

その他正社員も通年で募集中ですので、気になる方はぜひこちらをご覧ください。

www.wantedly.com

ご応募お待ちしております!

【お問い合わせ】
株式会社VASILY 広報担当
press@vasily.jp