CHARGEBACKSAPP STORE

Rückerstattungsanfragen im App Store richtig handhaben (inkl. Consumption Request)

Wie Rückerstattungen für Abos im App Store funktionieren: wer entscheidet, CONSUMPTION_REQUEST, was Sie Apple in 12 Stunden senden und was danach zu tun ist.

Veröffentlicht am 6 Min. Lesezeit

Im App Store erstatten Sie ein Abo nie selbst, und Sie beantworten nie einen Karten-Streitfall. Apple ist der Händler: Apple nimmt die Zahlung entgegen, entscheidet über Rückerstattungen und regelt alles mit der Bank des Kunden. Was Sie tun können, ist begrenzter, aber trotzdem nützlich: Apple mitteilen, wie der Kunde das Bezahlte tatsächlich genutzt hat, richtig reagieren, wenn eine Rückerstattung durchgeht, und Missbrauchsmuster erkennen.

Dieser Ratgeber behandelt diesen Ablauf für automatisch verlängerbare Abos. Er hält sich an Apples eigene Dokumentation, vor allem Send Consumption Information, den Body ConsumptionRequest, die Referenz zu notificationType und Get Refund History (alle abgerufen im November 2026).

Wie Kunden eine Rückerstattung anfordern

Apples Leitfaden zum Umgang mit Rückerstattungsbenachrichtigungen nennt die Wege, auf denen ein Kunde sein Geld zurückverlangen kann:

  • über den Apple Support;
  • über Apples Self-Service-Seite reportaproblem.apple.com;
  • indem er den Herausgeber seiner Zahlungsmethode um eine Rückerstattung bittet.

Es gibt einen vierten Weg, den Sie kontrollieren: Ihre App kann mit StoreKits beginRefundRequest(in:) Apples Rückerstattungs-Sheet öffnen. Apple schlägt vor, es aus den Kontoeinstellungen oder einem Hilfemenü aufzurufen. Das Sheet zeigt den Kauf und eine Liste von Gründen, und laut Apples Dokumentation braucht der App Store bis zu 48 Stunden, um die Anfrage zu genehmigen oder abzulehnen.

Egal auf welchem Weg, die Entscheidung trifft Apple. Sie haben keinen Button zum Genehmigen oder Ablehnen.

Die Benachrichtigungen, die Sie erhalten

Wenn Sie App Store Server Notifications V2 eingerichtet haben, erzeugen Rückerstattungen eine kleine Zahl von Ereignissen:

Benachrichtigung Was sie bedeutet
CONSUMPTION_REQUEST Ein Kunde hat eine Rückerstattungsanfrage gestellt, und Apple bittet Sie um Nutzungsdaten
REFUND Apple hat eine Transaktion erstattet
REFUND_DECLINED Apple hat eine Rückerstattungsanfrage abgelehnt
REFUND_REVERSED Apple hat eine gewährte Rückerstattung rückgängig gemacht, wegen eines Streitfalls, den der Kunde eröffnet hat
DID_CHANGE_RENEWAL_STATUS mit AUTO_RENEW_DISABLED Unter anderem hat das System die automatische Verlängerung abgeschaltet, weil der Kunde über Ihre App eine Rückerstattung angefordert hat
REVOKE Der Zugriff über die Familienfreigabe oder eine Gruppe ist beendet, zum Beispiel weil der Käufer eine Rückerstattung erhalten hat

Die Nutzlast von CONSUMPTION_REQUEST enthält ein consumptionRequestReason mit dem Grund, den der Kunde angegeben hat. Apple dokumentiert fünf Werte: UNINTENDED_PURCHASE, FULFILLMENT_ISSUE, UNSATISFIED_WITH_PURCHASE, LEGAL und OTHER. Speichern Sie ihn. Mit der Zeit sagt er Ihnen, ob Rückerstattungen von versehentlichen Käufen, von Fehlern oder von Leuten kommen, denen das Produkt einfach nicht gefallen hat.

Den Consumption Request beantworten

Apple sagt, dass es bei einer Rückerstattung „eine Vielzahl von Faktoren” berücksichtigt und dass die von Ihnen gesendeten Nutzungsinformationen einer davon sind. Es ist Ihre einzige Möglichkeit, dem Prüfer Fakten vorzulegen.

