# App-Store-Rückerstattung: Was der Entwickler sieht

> Apple entscheidet allein. Du bekommst CONSUMPTION_REQUEST, kannst binnen 12 Stunden antworten und erfährst die Entscheidung per REFUND.

Originalseite: [App-Store-Rückerstattung: Was der Entwickler sieht](https://devoria.fr/de/blog/app-store-rueckerstattung-entwickler)
Autor: [Mehdi Azizi](https://devoria.fr/de/mehdi-azizi)
Veröffentlicht: 2026-11-04
Letzte inhaltliche Überarbeitung: 2026-11-04


Im App Store **gewährt oder verweigert Apple eine Rückerstattung, niemals der Entwickler.** Der Kunde stellt seinen Antrag auf der Website von Apple oder direkt in deiner App. Wenn du die Server-Benachrichtigungen von Apple eingerichtet hast, bekommst du beim Antrag eine `CONSUMPTION_REQUEST`-Benachrichtigung und bei der Entscheidung dann `REFUND` oder `REFUND_DECLINED`. Dazwischen hast du 12 Stunden, um Verbrauchsdaten und deine Präferenz zu schicken, sofern der Kunde zugestimmt hat.

Eine gewährte Rückerstattung entfernt den Kauf aus den aktiven Berechtigungen des Kunden und taucht negativ in deinen Verkaufsberichten auf. Dieser Guide erklärt jeden Schritt, was du an Apple schicken kannst und was du gegen missbräuchliche Anträge tun darfst. Die Regeln stammen aus den Seiten von Apple, gelesen am 3. November 2026. Der echte Fall stammt aus einem Alert, den ich im Oktober für meine Apps eingerichtet habe.

## Wer entscheidet über eine Rückerstattung im App Store?

Apple, und nur Apple. Die [Support-Seite von Apple](https://support.apple.com/en-us/118223) beschreibt den Ablauf für den Kunden: Er meldet sich auf reportaproblem.apple.com an, wählt „Request a refund“, gibt einen Grund an und dann den betroffenen Kauf. Apple rät ihm, 24 bis 48 Stunden auf eine Antwort zu warten.

Der Kunde kann eine Rückerstattung auch in deiner App beantragen. StoreKit bietet dafür [ein Antragsfenster](https://developer.apple.com/documentation/storekit/transaction/beginrefundrequest%28in%3A%29-9k0pj), verfügbar seit iOS 15. Apple empfiehlt, es aus den Kontoeinstellungen oder einem Hilfemenü aufzurufen. Es zeigt den Kauf und eine Liste von Gründen, und Apple braucht bis zu 48 Stunden für die Entscheidung.

**In beiden Fällen musst du nichts freigeben.** Du kannst nur Informationen und eine Präferenz liefern, die zu mehreren Kriterien in Apples Entscheidung gehören.

## Wer was sieht, Schritt für Schritt

| Schritt                  | Kundenseite                                | Entwicklerseite                                              |
| ------------------------ | ------------------------------------------ | ------------------------------------------------------------ |
| Antrag                   | Formular von Apple oder Fenster in der App | Benachrichtigung `CONSUMPTION_REQUEST`                       |
| Innerhalb von 12 Stunden | Warten                                     | Verbrauchsdaten können gesendet werden                       |
| Innerhalb von 48 Stunden | Antwort von Apple                          | Benachrichtigung `REFUND` oder `REFUND_DECLINED`             |
| Nach einer Zusage        | Geld zurück auf sein Zahlungsmittel        | Kauf aus aktiven Berechtigungen entfernt, negative Einheiten |
| Nach einem Einspruch     | Rückerstattung von Apple storniert         | Benachrichtigung `REFUND_REVERSED`, Zugang wiederherstellen  |

App Store Connect zeigt dir nur bereits gewährte Rückerstattungen, unter Sales and Trends. **Der Antrag selbst kommt nur über die Server-Benachrichtigungen an.** Ohne sie erfährst du erst hinterher von der Rückerstattung.

## Die Server-Benachrichtigungen bei einer Rückerstattung

Die [App Store Server Notifications V2](https://developer.apple.com/documentation/appstoreservernotifications/notificationtype) senden hier fünf relevante Typen. Du empfängst sie unter der HTTPS-Adresse, die du in App Store Connect hinterlegt hast, eine für Production und eine für die Sandbox.

| Benachrichtigung      | Was sie meldet                                                  | Was du tust                                        |
| --------------------- | --------------------------------------------------------------- | -------------------------------------------------- |
| `CONSUMPTION_REQUEST` | Der Kunde beantragt eine Rückerstattung                         | Innerhalb von 12 Stunden antworten, bei Zustimmung |
| `REFUND`              | Apple hat die Transaktion erstattet                             | Erstatteten Inhalt oder Zugang entfernen           |
| `REFUND_DECLINED`     | Apple hat den Antrag abgelehnt                                  | Nichts, der Zugang bleibt                          |
| `REFUND_REVERSED`     | Apple storniert eine Rückerstattung nach Einspruch des Kunden   | Wiederherstellen, was du entfernt hattest          |
| `REVOKE`              | Ein über Family Sharing geteilter Kauf ist nicht mehr verfügbar | Dem Familienmitglied den Zugang entziehen          |

Dein Server muss mit einem HTTP-Code zwischen 200 und 206 antworten. Laut [der Seite zu Antworten auf Benachrichtigungen](https://developer.apple.com/documentation/appstoreservernotifications/responding-to-app-store-server-notifications) versucht Apple es sonst fünfmal erneut, jeweils 1, 12, 24, 48 und dann 72 Stunden nach dem vorherigen Versuch. In der Sandbox sendet Apple nur einmal.

## Die Consumption API: was du Apple sagen kannst

Wenn der Antrag eintrifft, kannst du mit [Send Consumption Information](https://developer.apple.com/documentation/appstoreserverapi/send-consumption-information) antworten. Die Regel passt in einen Satz von Apple: „Respond within 12 hours of receiving the `CONSUMPTION_REQUEST` notification.“ Version 2 der API gilt für alle Produkttypen, Abos eingeschlossen.

Die Felder der [Anfrage](https://developer.apple.com/documentation/appstoreserverapi/consumptionrequest):

| Feld                    | Pflicht | Was es Apple sagt                                                        |
| ----------------------- | ------- | ------------------------------------------------------------------------ |
| `customerConsented`     | Ja      | Der Kunde hat der Weitergabe seiner Daten zugestimmt                     |
| `deliveryStatus`        | Ja      | Der Kauf wurde geliefert und funktioniert, oder warum nicht              |
| `sampleContentProvided` | Ja      | Vor dem Kauf gab es eine Testphase, eine Vorschau oder eine Beschreibung |
| `consumptionPercentage` | Nein    | Der verbrauchte Anteil, von 0 bis 100.000 für 0 bis 100 %                |
| `refundPreference`      | Nein    | Deine Präferenz: `DECLINE`, `GRANT_FULL` oder `GRANT_PRORATED`           |

Zwei Details sind wichtig. Wenn `deliveryStatus` nicht `DELIVERED` ist, muss der verbrauchte Anteil null sein. Und bei einer anteiligen Rückerstattung eines Abos lässt du den verbrauchten Anteil weg: Apple berechnet ihn.

**Die Zustimmung ist die Voraussetzung für alles.** Apple schreibt: „You must obtain valid consent from the customer before sharing their personal data with Apple in the Send Consumption Information API.“ Ohne Zustimmung antwortest du nicht. Apple verbietet außerdem, diese Zustimmung über das Tracking-Fenster einzuholen: „Don't use the AppTrackingTransparency prompt to obtain consent“.

## Wenn du RevenueCat nutzt

Mit RevenueCat empfängt RevenueCat die Benachrichtigungen von Apple und beantwortet den Antrag, mit [Refund Control](https://www.revenuecat.com/docs/customers/refund-control). Du wählst eine von vier Richtlinien: volle Rückerstattung bevorzugen, Ablehnung bevorzugen, nur Verbrauchsdaten senden oder nicht antworten.

Wenn du die Datenweitergabe aktivierst, bestätigst du, dass du die Zustimmung deiner Kunden hast. RevenueCat sagt es selbst: „Enabling consumption data sharing confirms that you obtained consent from your Customers.“ Außerdem empfiehlt RevenueCat, „Prefer no refund“ auf eine gezielte Gruppe zu beschränken, und warnt, wenn diese Präferenz die meisten deiner Kunden betrifft.

Damit die Benachrichtigungen auch auf deinem eigenen Server ankommen, bietet RevenueCat in den App-Einstellungen ein Feld „Apple Server Notification Forwarding URL“. Es ist auf [der Seite zu den Apple-Benachrichtigungen](https://www.revenuecat.com/docs/platform-resources/server-notifications/apple-server-notifications) beschrieben. Das nutze ich. Wie du ein Abo mit RevenueCat aufsetzt, steht in [RevenueCat und In-App-Abos unter iOS](https://devoria.fr/de/blog/revenuecat-in-app-abo-ios-einrichten).

## Die Auswirkung auf deine Einnahmen und das Abo

**Auf den Zugang.** Laut der [Dokumentation zu `currentEntitlements`](https://developer.apple.com/documentation/storekit/transaction/currententitlements) gilt: „Products that the App Store has refunded or revoked don't appear in the current entitlements“. Wenn deine App die Berechtigungen mit `currentEntitlements` prüft, verschwindet der erstattete Zugang von selbst. Die Transaktion enthält Datum und Grund des Entzugs, in `revocationDate` und `revocationReason`.

**Auf die Berichte.** Laut [der Hilfe zum Verkaufsbericht](https://developer.apple.com/help/app-store-connect/reference/reporting/summary-sales-report) erscheint eine Rückerstattung mit negativen Einheiten und negativem Kundenpreis. Bei Abos zählt die [Seite zu den Abodaten](https://developer.apple.com/help/app-store-connect/measure-app-performance/view-subscription-data) volle und teilweise Rückerstattungen zu den Ereignissen und zieht sie von den täglichen Einheiten ab.

**Auf deinen Ruf.** Die [Guideline 5.6.4](https://developer.apple.com/app-store/review/guidelines/#5.6.4) nennt übermäßige Rückerstattungsanträge als Zeichen mangelnder Qualität. Eine hohe Rückerstattungsquote ist also nicht nur ein Geldverlust: Apple kann sie berücksichtigen, wenn es bewertet, ob du den Verhaltenskodex einhältst.

## Mein Fall: der Alert für meine Apps

Am 12. Oktober 2026 habe ich einen Alert für meine Apps eingerichtet. RevenueCat leitet die Benachrichtigungen von Apple an eine Route auf devoria.fr weiter. Sie prüft die Signatur von Apple und schickt mir dann einen Alert, ohne Betrag. Ich wollte den Antrag sehen, sobald er eintrifft, nicht nur das Ergebnis.

Am 18. Oktober kam der erste echte Antrag bei TradaZen an, meinem Trading-Simulator. Ein Jahresabo, bezahlt am Ende einer 7-tägigen kostenlosen Testphase. Angegebener Grund: ein versehentlicher Kauf. Drei Lektionen:

1. **Derselbe Antrag kann mehrmals ankommen.** Ich habe am selben Abend dreimal denselben Alert bekommen. Seitdem wird jeder Alert anhand von Benachrichtigungstyp und Transaktions-ID dedupliziert.
2. **Die Entscheidung kam in weniger als einem Tag.** Apple hat etwa 22 Stunden nach dem Antrag abgelehnt. Der Kunde hat seinen Zugang behalten.
3. **Eine Ablehnung ist nicht das Ende.** Derselbe Kunde hat zwei Tage später erneut einen Antrag gestellt, für dieselbe Transaktion.

> Einen Antrag wegen „versehentlichem Kauf“ am Ende einer Testphase gewinnst du nicht mit deiner Antwort an Apple. Du verhinderst ihn auf der Paywall, vor der ersten Zahlung.

## Missbräuchliche Anträge eindämmen, ohne die Regeln zu brechen

**Was erlaubt ist:**

- **Jeden Antrag mit korrekten Daten beantworten**, wenn der Kunde zugestimmt hat.
- **Eine gezielte Präferenz angeben**, zum Beispiel eine Ablehnung für einen bereits verbrauchten Kauf, statt alle abzulehnen.
- **Jedes `REFUND` einem Kundenkonto zuordnen.** Die [Seite von Apple zu Rückerstattungsbenachrichtigungen](https://developer.apple.com/documentation/storekit/handling-refund-notifications) empfiehlt das, um wiederholte Rückerstattungen zu erkennen.
- **Vor dem Kauf klar sagen, was man kauft.** Die [Guideline 3.1.2(c)](https://developer.apple.com/app-store/review/guidelines/#3.1.2) verlangt, zu beschreiben, was der Nutzer für den Preis bekommt, bevor du ihm ein Abo anbietest.

**Was verboten ist:**

- **Falsche Daten senden**, damit ein Antrag abgelehnt wird, oder ohne Zustimmung antworten.
- **Die Zustimmung über das Tracking-Fenster einholen**, was Apple ausdrücklich ausschließt.
- **Den Kauf zur Falle machen.** Die [Guideline 5.6](https://developer.apple.com/app-store/review/guidelines/#5.6) verbietet, Kunden zu ungewollten Käufen zu drängen oder Nicht-Geliefertes zu berechnen.
- **Druck auf einen Kunden ausüben**, der eine Rückerstattung beantragt. Dieselbe Regel verlangt einen respektvollen Kundenservice, ohne Einschüchterung.

Der beste Hebel liegt davor: eine Paywall, die den Preis, das Datum der ersten Zahlung und den Weg zur Kündigung nennt. Die Fehler, die du vermeiden solltest, stehen in [den Paywall-Fehlern](https://devoria.fr/de/blog/ios-paywall-anfaengerfehler-verkaeufe), die Regeln für Testphasen in der kostenlosen Testphase im App Store.

## Vor Production testen

Laut der [Seite zum Testen von Anträgen](https://developer.apple.com/documentation/storekit/testing-refund-requests) akzeptieren die Sandbox und die StoreKit-Tests in Xcode Rückerstattungsanträge. In der Sandbox löst jeder Grund automatisch eine Zusage aus. Um eine Ablehnung zu simulieren, wählst du „Other“ und tippst `DECLINE`. Für eine anteilige Rückerstattung tippst du `GRANT_PRORATED`. In der Sandbox muss deine Verbrauchsantwort innerhalb von fünf Minuten rausgehen.

## Ein Abo, das seltener erstattet wird

Das [iOS & Android Kit](https://devoria.fr/de/kits/ios) basiert auf dem Code meiner Apps, mit Onboarding, Paywall und Abos bereits fertig programmiert, und führt dich in vier Schritten bis in den App Store, in deinem Tempo. Das komplette Setup steht auf der Seite [In-App-Abo unter iOS](https://devoria.fr/de/expertise/in-app-abo-ios), und Apples Regeln für Abos in [der Guideline 3.1.2](https://devoria.fr/de/blog/guideline-3-1-2-app-abo-abgelehnt).

Bevor du deine Paywall startest, [mach deine kostenlose Diagnose](https://devoria.fr/de/diagnostic): Sie zeigt dir, was dein Projekt wirklich blockiert, und schickt dir meine Checkliste gegen Apple-Ablehnungen.

## Häufige Fragen

### Kann der Entwickler eine Rückerstattung im App Store ablehnen?

Nein. Apple entscheidet allein. Du kannst Verbrauchsdaten und eine Präferenz senden, zum Beispiel `DECLINE`, die zu mehreren Kriterien gehören. Das letzte Wort hat Apple.

### Wird der Entwickler über einen Rückerstattungsantrag informiert?

Ja, wenn er die App Store Server Notifications V2 eingerichtet hat. Apple sendet `CONSUMPTION_REQUEST` beim Antrag und dann `REFUND` oder `REFUND_DECLINED` bei der Entscheidung. Ohne Benachrichtigungen siehst du nur die gewährten Rückerstattungen, in deinen Berichten.

### Wie lange braucht Apple für einen Rückerstattungsantrag?

Apple nennt dem Kunden 24 bis 48 Stunden. Die StoreKit-Dokumentation spricht von höchstens 48 Stunden. Du hast 12 Stunden, um die Verbrauchsdaten zu senden.

### Was passiert nach einer Rückerstattung mit dem Zugang?

Der erstattete Kauf fällt aus den aktiven Berechtigungen des Kunden: StoreKit 2 gibt ihn nicht mehr in `currentEntitlements` zurück. Wenn Apple die Rückerstattung später storniert, bekommst du `REFUND_REVERSED` und musst den Zugang wiederherstellen.

### Brauche ich die Zustimmung des Kunden, um Apple zu antworten?

Ja. Apple verlangt eine gültige Zustimmung vor jeder Datenweitergabe über die Consumption API. Ohne sie antwortest du nicht auf die Benachrichtigung. Das Tracking-Fenster darf nicht dazu dienen, sie einzuholen.

### Zählen Rückerstattungen gegen meine App?

Sie können. Die Guideline 5.6.4 nennt übermäßige Rückerstattungsanträge als Zeichen mangelnder Qualität, die Apple berücksichtigen kann, wenn es die Einhaltung des Verhaltenskodex bewertet.


## Dein Projekt

[iOS & Android Kit](https://devoria.fr/de/kits/ios): Bau deine iPhone- und Android-App mit Claude Code: der Startcode meiner Apps, der Weg bis in die Stores und alle Kits. 99 €.

[Diagnose: Was dich von deiner iPhone-App trennt](https://devoria.fr/de/diagnostic): 7 Fragen, 60 Sekunden: Du erfährst, was dich wirklich davon abhält, deine iPhone-App zu veröffentlichen, bekommst deinen Weg in 4 Schritten und das passende Kit.
