We are planning to ban users who repeat suspected refund abuse. For judging the refund is abuse or not, we think the cancellation_reason property in ServerNotification helpful.
cancellation_reason:
The reason for a refunded or revoked transaction. A value of “1” indicates that the customer canceled their transaction due to an actual or perceived issue within your app. A value of “0” indicates that the transaction was canceled for another reason; for example, if the customer made the purchase accidentally. Possible values: 1, 0
We're thinking to judge the user who refunds many times with cancellation_reason = 0 as suspicious of abuse, and ban.
Question:
- Is it OK to use cancellation_reason for such judgement?
- How is the property determined? Does it only rely on User's report? Or does the Apple Support make a judgement?
- Can you provide a general exsample when cancellation_reason is 0? (We want reply from person inside Apple).
About Identify Refund Abuse: https://developer.apple.com/documentation/storekit/original_api_for_in-app_purchase/handling_refund_notifications#3591293