Refund Saver
ユーザーが払い戻しをリクエストすると、Appleは調査を行います。払い戻しが正当かどうかを判断するために、Appleはそのユーザーのアクティビティに関する情報を開発者に求めます。この証拠がなければ、頻繁に利用されているサブスクリプションでも払い戻しが承認される可能性が高くなります。
Refund SaverはAppleの消費情報リクエストに自動的に対応し、収益を守りながら、不正なリクエストが拒否される可能性を高めます。自動更新サブスクリプション、買い切りサブスクリプション、消耗型アイテム、非消耗型アイテム(永続アクセス商品を含む)など、Appleのすべてのアプリ内課金タイプに対応しています。
Refund Saverの仕組み
-
ユーザーが払い戻しリクエストを開始すると、App Storeはトランザクションと利用状況の詳細を求める通知を送信します。
この通知を無視したり遅延したりすると、Appleは払い戻しを承認する可能性が高くなります。
-
Adapty Refund Saverはこれらの通知を自動的に処理し、Appleに必要なデータを提供します。
この自動化により、不要な払い戻しの発生を抑えながら、時間の節約と収益の保護を実現します。
-
Adaptyは各結果(払い戻し済みまたは拒否)を記録します。そのデータがダッシュボードのRefund Saver分析を支えます。
Refund Saverを使用することで、払い戻しリクエストによる収益損失の最大40%を守ることができます。
Refund Saverを使用するための要件
この機能を使用するには、以下の前提条件を満たしていることを確認してください。
- App Store Connectのプライバシーポリシーを更新する: アプリのプライバシーポリシーに、消費データの収集と使用についての開示が必要です。これにより、ユーザーがアプリをダウンロードする前にプライバシー慣行を理解できます。詳しくはAppleのアプリプライバシーの詳細を参照してください。
- アプリ内でデータ共有に関するユーザーの同意を取得する: Appleは、ユーザーの個人データを共有する前に有効な同意を取得することを義務付けています。ユーザーデータをAppleと共有するのは開発者であるため、この同意の取得は開発者の責任です。詳細はAppleのガイドラインを参照してください。
- Server Notifications V2を有効にする: V1通知はサポートされていないため、Apple Developerアカウントでサーバー通知V2が有効になっており、Adaptyで正しく設定されていることを確認してください。まだ有効にしていない場合は、App Storeサーバー通知の有効化ガイドの手順に従ってください。
Refund Saverを有効にする
- Adapty ダッシュボードでRefund Saverセクションを開きます。
- Turn on Refund Saverをクリックして機能を有効にします。
デフォルトの払い戻し動作を設定する
Appleは、各払い戻しリクエストへの対応時に開発者が希望する結果を指定することを許可しています。この設定の目的は、払い戻しの拒否と承認の適切なバランスを見つけて、正当な払い戻しのみが行われるようにすることです。なお、この設定はあくまで結果に影響を与えるためのものであり、最終的な判断はAppleが行います。
Adaptyはこの設定に対応していますが、すべての払い戻しリクエストに同じ値を使用します。
-
設定を変更するには、Edit refund preferenceをクリックします。
-
Edit refund preferenceウィンドウで、Default refund request preferenceオプションを選択します。
オプション 説明 Always decline (デフォルト)デフォルトのオプションで、通常は払い戻しを最小化する最良の結果をもたらします。 Decline first refund request, grant all next Refund Saverが処理するすべてのトランザクションに対して、最初はAppleに払い戻しを拒否するよう求めます。ただし、同じトランザクションが再度現れた場合は、常に払い戻しを承認するよう推奨します。このアプローチにより、不当な払い戻し拒否によるユーザーの不満を最小化できます。ユーザーは単に再度リクエストするだけで払い戻しを受けられる可能性があります。 Always refund すべての払い戻しリクエストをAppleが承認するよう推奨します。 No preference Appleに対して何も推奨しません。この場合、Appleはあなたの設定からの影響を受けず、内部ポリシーとユーザー履歴のみに基づいて払い戻し結果を決定します。最も中立的なアプローチです。
ダッシュボードで特定ユーザーの払い戻し動作を設定する
アプリ全体のデフォルトのRefund Saver動作を設定していても、特定のユーザーに個別の設定を行いたい場合があります。Adapty ダッシュボードでは、ユーザーのプロファイルからこれを行うことができます。左下にあるRefund Saver Preferencesセクションを使用してください。
ユーザーごとの設定はアプリレベルのデフォルト(「Decline first refund request, grant all next」の動作を含む)より優先されます。
SDKで特定ユーザーの払い戻し動作を設定する
ユーザーのアクションに応じて、インストールごとに個別に払い戻し設定をアプリコードで行うことができます。以下のスニペットを使用して設定を行ってください。
Server-side APIを使用して個別の払い戻し設定を行うこともできます。
- ユーザーがボタンをクリックして設定を行うなど、設定がクライアントの操作に直接紐づいている場合はSDKを使用してください。
- サーバーサイドの処理が必要な場合や、アプリケーションのアーキテクチャに適している場合はAPIを使用してください。
ユーザーの同意を取得する
データ共有に関するユーザーの同意をどのように収集するかはお客様次第ですが、Appleは個人データを共有する前に有効なユーザーの同意を取得することを義務付けています。Appleはオプトインアプローチを推奨しており、データの使用方法を説明し、明示的なユーザーアクションを求めるアプリ内プロンプトを使用します。ユーザーがプロンプトを無視または拒否した場合、同意したとは見なされません。詳細はAppleのガイドラインを参照してください。
アプリで明示的な同意が実用的でない場合は、オプトアウトアプローチを検討することもできます。これは、利用規約にデータ共有条項を含め、利用規約に同意することでデータ共有に同意したものとみなす方法です。ユーザーが同意を取り消す方法を明確に説明することも忘れずに。
以下は、共有する可能性のあるデータの種類を含むオプトアウトアプローチの条項例です。これはあくまで参考のためのサンプルです。最終版がすべての適用法およびAppleの要件に準拠していることを確認する責任はお客様にあります。
「アプリ内購入の払い戻しリクエストを受け取った場合、ユーザーのアプリ内購入アクティビティに関する情報をAppleに提供することがあります。これには、アプリのインストールからの経過時間、総アプリ使用時間、匿名のアカウント識別子、アプリ内購入が完全に消費されたかどうか、トライアル期間が含まれていたかどうか、総支出額、総払い戻し額などの詳細が含まれる場合があります。」
選択したアプローチに応じて、Edit refund preferencesメニューのDefault consent policyオプションを設定してください。
| オプション | 説明 |
|---|---|
| Opt-out | (デフォルト)Adaptyがユーザーの同意状態を把握していない場合、同意が与えられたと見なし、Refund Saverは払い戻し関連データをAppleと共有します。 |
| Opt-in | Adaptyがユーザーの同意状態を把握していない場合、同意が与えられていないと見なし、Refund Saverはデータを共有しません。これはAppleが推奨するアプローチです。 |
SDKでユーザーの同意を更新する
特定のユーザーが同意を与えたかどうかをAdaptyに伝えるには、updateCollectingRefundDataConsentメソッドを使用します。この値はプロファイルごとにサーバーサイドで保持されるため、同意が変更された場合のみ呼び出す必要があります。
Server-side APIを使用して個別のデータ共有設定を行うこともできます。
- ユーザーがボタンをクリックして設定を行うなど、設定がクライアントの操作に直接紐づいている場合はSDKを使用してください。
- サーバーサイドの処理が必要な場合や、アプリケーションのアーキテクチャに適している場合はAPIを使用してください。
ユーザーの同意を確認する
ユーザーの現在の同意状態はいつでも確認できます。Adapty ダッシュボードでユーザーのプロファイルを開き、左下のRefund Saver PreferencesセクションにあるAllow data sharing設定を確認してください。
Server-side APIを使用して個別の払い戻しと共有の設定を取得することもできます。
制限事項
- AppleのApp Storeのみ対応: Refund SaverはAppleのApp Storeへの払い戻しリクエストにのみ対応しています。Google Playは払い戻しに対する消費データ分析を提供していません。Google Playでの払い戻し決定はGoogleのポリシーとユーザーが提供する情報のみに基づいています。
- Server Notifications V2が必要: Refund SaverはApp Store Server Notifications V1とは互換性がありません。現在AdaptyでV1を使用している場合はV2に切り替える必要があります。詳細はApp Storeサーバー通知をAdaptyに送信するガイドを参照してください。V2に切り替えることで、より正確で包括的なデータが提供され、Adaptyの分析も向上します。