Die Regeln

Apples Dokumentation ist in drei Punkten streng:

  1. Zuerst die Einwilligung. Sie dürfen Daten nur senden, wenn der Kunde der Weitergabe an Apple zugestimmt hat. Wenn nicht, sagt Apple, dass Sie auf den CONSUMPTION_REQUEST gar nicht antworten sollen. Der Server lehnt jede Anfrage, bei der customerConsented nicht true ist, mit einem HTTP-Fehler 400 ab.
  2. 12 Stunden. Antworten Sie innerhalb von 12 Stunden nach Erhalt der Benachrichtigung.
  3. Die Einwilligung ist Ihre Aufgabe. Apple erklärt, dass Sie „allein dafür verantwortlich sind, eine gültige Einwilligung einzuholen”, dass sie freiwillig, konkret, informiert und eindeutig sein muss und dass Sie dafür nicht die App-Tracking-Transparency-Abfrage verwenden dürfen. Wenn Sie die API nutzen, müssen Sie die Datennutzung außerdem in den Datenschutzangaben Ihrer App offenlegen.

Die Anfrage

Sie rufen PUT https://api.storekit.apple.com/inApps/v2/transactions/consumption/ auf, gefolgt von der Transaktions-ID aus der Benachrichtigung. Der Body ConsumptionRequest hat fünf Felder:

Feld Was hineingehört
customerConsented true, der einzige Wert, den Apple akzeptiert
deliveryStatus DELIVERED oder einer von UNDELIVERED_QUALITY_ISSUE, UNDELIVERED_WRONG_ITEM, UNDELIVERED_SERVER_OUTAGE, UNDELIVERED_OTHER
consumptionPercentage Wie viel genutzt wurde, in Milli-Einheiten. Muss 0 sein, wenn der Artikel nicht geliefert wurde
refundPreference Optional: GRANT_FULL, GRANT_PRORATED oder DECLINE
sampleContentProvided Ob Sie vor dem Kauf eine kostenlose Probe, eine Testphase oder eine Beschreibung der Funktionen angeboten haben

Bei automatisch verlängerbaren Abos zählt eine Einschränkung: Wenn Sie GRANT_PRORATED wählen, senden Sie kein consumptionPercentage. Apple berechnet den Prozentsatz bei Abos selbst.

Entscheiden, was Sie sagen

Seien Sie ehrlich, weil es richtig ist und weil Apple ohnehin das letzte Wort hat. Ein einfaches Regelwerk:

  • Die App hat versagt (Ausfall, kaputte Funktion, Inhalt nie freigeschaltet): Setzen Sie den passenden Status UNDELIVERED_*, eine Nutzung von 0 und GRANT_FULL. Gegen eine Rückerstattung für etwas zu kämpfen, das nicht funktioniert hat, ist sinnlos.
  • Versehentlicher Kauf, keine Nutzung: DELIVERED, eine Nutzung von 0 oder nahe 0 und GRANT_FULL oder keine Präferenz.
  • Echte, anhaltende Nutzung im Zeitraum: DELIVERED und DECLINE oder GRANT_PRORATED, je nach Ihrer Richtlinie.
  • Kostenlose Testphase vor dem bezahlten Zeitraum: Setzen Sie sampleContentProvided auf true.

Die Zahlen müssen aus Ihren eigenen Nutzungsdaten kommen, für jeden Kunden gleich gemessen. Dafür brauchen Sie Nutzungsdaten, die an die App-Store-Transaktion gebunden sind, was in der Praxis heißt, beim Kauf ein appAccountToken zu setzen, damit Sie Apples Transaktion Ihrem Nutzer zuordnen können.

Wenn eine Rückerstattung durchgeht

Eine Benachrichtigung REFUND bedeutet, dass das Geld weg ist. Laut Apples Benachrichtigungsreferenz enthält revocationDate der Transaktion den Zeitpunkt der Rückerstattung und revocationReason den Grund. Es gibt zwei Werte für den Grund:

  • 0: aus anderen Gründen erstattet, zum Beispiel wegen eines versehentlichen Kaufs;
  • 1: erstattet wegen eines tatsächlichen oder vermeintlichen Problems in Ihrer App.

