本文へスキップ
Refund Sensor

Google Play の設定

リアルタイム通知で Refund Sensor を Google Play Console に接続。チャージバック審査を自動化し、24 時間以内に応答して収益を守ります。

始める前に

Refund Sensor は、あなた自身の Google Cloud プロジェクトで作成するサービスアカウントで Google Play に接続します。期限切れがなく、再認可も不要です。次のものが必要です。

  • Play Console を所有するアカウントの Google Cloud プロジェクト(無料のもので構いません)。
  • ダウンロードできる JSON キーを持つサービスアカウント。
  • そのアカウントに付与された Play Console のアクセスと Pub/Sub Admin。
  • 防御したいパッケージ名または Play Store の URL。

サービスアカウントと鍵を作成する

  1. Play Console を所有するアカウントで Google Cloud Console を開き、プロジェクトを選ぶか作成します。左メニューで IAM & Admin を開き、Service accounts をクリックします。
  2. + Create service account をクリックし、RefundSensor Google Play API のような名前を付け、Create and continueDone をクリックします。ここではオプションのロールは省略できます。
  3. サービスアカウントのメールアドレス をコピーします(末尾が .iam.gserviceaccount.com)。次のステップで必要になります。
  4. サービスアカウントを開き、Keys タブに切り替え、Add key → Create new key をクリックし、JSON を選んで Create をクリックします。Google が .json ファイルをダウンロードします。安全に保管してください。Google は再ダウンロードを許可しません。

必要な API を有効化する

プロジェクトには 2 つの Google API を有効化する必要があります(プロジェクトごとに 1 回)。Google Cloud Console でプロジェクトを選んだ状態で、それぞれを検索して有効化します。

  • Google Play Android Developer API。サービスアカウントが返金と注文のデータを読めるようにします。
  • Cloud Pub/Sub API。リアルタイムの返金通知を支えます。Pub/Sub Lite ではなく Cloud Pub/Sub であることを確認してください。別の製品です。

認証情報を追加する

Refund Sensor で Add app を開き、Google Play を選んで .json キーファイルをアップロードします。私たちは Google で検証し、AES-256-GCM で保管時暗号化して保存します。

Play Console の権限を付与する

サービスアカウントを Play Console に招待し、2 か所 で財務アクセスを付与します。返金(無効化された購入)のデータはアカウント単位で読み取られるためです。

  1. Google Play ConsoleUsers and permissions → Invite new users を開き、サービスアカウントのメールアドレス を貼り付けます。サービスアカウントは保存した時点で有効になり、自分で招待を承認することはありません。
  2. App permissions で、防御したい各アプリを追加し、View financial dataManage orders and subscriptions をオンにします。
  3. Account permissions タブ(見落としやすい)に切り替え、Financial data の下で View financial data, orders and cancellation survey responsesManage orders and subscriptions をオンにして保存します。

Pub/Sub Admin を付与する

リアルタイム通知は、私たちが作成して設定する Pub/Sub トピックを通じて Refund Sensor に届くので、Play Console に貼り付けるものはありません。必要なのは Pub/Sub を管理する権限だけです。IAM & Admin → IAMGrant access をクリックし、サービスアカウントのメールアドレスをプリンシパルとして貼り付け、ロール Pub/Sub Admin(roles/pubsub.admin)を選んで保存します。Pub/Sub Lite Admin ではなく Pub/Sub Admin を選んでください。Lite のロールは機能せず、自動設定が失敗する最も一般的な原因です。

アプリを追加する

Add apps のステップで、Play Store の URL またはパッケージ名を 1 行に 1 つ貼り付けます(パッケージ名は Play Store のリンクで ?id= の後にある値、例えば com.yourcompany.app)。Refund Sensor はインポート前に、接続済みアカウントの Play Console アクセスに対して各項目を検証し、見えないものにはフラグを立てます。

リアルタイム通知

API を有効化して Pub/Sub Admin を付与すると、アプリのインポート時にトピックとプッシュサブスクリプションが自動作成され、アプリの RTDN エンドポイントとして登録されます。その後アプリには、Google が最初の実イベントを配信するまで Awaiting first refund event と表示されます(Google 側にテストボタンはありません)。自動設定が失敗した場合、アプリカードに Real-time notifications not set up と、このガイドへ戻るリンクが表示されます。

Refund Sensor が Google Play で応答するもの

すべての Google Play の返金を争えるわけではありません。通常のユーザー返金は Google が単独で決めるため、可視化のために記録されますが、争いません。

実際に応答できる唯一の返金は 審査中のチャージバック(Google の pendingRefundReviewNotification)です。約 24 時間 が与えられ、最初の応答が尊重されます。Refund Sensor はこれに拒否の推奨で自動応答し、期限内に十分間に合わせます。

保険として、Refund Sensor は Google の Voided Purchases API とも突き合わせるので、争うものがなかった場合でも、すべての返金と無効化された購入がダッシュボードに記録されます。