Docs FAQ General Questions

General Questions

Here are some of the most common questions about RefundShield and how it works.

How does RefundShield actually work?

RefundShield listens to Apple's App Store Server Notifications (V2) and Google Play's Real-time Developer Notifications whenever a user requests a refund. It instantly analyzes the customer's history and automatically responds to Apple or Google to approve or decline the refund based on your custom protection strategy.

Do I need to install an SDK in my app?

No, absolutely zero code changes are required in your app. RefundShield works entirely server-to-server. You just connect our webhook in App Store Connect or Google Play Console and provide your API credentials.

Do Apple and Google allow automated refund management?

Yes. Both platforms provide official APIs for this. Apple created the "Consumption API" and the CONSUMPTION_REQUEST notification, and Google provides the Voided Purchases API and the orders.reviewrefund endpoint, so developers can automate refund decisions based on actual user data and consumption.

Important: on Google Play, the orders.reviewrefund endpoint only supports chargeback-related refunds (when a customer disputes a charge with their bank). Other refund reasons, such as accidental purchases or claims of defective products, cannot be automatically contested via the API.

What types of in-app purchases do you support?

On the App Store, RefundShield supports consumable in-app purchases and auto-renewable subscriptions. On Google Play, it supports in-app products and subscriptions. Non-consumables and non-renewing subscriptions are not supported at this time.

How do the different protection presets work?

Presets determine how aggressively RefundShield fights a refund. For example, "Maximum" might block refunds even for recent purchases, while "Minimum" might be more lenient, analyzing factors like trial usage, renewals, and time since purchase to make a fair decision.

How do I obtain valid user consent for data sharing?

Both Apple and Google require you to obtain user consent before sharing their data for refund management, but you do not need to display a popup or a checkbox. That would provide a poor user experience and is not necessary.

Simply adding the relevant disclosure to your app's Privacy Policy or Terms of Service is fully compliant. Your users consent when they accept your terms. Make sure your policy states that in-app purchase and usage data may be shared with the platform (Apple or Google) for the purpose of evaluating refund requests.

See the App Store Requirements or Google Play Requirements article for the full checklist of what you need to set up before using RefundShield.