【Google】アプリ内課金のサーバーバックエンド処理
下記で Google のアプリ内課金について紹介しました。

ここでは、以下のような Google Play 課金システムと連携するサーバーバックエンドの役割と機能について紹介していきます。
- デジタル商品カタログの管理
- 購入ライフサイクルの管理
- 不正防止
- 財務調整
- 代替課金
- 外部オファーAPIとの連携
Google Play 課金システムのバックエンド連携
サーバーバックエンドは、デジタル商品のビジネスの最も重要な側面、つまりカタログの設定から取引の追跡までを管理する上で重要な役割を果たします。
バックエンド連携の主な機能
Google Play の課金システムと連携するサーバーバックエンドは、以下の機能を実現するために重要です。
- デジタル商品カタログの自動管理
- 購入ライフサイクル管理と権限の同期
- 不正と悪用の防止
- 財務調整とレポートの自動化
- 外部取引管理
1 つずつ見ていきましょう。
デジタル商品カタログの自動管理
バックエンドに商品カタログのミラー(コピー)を保持することで、以下のようなメリットがあります。
- 権限付与時のアクセスを容易にする
- 価格の一括自動更新を行う
- 独自のカタログ管理システムと Google Play のカタログを同期させる
monetization.subscriptions と inappproducts
エンドポイントを使用して、デジタル商品カタログを管理できます。
購入ライフサイクル管理と権限の同期
ユーザーの権限変更に迅速かつ正確に対応するためには、購入ライフサイクルイベントの監視が不可欠です。
すべての購入を安全にし、すべての権限を一貫させるために、定期購入と 1 回限りの購入(都度課金)の両方について、バックエンドに購入ステータスの管理を組み込む必要があります。
Google Playの課金システムは、両方の購入タイプに対してリアルタイムデベロッパー通知(RTDN)を送信します。

バックエンドはこれらのメッセージを受信し、必要な変更を加える準備を整える必要があります。
RTDN クライアントと Google Play Developer API を活用して購入ライフサイクルを管理する方法については、以下の記事を参照にしてください。

不正と悪用の防止
機密性の高いロジックをバックエンドに移動し、Google Play での無効な購入を監視することで、不正使用を防ぎます。
Google Play Developer API は、新規購入の承認、アプリ内商品の消費、無効な購入の処理を行うための機能を提供しています。
財務調整とレポートの自動化
Play Console のレポートをダウンロードすることで、Google Play からレポートデータをインポートできます。
Play Console で利用可能な情報をダウンロードして、この情報に関連するユースケースに対処するために、Google Cloud Storage API を活用できます。
外部取引管理
代替課金 API または外部オファー API と統合している場合は、Externaltransactions API を使用して、完了した取引を報告および管理します。