概要: レシート検証の機能を実装することで 、iOSとAndroidのアプリストアで行われた不正なアプリ内購入から保護し、レポート通りにアプリ内購入が発生したことを確認します。 注:注: これはレガシー機能です。完全に自動化され、改善された新しい アプリ内購入検証メカニズムの詳細をご覧ください。
注
- アプリ内購入のレシート検証は、サードパーティの Android アプリストアではサポートされていません。
レシート検証のフロー
以下のような流れで、レシート検証を行います:
- エンドユーザーがアプリ内課金を実行。
- アプリストアが、課金が成功したことをアプリへ通知。
-
アプリ開発者が、SDKのレシート検証の機能を呼び出し。
validateAndLogInAppPurchase
- SDKがAppsFlyerの検証サービスを呼び出す。
- AppsFlyerが、課金が不正なものではないことを確認するために検証。
- 検証が成功した場合、AppsFlyerが内部で通常の af_purchase のイベントを作成。それ以外の場合、作成されたイベントを不正イベントとしてタグ付け。(Protect360経由で確認可能)
- AppsFlyerの検証サービスが、レスポンスをSDKに転送。
-
SDKがレシート検証のレスポンスをアプリへ転送(成功または失敗)。
レシート検証が失敗した場合、そのイベントはブロック済アプリ内イベントローデータレポート内に表示されます(Protect360 を契約している場合に利用可能)。
レシート検証の実装の詳細については、開発者SDKのドキュメントを参照してください。
- Android
- iOS
注:
- iOSのsandboxアプリ(App Storeには公開されていないアプリ)の場合、レシート検証を実施するにはコードの追加が必要です。
- AppsFlyerのレシート検証サービスは、すべての広告主が無料で利用可能です。
- Androidの場合、購入時にエンドユーザーがインターネットにアクセスできない場合、レシートの検証で結果が
null
null で返され、検証が失敗したと見なされる場合があります。
重要!
そのため、レシート検証時に af_purchaseのイベントを生成しないでください。生成してしまうと、重複して収益イベントが計測されてしまいます。