RevenueCat Link
Overview
RevenueCatドキュメントConnect Apps & Web Providersについてまとめているセクション。
Google Play ConsoleとApp Store連携について包括的に記載。
RevenueCat × App Store 連携
連携先の証明書をいくつかダッシュボード通りに作れば連携はできる。
はじめてのRevenueCat - (1) SDK稼働確認に必要なApp Store Connectでの対応
「In-App Purchase Key Configuration」というのは、Apple の App Store Connect でアプリのサブスクリプションや課金情報にアクセスするために必要な App Store Connect API Key(In-App Purchase Key) の設定のことです。
具体的な役割 • RevenueCat が App Store のサーバーから サブスクリプション状態やレシート情報を自動で取得する ために必要。 • アプリ内課金のレシート検証や購読ステータス更新を RevenueCat 側で行うときに、Apple との通信でこのキーを使う。
設定の流れ(ざっくり)
- App Store Connect にログイン
- 「ユーザーとアクセス」→「Keys」から新しい App Store Connect API Key を作成 • ここで「In-App Purchase」権限を持たせる必要がある
- 生成された .p8 ファイル(秘密鍵)をダウンロード
- RevenueCat のダッシュボードに移動し、App Store → API Key 設定で以下を登録 • Issuer ID • Key ID • ダウンロードした .p8 ファイル
これで RevenueCat が自動的に購読情報を同期できるようになるよ。
👉 簡単に言うと 「RevenueCat と App Store をつなぐための秘密鍵」 で、これを設定しないと購読の更新やキャンセルが正しく反映されない。
必要なら、実際に App Store Connect 上のどの画面からキーを発行すればいいか のスクショ的なナビもまとめるけど、欲しい?
RevenueCat × Google Play Console 連携
RevenueCatはGoogle API経由で検証などを行ってくれる。 そのためにService Account Credentials JSONをアップロードする必要がある。
1. Google APIs の有効化(Cloud Console)
RevenueCat が Google Play の API にアクセスできるようにする。
- Google Cloud Consoleで対象のプロジェクトを開く(または新規作成)。
- 以下2つのAPIを 必ず有効化 する:
- Google Play Android Developer API
- Google Play Developer Reporting API
- まだ認証情報がない場合は、「認証情報を作成する」よう案内が出る → 次ステップへ。
Google Play Android Developer API
アプリの課金データにプログラムからアクセスできるようになる。
RevenueCat はこのAPIを使って、ユーザーの課金ステータスをリアルタイムで追跡する。
これによりユーザーがアプリをアンインストールしたり、Google Play側でサブスクをキャンセルしても、RevenueCat 側で正しく検知できる。
Google Play Developer Reporting API
Google Play上のパフォーマンスデータや統計情報にアクセスするためのAPI。以下のようなレポートを自動で取得できる。
- アプリのクラッシュレート、ANR(アプリが応答しない)率
- デバイス別・国別のインストール数やアクティブユーザー数
- ユーザーフィードバックや評価の傾向
このAPIは直接課金には関係ありませんが、パフォーマンスやユーザー行動の分析の補助として使われます。RevenueCatがこのAPIを使うことで、購読者の行動分析やモニタリングがしやすくなる。
2. サービスアカウントの作成(Cloud Console)
RevenueCatがGoogleと安全に通信できるようにする。
- [IAMと管理] → [サービスアカウント] に移動
- 「サービスアカウントを作成」:
- 任意の名前を設定
- ロールを2つ追加:
- Pub/Sub 編集者(または問題がある場合は Pub/Sub 管理者)
- Monitoring Viewer(通知の監視のため)
次に以下の手順を行う。
- サービスアカウントの詳細ページで「鍵を管理」 → 「鍵を追加」 → 「新しい鍵を作成(JSON形式)」 → ダウンロードして保管
- この JSONファイル を RevenueCat にアップロードします(後述のステップ4)
🛑 注意: 2024年5月3日以降に作成したGoogle Cloudアカウントは、サービスアカウントの作成や鍵の生成が制限されている可能性あり。 IAM policy error: disableServiceAccountCreation などのエラーが出た場合は、組織ポリシーを一時的に無効化してください。
3. Google Play Consoleでサービスアカウントに権限付与
RevenueCatが購読情報にアクセスできるようにする。
- Google Play Console → [ユーザーと権限] → 「ユーザーを招待」
- ステップ2で作成したサービスアカウントのメールアドレスを入力
- アプリ権限:アプリを追加
- アカウント権限:次の3つをチェック
- アプリ情報の閲覧と一括レポートのダウンロード(読み取り専用)
- 財務データ・注文・キャンセル理由の閲覧
- 注文と定期購入の管理
4. RevenueCat に JSON をアップロード
RevenueCat Dashboardにアップロードする。
- プロジェクト設定 → Google Play App Settings に移動
- 手元のJSONファイルをアップロード
- 保存する
⏳ 注意:最大36時間待つ必要あり。 JSONの有効化には時間がかかるので、反映を待ちましょう(最大36時間)。早めに反映させたい場合は、「サブスク商品の説明文を一度変更 → 保存 → 元に戻す」という裏技もあります。
5. APK/AABのアップロード
これはすでに完了している可能性がありますが、以下のチェックも忘れずに
- APK/AABファイルを署名済みでアップロード済み
- アプリがクローズド or オープンテストトラックに配置されている
- テスターが追加されている
- RevenueCat に設定したパッケージ名と Google Play 上のパッケージ名が完全一致している
✅ 補足:認証トラブル時のチェックポイント
- JSONのサービスアカウントが「有効」か確認
- 正しいJSONがアップロードされたか(Project IDやEmailなど)
- もう一度アップロードし直すと直ることもあり
- 必要な権限が足りているか再確認
🔜 次のステップ
あなたの現在の状況: • RevenueCatプロジェクト作成済み • Google Play Console/Cloudアカウント準備完了 • Google Playにサブスク商品はまだ作っていない ← このあとは商品を作っていくことでテストや本番連携が可能になります
💬 ご希望あれば: • JSONキーの設定画面のスクショやエラー文があれば診断もできます • サブスク商品作成やリアルタイム通知の設定(Pub/Sub)についても次ステップでガイドできます
必要に応じて続きのサポートもできるので、いつでも聞いてください!
Track new purchases from server-to-server notifications
チェックは 基本的にはオンにしておくのが推奨
✅ この設定をオンにするメリット
- 購入漏れの防止(フェイルセーフ機能) ユーザーの端末とRevenueCat SDKの間に通信の問題があっても、Googleのリアルタイム開発者通知(Real-time Developer Notifications, RTDN)を通じて、購入イベントがRevenueCatに届きます。
- SDKを使っていないケースにも対応 ユーザーが旧バージョンのアプリを使っていて、RevenueCat SDKが入っていない場合でも、Googleからの通知で購入が記録されます。
- セキュリティと信頼性の向上 通信失敗やSDKの不具合があってもGoogle→RevenueCat→自社バックエンドに確実に購入データが流れるため、サブスクの管理が堅牢になります。
⚠️ オフにするケース(例外的)
以下のような特殊なケースを除いて、基本的にオフにする理由はありません。
- 自社でRTDNを直接受け取り、RevenueCatを補助的に使っている場合
- 非推奨の構成(SDKを使わない、Webhookで自前処理している等)で運用しており、重複データを意図的に避けたい場合
補足:裏側の動き
- Google Play Console → Pub/Sub(Google Cloud) → RevenueCat(この画面の「Topic ID」で連携)
- チェックをオンにすると、RevenueCatはPub/Sub経由でONE_TIME_PRODUCT_PURCHASED, SUBSCRIPTION_PURCHASED などのイベントを受信・反映します。