Praktische Schritte:

  1. Entziehen Sie den Zugriff für die erstattete Transaktion und sagen Sie es in der App mit einer kurzen Nachricht. Apples Leitfaden empfiehlt „kontextbezogene Hinweise in der App zu allen Maßnahmen, die Sie infolge der Rückerstattung ergreifen”.
  2. Speichern Sie den Grund. Ein wachsender Anteil von Grund 1 ist ein Produktsignal, kein Abrechnungssignal.
  3. Achten Sie auf Rücknahmen. Wenn ein REFUND_REVERSED eintrifft, müssen Sie laut Apple den Inhalt oder Dienst wiederherstellen. Bei automatisch verlängerbaren Abos bleibt das Verlängerungsdatum unverändert.
  4. Holen Sie verpasste Ereignisse nach. Get Refund History liefert die vom App Store genehmigten Rückerstattungen eines Kunden, 20 pro Seite, und Apple empfiehlt es, um während eines Ausfalls verpasste Rückerstattungsbenachrichtigungen nachzuholen.

Und Chargebacks?

Kunden können ihre kartenausgebende Bank um eine Rückerstattung bitten, aber im App Store besteht der Streitfall zwischen der Bank und Apple. Sie erhalten keine Anfragen nach Beweisen, und es gibt nichts einzureichen. Was Sie sehen, ist das Ergebnis: ein REFUND, wenn das Geld zurückging, und REFUND_REVERSED, wenn Apple eine Rückerstattung nach einem Streitfall des Kunden rückgängig gemacht hat.

Die „Chargeback-Arbeit” einer iOS-App besteht also vor allem aus Vorbeugung und Erkennung:

  • Machen Sie den Rückerstattungsweg in Ihrer App leicht auffindbar (das Sheet beginRefundRequest), damit unzufriedene Kunden ihn nutzen statt ihrer Bank.
  • Beantworten Sie jeden Consumption Request, den Sie beantworten dürfen, rechtzeitig.
  • Ordnen Sie Rückerstattungen Konten zu. Apples Leitfaden schlägt vor, REFUND-Benachrichtigungen Ihren Nutzerkonten zuzuordnen, um „wiederholt erstattete Käufe” und verdächtige Aktivitäten „zu erkennen”.

Häufige Fehler

  • Daten ohne Einwilligung senden. Die API lehnt das ab, und es verstößt gegen Apples Regeln.
  • Das 12-Stunden-Fenster verpassen. Verarbeiten Sie CONSUMPTION_REQUEST in einer Warteschlange mit Alarm, nicht in einem nächtlichen Batch.
  • Immer DECLINE senden. Ihre Präferenz ist nur ein Faktor, und Nutzung zu behaupten, die Sie nicht belegen können, hilft nicht.
  • Nach einer Rückerstattung den Zugriff nicht entziehen, oder nach einer Rücknahme nicht wiederherstellen.
  • Keine Verbindung zwischen Apple-Transaktionen und Ihren Nutzern. Ohne appAccountToken können Sie die Nutzung nicht messen und nicht antworten.

Umsetzung mit NoChurn

NoChurn liest Ihre App Store Server Notifications, sodass Rückerstattungsanfragen, Rückerstattungen, Ablehnungen und Rücknahmen mit dem von Apple angegebenen Grund in der Timeline jedes Kunden erscheinen. Wenn Apple einen Consumption Request für einen Kunden sendet, der zugestimmt hat, kann NoChurn ihn innerhalb von Apples Frist mit der echten Nutzung dieses Kunden aus Ihren Daten beantworten. Rückerstattungen fließen außerdem in den Churn-Score ein. Apple behält die Zahlung, die Entscheidung über die Rückerstattung und alles, was die Bank des Kunden betrifft; NoChurn tut nie so, als wäre es anders. Einrichtung und Grenzen stehen unter NoChurn + App Store.

PROMPT

Read https://www.nochurn.sh/llms.txt,
then follow https://www.nochurn.sh/docs/quickstart/
to add NoChurn to this app. Use a test key
(nc_test_…) until I say we go live.

Hören Sie auf, Umsatz zu verlieren.

  • Kostenlos bis $300 MRR
  • Keine Karte nötig
  • In 10 Minuten live
  • Nie ein Anteil an dem, was wir retten