概要: アプリ内購入と自動更新サブスクリプションからの収益を自動的に検証して計測し、ユーザーのライフサイクルの全体像と正確なROAS計測を取得します。
概要
広告主様は、検証済みのアプリ内購入(IAP) とサブスクリプション購入収益データを使用して、以下を計測できます:
- App Store Connect (iOS) またはGoogle Playコンソール (Android) のいずれかで管理されているプロダクトとサブスクリプションのアプリ内購入によるすべての収益
- 払い戻し
- 保留中および繰り延べ取引の収益(Android)
- アプリの内外で発生するサブスクリプション関連のイベント
アプリ内購入およびサブスクリプション収益計測ソリューションは:
- 重複するトランザクションが記録されていないことを確認します。
iOSの場合、これにより、家族共有が理由の重複が記録されないようにすることもできます。 - AppsFlyer が Apple App Store のトランザクションを広告主に転送できるようにします。
- 真の収益データ、つまり店舗の手数料と税金を考慮した純収益データを提供します。
購入およびサブスクリプションのデータは、次から取得されます:
- Android / iOS向け AppsFlyerの課金SDKコネクタ(Unity wrapperも含む)
- App Store および Google Play (RTDN) サーバー通知が AppsFlyer に送信されます。
購入とサブスクリプションの収益データは、AppsFlyerのダッシュボードと各種レポートで取得可能です。また、広告媒体などのポストパートナーへバックを介してポストバックを送信することもできます。
注意事項:
- 収益の重複計測を避けるため、このIAPおよびサブスクリプション購入収益計測ソリューションを使用する場合は、アプリ内購入イベントを送信したり、validateAndLogInAppPurchase を実行したりしないでください。
- サブスクリプション収益は、既存のサブスクライブユーザーが購入SDKコネクタを含むアプリバージョンを起動するとすぐに、サブスクライブユーザーライフサイクルの変更の記録を開始できます。
フロー:
- ユーザーがアプリ内購入または自動更新サブスクリプションを行います。
- アプリがアプリストアでトランザクションを行います。
- AppsFlyer課金SDKコネクタは、購入を自動的に検出し、検証とログ記録のためにそのペイロードをAppsFlyerに送信します。
-
AppsFlyerは、不正ではないことを確認するために、各ストアで購入データを検証します。
- 検証が成功すると、AppsFlyerは購入またはサブスクリプションをログに記録します。
- レシート検証が失敗した場合、そのイベントは「ブロック済アプリ内イベント」ローデータレポート内に表示されます(Protect360を契約している場合に利用可能)。
- AppsFlyerは応答を SDK コネクタに転送し、SDK コネクタは受信確認応答 (成功または失敗) をアプリに転送します。
-
受信したサーバー通知は、AppsFlyerの購入およびサブスクリプション収益ビジネスロジックによっても処理されます。
- SDKコネクタを介して以前に報告されたトランザクションに関する通知が検証および処理され、購入イベントまたはライフサイクルイベントが内部的に作成されます。
- 不明なトランザクションに関する通知は破棄されます。
- iOSの場合、すべてのサーバー通知を独自のサーバーに再ルーティングできます。
アプリ内課金とサブスクリプション収益の連携設定手順
以下の表に記載されているセットアップ手順の順序に正確に従って 、アプリ内課金および自動更新サブスクリプションの収益とライフサイクルイベントを正しい精度で計測し、完全なレポートを取得してください。
そうしないと、レポートが永続的に不正確になってしまう可能性があります。各ステップの詳細は、表の後のタブに記載されています。
ステップ | タスク |
---|---|
1 |
Google Play からの IAP とサブスクリプション購入の収益に関する通知を設定します。 |
2 |
iOS App StoreからのIAPとサブスクリプション購入の収益に関する通知を設定します。 |
3 |
|
4 |
True Revenue tax APIを統合します。これは、デフォルトの税率を編集する場合にのみ必要です。それ以外の場合、ROI360によって測定されたすべてのトランザクションに対して税金が報告されます。 |
5 |
実装テストで次の項目を確認します
|
6 |
購入SDKコネクタを使用して、AndroidおよびiOSアプリのバージョンをリリースします |
ステップ 1: Google Play からの通知を設定します
はじめる前に
-
アプリ内課金とサブスクリプション収益の設定は、Google Cloud PlatformとAppsFlyer管理画面上の手順が含まれます。
設定中は、Google Cloud PlatformとAppsFlyerのタブを開いたままにしておくことをおすすめします。 - AppsFlyer管理画面でのセットアップには、管理者(アドミン)権限が必要です。
下のタブの手順に沿って、Google Play からの通知を設定します:
1.1 Google Play ディベロッパー アカウントを Google Cloud プロジェクトにリンクします
- Google Play Console で、 Google Play ディベロッパーアカウントに移動します。
- アカウントを Google Cloud プロジェクトにリンクします。手順については、 こちらの Google ヘルプのトピックを参照してください。
- Google Play Developer API を有効にします。手順については、 こちらの Google ヘルプのトピックを参照してください。
1.2 サービスアカウントの作成
- Google Cloud に移動し、1.1 でリンクしたプロジェクトを開きます。
- プロジェクトで IAM and Admin (IAM と管理者 ) > Service Accounts (サービスアカウント) に移動し、Create service account (サービスアカウントの作成) をクリックします。
- サービスアカウントの作成ページで、サービスアカウントの詳細ステップを入力します。
- 作成して続行をクリックします。
- このサービスアカウントにプロジェクトへのアクセス権を付与するステップで、 Pub/sub subscriberロールを選択します。
- 続行 > 完了をクリックします。
1.3:アカウントのプライベートキーをダウンロードします。
- サービスアカウントページで、関連する サービスアカウントを見つけ、
キーの管理をクリックします。
- サービスアカウントページの Keysタブで、ADD KEY > Crete new key をクリックします。
- Create private keyダイアログで、JSONキータイプを選択します。
- Createをクリックしてください。プライベートキーのJSONファイルがダウンロードされます。
- AppsFlyer管理画面 左メニューから、設定 > 収益設定を選択します。
- リストから対象のアプリを選択します。
- Purchases and subscriptionsタブで、
をクリックしてJSONファイルをアップロードします。
1.4 APIアクセス権限の設定
- Google Play Consoleでユーザーと権限に移動します。
- ユーザーと権限リストで、1.2で作成したサービスアカウントを見つけて、管理をクリックします。
- Premissions セクションで、Account permissions に移動し、以下の両方を選択してください:
- View financial data
- 注文とサブスクリプションの管理。
- Invite userをクリックし、Send invitationをクリックします。
どちらかを選択します 1.5: Google Playストアの通知をAppsFlyerに直接送信します
Google Playから IAP と定期購入の収益データを受け取るために使用する 2つの方法のいずれかを選択します。
以下のいずれかから選択してください。
- AppsFlyer が Google Playから RTDN通知を直接受信するトピックを作成します(この手順に進みます)。
または
- AppsFlyer を既存の PUB/SUB トピックの購読者として設定します(次の手順に進みます)。
AppsFlyer が RTDN通知を直接受信するトピックを作成するには、次の手順を実行します:
- AppsFlyer管理画面左メニュー 設定 > 収益設定 > 購入&サブスクリプション を選択し、AppsFlyerトピックがGoogleから直接RTDNメッセージを取得することを許可するを選択します。
- AppsFlyer トピックをクリップボードにコピーします。
- Google Play コンソール > すべてのアプリでアプリを選択します。ダッシュボードが開きます。
- 収益設定に移動し、Google Play Billingセクションのトピック名フィールドに、サブステップ2でコピーしたAppsFlyerのトピックアドレスを貼り付けます。
- 通知内容で、サブスクリプション、無効化された購入、およびすべての都度課金アイテムを選択します。
- 変更の保存をクリックします。
または 1.6 Google Playの通知をAppsFlyerに転送します
IAPとサブスクリプションの通知を受け取る他の方法は、Google Playから通知を受け取る既存のトピックがすでにある場合に適用できます。この場合、新しいトピックを作成する代わりに、AppsFlyerを、既存の PUB/SUB トピックのサブスクライバーとしてサブスクライバーとしてセットします。
既存のPUB/SUBトピックのサブスクライバーとしてAppsFlyerを設定
- AppsFlyer管理画面 左メニュー 設定 > 収益設定 > 購入&サブスクリプションタブで、RTDNトピックメッセージをAppsFlyerに転送するを選択します。
- エンドポイントURLをクリップボードにコピーします。
- Google Cloud Platformのプロジェクトで、 Pub/Subを検索します。
- Pub/Subで トピックセクションに移動し、サブスクリプション専用の pub/sub トピックがあることを確認します。
- Subscriptionセクションで、Create subscriptionをクリックします。
- Subscription IDを入力します。
- ドロップダウンから関連するサブスクリプションのパブ/サブスクライブのトピックを選択してください。
- 配信の種類 で、プッシュ を選択してください。
- ステップ2で取得したエンドポイントURL を入力します。
- Expiry periodは、Never expireを選択します。
- [Save](保存)をクリックします。
- Scriptionsセクションで、トピック名をクリップボードにコピーします。
- Google Play Consoleで 収益設定に移動し、 Google Playの お支払い情報セクションのトピック 名 項目に、前の手順でコピーした トピック名を貼り付けます。
- 通知内容で、サブスクリプション、無効化された購入、およびすべての都度課金アイテムを選択します。
- [Save](保存)をクリックします。
1.7 自動サービスの設定
- AppsFlyer管理画面 左メニュー 設定 > 収益設定 > 購入&サブスクリプションタブで、次のどちらか、もしくは両方をオンします:
- Google Playで課金データを検証する
- 自動更新サブスクリプションを計測する
- [オプション][ AppsFlyerに、すでにレポートされたトランザクションの重複排除を許可するをオンにします。これにより、重複するトランザクションが記録されなくなります。
- [Save](保存)をクリックします。
ステップ2: iOSアプリストアからの通知を設定する
はじめる前に
-
アプリ内購入とサブスクリプション収益の設定は、App Store ConnectとAppsFlyer管理画面で実行する手順で構成されています。設定中は、App Store Connect と AppsFlyer の両方のタブを開いたままにしてください。
- AppsFlyer管理画面でのセットアップには、管理者(アドミン)権限が必要です。
アプリ内購入とサブスクリプションの収益を計算:
-
App Store Connectにて、Features > Subscriptions へ移動し、Manage をクリックして、App Store Connectの共有シークレットキーを取得してください。
-
AppsFlyer管理画面 左メニュー 設定 > 収益設定 > 購入&サブスクリプションへ移動します。
収益設定画面が開きます。 - App Store Connectの共有シークレットキーを入力してください。
- AppsFlyerエンドポイントをコピーし、App Store Connect設定に入力します:
- [オプション] サーバー通知をエンドポイントに送信し、エンドポイントを入力する場合に選択します。
-
AppsFlyerのアプリ内課金とサブスクリプション収益の設定ページで、次のいずれかまたは両方をオンにしてください。
- 自動更新サブスクリプションを計測する
- Apple App Storeで購入を検証する
-
[オプション] AppsFlyerにすでにレポートされたトランザクションの重複排除を許可する をオンにします。
これにより、重複するトランザクションが記録されなくなります。
-
[オプション] ファミリー共有が理由による購入収益の重複排除 をオンにします。
これにより、ファミリー共有の購入が理由で重複した収益が記録されなくなります。他のファミリーメンバーの収益イベントには、パラメータ purchase_ownership_type=FAMILY_SHARED が含まれ、収益はゼロと表示されます。
注記:
- Appleは、サーバー通知を 1つのエンドポイントにのみ送信できます。
- バックエンドから通知エンドポイントの URLに直接 Appleサーバー通知を送信できますが、リクエストは App Store から受信したとおりにする必要があります。
ステップ3: 購入SDKコネクタの実装
購入SDKコネクタを連携すると、アプリはアプリ内購入と自動更新サブスクリプションの両方を記録できます。AndroidおよびiOS両方のAppsFlyer画面で、設定 > 収益設定 > 購入&サブスクリプション 画面で、一方または両方の収益タイプを記録するように選択できます。
SDKコネクタを実装する方法
- Android開発者に、AppsFlyerのAndroid購入SDKコネクタの連携を依頼してください。
- Android用AppsFlyer購入コネクターV1は、Google Billing Library 4をサポートしています。
- Android用AppsFlyer購入コネクターV2は、Google Billing Library 5をサポートしています。
- Android用AppsFlyer購入コネクターV2.0.1は、Google Billing Library 6をサポートしています。
- iOS開発者に、 AppsFlyerの iOS購入SDKコネクタ連携を依頼してください。
注:Unityフレームワークで構築されているアプリの場合は、Unityコネクタのドキュメントを参照してください。
ステップ4:True Revenue tax APIの連携
True Revenueは、AppsFlyerのアプリ内購入およびサブスクリプション収益ソリューションを提供するために構築されたビジネスロジック機能です。これは、各トランザクションの純収益値をリアルタイムで自動的に計算し、レポートに含めます。税は、デフォルトの税率構成によって、ROI360に測定されたすべてのトランザクションに対してデフォルトで報告されます。この設定は、専用のtax APIを使用して編集できます。
tax API を使用して税設定を編集するには:
-
ディベロッパーに以下を渡してください。
- 認証キーとして使用するAPI V2トークン。
- 次の表で説明されているように、計算する税に関する情報を含むパラメーターと値。
- 開発者に Tax APIの手順に従い、税率のルールを作成するよう依頼してください。注: API では、POSTリクエスト本文に JSON ファイルを含めることができます。このJSONファイルには、サポートされているすべての国とデフォルトの税率が含まれています。開発者はそれを編集することも、APIでそのまま使用することもできます。
APIで使用するパラメーターと値
パラメーター | 必須 | 備考 | 値を記録 (開発者が使用するため) |
---|---|---|---|
tax_name | はい |
|
|
tax_rate | はい |
|
|
tax_exclusive | いいえ |
|
|
country | いいえ |
|
|
subdivision | いいえ |
|
|
postal_code | いいえ |
|
|
deduction_order | いいえ |
|
ステップ5 : IAPとサブスクリプション収益をテストします
サンドボックス環境でIAPとサブスクリプション収益の統合を検証して、SDKコネクタが適切に統合されていること、およびサーバー通知が適切に構成され、AppsFlyerによって受信されていることのご確認をお勧めします。
テストの前に、開発者が SDK Connector で サンドボックス環境 に設定していることを確認してください(Sandbox
を true
に設定します)。これにより、ROI360はテスト用の "収益が0のサンドボックスアプリ内イベントのみ"を作成できます。したがって、プロダクション(本番用)データは影響を受けません。
サンドボックス環境に関する考慮事項
サンドボックス環境:
- 初回購入イベントだけが、SDKコネクタがAppsFlyerによって記録されるイベントを生成します。IAPイベントは af_purchase_sandbox_sdk、サブスクリプションイベントは af_ars_sandbox_sdkです。
- 他のすべての購入イベントは削除されるため、ARS SDKコネクタはイベントを生成しません。
- 受信サーバー通知は、SDKコネクタが最初に元のトランザクションを記録する場合にのみ処理されます。この場合、 af_purchase_sandbox_s2sと呼ばれるアプリ内購入イベントが生成されます。サブスクリプションは、イベント名 af_ars_sandbox_s2s と生成されます。
- SDKコネクタが最初に元のトランザクションを記録しなかったサーバー通知に対してイベントは生成されません。
-
iOSの場合、App Store connectのApp Store Server Notificationsで、AppsFlyerのエンドポイントがSandbox ServerのURLとして設定されていることを確認してください。
- Android の場合、SDK のサンドボックス環境が構成されていない場合でも、ライセンステスターによって実行されるテストではサンドボックスイベントが発生します。
アプリ内購入とサブスクリプション収益計測の実装テスト
アプリ内購入とサブスクリプション収益計測のテスト:
- 開発者に、 Android 、iOS 、および Unity の 手順に従って SDK Connector でサンドボックス環境を構成するように依頼してください。
- テスト購入を行います。Google Play の License Tester と iOS の TestFlight から実行されるトランザクションもサポートされています。
注意: サブスクリプションプロダクトは、各テストデバイスから一度だけテストできます。つまり、同一デバイスから同一サブスクリプションの複数のテスト購入は、記録されないため登録することはできません。 -
AppsFlyer管理画面「アクティビティ」ダッシュボードにイベントが表示されることを確認してください。
アプリ内購入はイベント名 af_purchase_sandbox_sdkと計測されます。
サブスクリプションはイベント名 af_ars_sandbox_sdk と呼ばれます。
これらのイベントには、次のデータが含まれます:
- 収益値: 0(実際のAppsFlyerレポートを歪めないようにするため)
- af_sandbox_revenue パラメータに、テスト購入したプロダクトの収益値を含みます。
このパラメータ値を参照して、正しい収益が計測されていることを確認してください。
- サブスクリプション計測をテストしている場合は、AppsFlyerがサーバーからサーバー通知を受け取るまでしばらくお待ちください。
通常、これは最初の購入後数分以内に発生します。 -
AppsFlyer管理画面「アクティビティ」ダッシュボードにイベントが表示されることを確認してください。
自動更新サブスクリプションの購入は イベント名 af_ars_sandbox_s2s と計測されます。
イベントには以下のデータが含まれます:- 収益値: 0(実際のAppsFlyerレポートを歪めないようにするため)
- af_sandbox_revenue パラメータに、テスト購入したプロダクトの収益値を含みます。
このパラメータ値を参照して、正しい収益が計測されていることを確認してください。
ステップ6:DKコネクタを使用してアプリのバージョンをリリースします
開発者によって購入SDK コネクタが実装された新しいアプリバージョンをリリースする前に、次のことを確認してください:
- アプリ内購入またはサブスクリプションとして計測するアプリ内イベントが、AppsFlyerで設定した検証ルールのいずれかによってブロックされていないこと
- 開発者は、false としてマークされたサンドボックスフラグを所持していること
-
iOSの場合、App Store connectのApp Store Server Notificationsで、AppsFlyerのエンドポイントがSandbox ServerのURLとして設定されていることを確認してください。
参考
アプリ内購入のイベントとパラメーター
次のセクションでは、AppsFlyerが計測するサブスクリプション関連のイベントと、各イベントに記録されるパラメーターを示します。含まれているパラメーターの説明については、イベントパラメーター辞書を参照してください。
生成されたすべてのイベントは -
- S2Sイベントと見なされます。
- ローデータレポートでも取得できます(データタイプ名:オーガニック / 非オーガニックのアプリ内イベント)。
- 広告媒体などのパートナーへポストバック可能です。
- SKAN Conversion Studioで計測するKPIとして設定できます。
注意: ユーザーデバイスのプラットフォームによっては、アプリ内イベントにパラメーターが常に入力されるとは限りません。
購入 (af_purchase)
説明
ユーザーが購入したときに計測されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_revenue
- af_net_revenue
- af_net_revenue_tax_name
- af_net_revenue_tax_rate
- af_net_revenue_tax_exclusive
- af_net_revenue_country
- af_net_revenue_subdivision
- af_net_revenue_postal_code
- af_net_revenue_factors
購入キャンセル(af_purchase_canceled)
説明
ユーザーが購入をキャンセルしたときに計測されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
購入保留中(af_purchase_pending)
説明
ユーザーが購入を実行したが、支払いがまだ処理されていない場合に記録されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
払い戻し(af_purchase_refund)
説明
購入が払い戻し(返金)されたときに記録されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_discount_type
- event_revenue_usd
- event_revenue (収益がゼロを超えるイベントに含まれます)
- af_revenue_usd
- af_revenue
- af_net_revenue
- af_net_revenue_factors
- af_net_revenue_tax_name
- af_net_revenue_tax_rate
- af_net_revenue_tax_exclusive
- af_net_revenue_country
- af_net_revenue_subdivision
- af_net_revenue_postal_code
テスト購入(af_purchase_sandbox_sdk)
説明
サンドボックス環境でSDKを介して記録された購入をテストするときに記録されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_purchase_state
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_net
- af_sandbox_revenue
テスト購入(af_purchase_sandbox_s2s)
説明
サンドボックス環境で S2S経由でレポートされた購入をテストするときに記録されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_purchase_state
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_net
- af_sandbox_revenue
サブスクリプション関連のイベントとパラメーター
次のセクションでは、AppsFlyerが計測するサブスクリプション関連のイベントと、各イベントに記録されるパラメーターを説明します。含まれているパラメーターの説明については、イベントパラメーター辞書を参照してください。
生成されたすべてのイベントは -
- S2Sイベントと見なされます。
- ローデータレポートでも取得できます(データタイプ名:オーガニック / 非オーガニックのアプリ内イベント)。
- 広告媒体などのパートナーへポストバック可能です。
- SKAN Conversion Studioで計測するKPIとして設定できます。
注意: ユーザーデバイスのプラットフォームによっては、アプリ内イベントにパラメーターが常に入力されるとは限りません。
トライアル開始(af_ars_trial_started)
説明
サブスクリプションユーザーがトライアル期間を開始したときに記録されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
トライアルのキャンセル (af_ars_trial_cancelled)
説明
トライアル期間中にサブスクライブユーザーがサブスクリプションの自動更新をキャンセルしたときに記録されます。
ユーザーがトライアル期間内に自動更新を復元しない場合、解約イベントが続きます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
トライアル解約 (af_ars_trial_churned)
説明
トライアル期間後にサブスクライブユーザーが解約したときに記録されます。これは、自動更新のキャンセルとトライアル期間の満了後に発生します。また、課金や技術的な問題に続いて、更新によって解約が発生することもあります。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
- af_reason
トライアル後のコンバージョン (af_ars_trial_converted)
説明
トライアル期間後、正規価格の更新が開始されたときに記録されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
- af_discount_id
- af_discount_type
- event_revenue_usd
- af_revenue_usd
- af_revenue(収益がゼロより高い場合に含まれます)
- af_net_revenue
- af_net_revenue_factors
- af_net_revenue_tax_name
- af_net_revenue_tax_rate
- af_net_revenue_tax_exclusive
- af_net_revenue_country
- af_net_revenue_subdivision
- af_net_revenue_postal_code
サブスクリプション開始(af_ars_subscription_started)
説明
割引または完全価格のサブスクリプションが開始されたときに記録されます。
注記:
- 新しいサブスクリプションは、SDKコネクタを介してのみ記録できます。
- iOSの場合、サブスクライブユーザーが既に所有しているサブスクリプションを再購入すると、SDKコネクタはレシートの検証が成功したことをアプリにレポートしますが、AppsFlyerに新しいトランザクションは記録されません。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
- af_discount_id
- af_discount_type
- event_revenue_usd
- event_revenue (収益がゼロを超えるイベントに含まれます)
- af_revenue_usd
- af_revenue
- af_net_revenue
- af_net_revenue_factors
- af_net_revenue_tax_name
- af_net_revenue_tax_rate
- af_net_revenue_tax_exclusive
- af_net_revenue_country
- af_net_revenue_subdivision
- af_net_revenue_postal_code
サブスクリプション解約(af_ars_subscription_cancelled)
説明
請求期間の途中で自動更新サブスクリプションがキャンセルされたときに記録されます。ユーザーが同じ請求期間内に自動更新を復元しない場合、解約イベントが続きます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
サブスクリプション一時停止 (af_ars_subscription_paused) - Androidのみ
説明
ユーザーがアクティブなサブスクリプションを一時停止したときに記録されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
サブスクリプション再開 (af_ars_subscription_resumed)
説明
解約または返金されたサブスクリプションの後に、完全価格のサブスクリプションが再開されたときに記録されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
- af_discount_id
- af_discount_type
- af_reason
- event_revenue (イベント収益がゼロを超えるイベントに含まれます)
- af_revenue_usd
- af_revenue
- af_net_revenue
- af_net_revenue_factors
サブスクリプション解約 (af_ars_subscription_churned)
説明
サブスクライブユーザーが解約したときに記録されます。これは通常、自動更新のキャンセルまたは請求期間の満了後に発生します。また、課金や技術的な問題に続いて、更新によって解約が発生することもあります。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
- af_reason
サブスクリプションの払い戻し (af_ars_subscription_refunded)
説明
加入者が払い戻しを受けたときに記録されます。
注記:
- このイベントは通常、マイナス値と共に生成されます。どのトランザクションが返金されたかを検出できない場合、または返金の詳細が通知に含まれていない場合、返金イベントには何の値も表示されません。
パラメーター
- app_id
- customer_user_id
- af_reason
- af_subscription_ownership_type
- af_discount_id
- af_discount_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_refunded_transaction_ids
- event_revenue_usd
- event_revenue (収益がゼロを超えるイベントに含まれます)
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_store
- af_environment
- af_period_type
- af_revenue_usd
- af_revenue
- af_net_revenue
- af_net_revenue_factors
- af_net_revenue_tax_name
- af_net_revenue_tax_rate
- af_net_revenue_tax_exclusive
- af_net_revenue_country
- af_net_revenue_subdivision
- af_net_revenue_postal_code
サブスクリプション請求の猶予 (af_ars_subscription_billing_grace)
説明
請求の問題が原因でサブスクリプションの更新に失敗し、サブスクライブユーザーが請求猶予期間に入ったときに記録されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
サブスクリプション更新 (af_ars_subscription_renewed)
説明
自動更新サブスクリプションがいつ行われたかを記録します。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
- af_discount_id
- af_discount_type
- event_revenue_usd
- event_revenue (収益がゼロを超えるイベントに含まれます)
- af_revenue_usd
- af_revenue
- af_net_revenue
- af_net_revenue_factors
サブスクリプション変更 (af_ars_subscription_xgraded)
説明
サブスクライブユーザーが別のサービスにアップグレード、ダウングレード、またはプラン変更したときに記録されます。
パラメーター
- app_id
- customer_user_id
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
- af_discount_id
- af_discount_type
- event_revenue_usd
- event_revenue (収益がゼロを超えるイベントに含まれます)
- af_revenue_usd
- af_revenue
- af_net_revenue
- af_net_revenue_factors
既存のサブスクライバー (af_ars_existing_subscriber)
説明
サブスクライバーを別の関連するライフサイクル ステージに移行させるフォローアップサーバー通知を取得する前に、SDKコネクタが請求サイクルの途中でサブスクライバーについて通知されたときに記録されます。このイベントは通常、オンボーディングとSDKコネクタの導入期間中に生成されます。
パラメーター
- app_id
- customer_user_id
- country
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
- af_cuids
- af_validated
テスト購入(af_ars_sandbox_sdk)
説明
サンドボックス環境でSDKを介して記録された購入をテストするときに記録されます。
パラメーター
- app_id
- customer_user_id
- country
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_discount_id
- af_discount_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
- af_cuids
- af_validated
- af_net
- af_sandbox_revenue
テスト購入(af_ars_sandbox_s2s)
説明
サンドボックス環境で S2S経由でレポートされた購入をテストするときに記録されます。
パラメーター
- app_id
- customer_user_id
- country
- af_currency
- af_expires_date_ms
- af_subscription_ownership_type
- af_discount_id
- af_discount_type
- af_original_transaction_id
- af_order_id
- af_purchase_token
- af_transaction_id
- af_product_id
- android_id
- idfa
- ip
- appsflyer_id
- af_purchase_date_ms
- af_store
- af_environment
- af_period_type
- af_cuids
- af_validated
- af_net
- af_sandbox_revenue
パラメーター辞書
アプリ内購入とサブスクリプション購入イベントのパラメータは、ローデータレポートに独自の列として表示されるか、Event Valueの一部として入力されます。
独自の列を持つパラメーターは次のとおりです:
- app_id
- customer_user_id
- country_code
- af_currency
- event_revenue_usd
- af_revenue
- android_id
- ip
- idfa
- appsflyer_id
これらのパラメーターの詳細については、ローデータ項目の手引きを参照してください。
次の表では、ARSおよびVIAPイベントで使用できるローデータパラメーターについて説明します。
パラメーター | 備考 | 製品 |
---|---|---|
af_cancelation_date_ms | キャンセル日 | IAP(アプリ内購入) |
af_reason |
|
|
af_expires_date_ms |
現在のサブスクリプション請求サイクルの有効期限 |
購読 |
af_subscription_ownership_type |
FAMILY_SHARED:ユーザーがファミリー共有を介してアクセスできることを意味します。 |
購読 |
af_discount_id |
最初の購入時にユーザーに提示されたオファー IDIDは、割引コードがある場合にのみ入力されます。 |
|
af_discount_type |
ユーザーが利用したディスカウントの種類
|
購読 |
af_original_transaction_id |
|
|
af_order_id |
|
|
af_purchase_token |
|
|
af_transaction_id |
|
|
af_purchase_state |
|
アプリ内購入 |
af_original_transaction_id |
|
|
af_refunded_transaction_ids |
|
|
af_product_id |
サブスクリプションのプロダクトID |
|
af_purchase_date_ms |
レポートされたサービスIDアプリ内イベントの購入日 |
|
af_store |
サブスクリプションサービスの購入元であるアプリストア(例:Google Play / App Store) |
|
af_environment |
データの受信元の環境(実稼働環境またはサンドボックス) |
|
af_period_type |
|
購読 |
af_revenue_usd |
|
|
af_net_revenue |
すべての要因に基づいて計算された純収益。 |
|
af_net_revenue_factors |
|
|
af_net_revenue_tax_name |
|
|
af_net_revenue_tax_rate |
|
|
af_net_revenue_tax_exclusive |
|
|
af_net_revenue_country |
|
|
af_net_revenue_subdivision |
|
|
af_net_revenue_postal_code |
|
|
af_cuids |
|
購読 |
True Revenue
True Revenueは、AppsFlyerのアプリ内購入、およびサブスクリプション収益ソリューションを補うために構築されたビジネスロジックの仕組みです。これは、各トランザクションの純収益値をリアルタイムで自動的に計算し、レポートに含めます。True Revenueでは、総純収益の計算において、以下の要素を考慮します。
-
ストアコミッション:
- 自動的に計算およびレポートされます。ユーザー側でのアクションは必要ありません。
- 購入の場合、ストアコミッションは30%です。
- サブスクリプションでは、コミッションはサブスクライバーの有効期間を考慮して、サブスクライバーごとに自動的に計算されます。
App Store:30%のコミッションから始まり、1年後15%に引き下げ
Play Store:15%のコミッション - 関連する純収益パラメーターは、ローデータレポートで確認できます。
-
税金:
- 税は、デフォルトの税率構成によって、ROI360に測定されたすべてのトランザクションに対してデフォルトで報告されます。
- 設定は、専用の税APIを使用して編集できます。このJSONファイルは、サポートされているすべての国とそのデフォルトの税率が表示されます。開発者はそれを編集することも、APIでそのまま使用することもできます。
True Revenueをレポートで表示する場合は、以下のパラメーターに純収益データが含まれます。詳細は、パラメーター辞典を参照してください。
パラメーター | 純収益要素 |
---|---|
af_revenue_usd |
ストアコミッション |
af_net_revenue_tax_name |
税金 |
af_net_revenue_tax_rate |
税金 |
af_net_revenue_tax_exclusive |
税金 |
af_net_revenue_postal_code |
税金 |
af_net_revenue_country |
税金 |
af_net_revenue_subdivision |
税金 |
af_net_revenue |
|
af_net_revenue_factors |
|
仕様と制限事項
仕様 | 製品 | 備考 |
---|---|---|
インストールの計測と匿名化 |
|
サポートされておらず、計測対象外です。 |
新しいサブスクリプション |
サブスクリプション収益 |
AppsFlyer購入SDKを介してのみ計測 |
価格変更 |
サブスクリプション収益 |
サブスクリプション収益が新しいサービス料金を含むSDK発信の通知を受信しない場合は、サブスクリプション収益は引き続き以前のサービス料金を収益としてレポートします。 購入SDKから新しい製品価格を受け取ると、新しい価格が記録されます。 |
総収益(グロス) |
|
サポート対象 |
純収益(ネット) |
|
ローデータでのみ利用可能 |
税金 |
サブスクリプション収益 |
サポート対象 |
純収益ストア手数料 |
|
|
払い戻し | IAP(アプリ内購入) | 最初の購入から180日まで計測できます。 |
重複排除 |
|
イベント日から最大180日以内に計測されたトランザクションをサポート。 |
SDK厳格モード |
|
ROI360のサブスクリプションとアプリ内課金計測は、SDK strictモードで以下からサポートされます:
|
通貨設定 |
|
収益は、元の通貨 (event_revenue パラメーターを使用) および米ドル (event_revenue_usd パラメーターを使用) で報告されます。 |
データ更新頻度 |
|
|