Deine Refund-Berichte stimmen bei Apple, Google und deinem Server nie überein, so gleichst du sie ab
Apple zeigt Rückerstattungen in zwei Berichten, Google in zwei weiteren, und dein Server sieht einen vierten. Keine der Zahlen passt zusammen, und die Lücken sind gewollt. Hier erfährst du, warum jede Oberfläche Rückerstattungen anders zuordnet und wie du Refund-Berichte transaktionsgenau mit deinen eigenen Aufzeichnungen abgleichst.

Wichtigste Erkenntnisse
- Apple verteilt das Refund-Reporting auf zwei Werkzeuge, die bewusst nie übereinstimmen. Sales and Trends schätzt Rückerstattungen schnell in USD, und Payments and Financial Reports verbucht sie später nach Apples Geschäftskalender. Die REFUND-Benachrichtigung deines Servers ist eine dritte Echtzeit-Sicht auf dasselbe Ereignis.
- In Apples Summary Sales Report ist eine Rückerstattung eine eigene Zeile mit negativen Units und einem negativen Customer Price, und der Bericht ist nicht um Rückerstattungen bereinigt. Wenn du eine Spalte nach Augenmaß summierst, zählst du falsch, denn Refund-Zeilen stehen neben Verkaufszeilen, statt sie aufzuheben.
- Apples Finanzberichte laufen nach einem 4-4-5-Geschäftskalender, nicht nach Kalendermonaten, und der Bericht für einen Geschäftsmonat ist bis zum ersten Freitag des nächsten Geschäftsmonats verfügbar. Jede Refund-Summe, die du mit einem schlichten Kalendermonat vergleichst, stimmt schon vor dem Start nicht.
- Google Play trennt Rückerstattungen genauso. Der earnings report führt Charge refund und Google fee refund als eigene Transaktionsarten auf, jeweils als Full oder Partial markiert, während der estimated sales report eine latenzarme Analyse ist, die laut Google nicht für die Buchhaltung gedacht ist.
- Eine Rückerstattung wird dem Datum der Abrechnung zugeordnet, nicht dem Datum des ursprünglichen Verkaufs, sodass die Rückerstattung eines März-Kaufs bei beiden Stores in deinen April-Zahlen landet. Gleiche Rückerstattungen über die transaction id ab, niemals durch das Nebeneinanderlegen von Monatssummen.
- Entwickler finden regelmäßig mehr REFUND-Benachrichtigungen als Refund-Zeilen im Summary Sales Report für denselben Zeitraum, weil die beiden verschiedene Momente zählen. Der Get Refund History Endpunkt der App Store Server API ist die maßgebliche Abgleichsquelle, eine transaction id nach der anderen.
- Nur zwei dieser Oberflächen sind für die Buchhaltung gebaut: Apples Financial Report und Googles earnings report. Gleiche Geld gegen diese ab, gleiche Zugriff gegen deine Server-Benachrichtigungen ab, und verlange nie von einer Zahl, die Aufgabe der anderen zu erledigen.
Ziehe die Refund-Zahl aus App Store Connect, ziehe sie dann von deinem Server, und die beiden Zahlen werden nicht übereinstimmen. Ziehe eine dritte aus deinem Financial Report, und sie passt zu keiner der beiden. Das ist kein Fehler in irgendjemandes System. Apple und Google berichten Rückerstattungen jeweils über mehr als eine Oberfläche, jede Oberfläche zählt einen anderen Moment im Leben der Rückerstattung, und dein Server sieht einen vierten. Wenn du je versucht hast, Refund-Berichte abzugleichen, und aufgegeben hast, weil die Summen auseinanderdriften, hier ist, warum sie driften, welcher Zahl du für welche Aufgabe vertraust und wie du sie transaktionsweise statt monatsweise ausrichtest.
Warum eine Rückerstattung als drei verschiedene Zahlen erscheint
Eine einzelne Rückerstattung durchläuft mehrere Systeme, bevor sie abgerechnet ist, und jedes System schreibt sie zu einem anderen Zeitpunkt nieder. Dein Server hört zuerst davon, als Ereignis. Ein schneller Analysebericht schätzt sie als Nächstes. Der Buchhaltungsbericht erfasst sie zuletzt, sobald das Geld tatsächlich geflossen ist. Dieselbe Rückerstattung, drei Zeitstempel, drei Summen. Der Fehler besteht darin, zwei von ihnen so zu behandeln, als müssten sie am selben Tag gleich sein.
Apple gibt dir zwei Berichtsfamilien, plus deinen Webhook
Apple berichtet Rückerstattungen an zwei Stellen, die nicht dasselbe Werkzeug sind und nicht dazu gedacht sind, an einem bestimmten Tag übereinzustimmen. Sales and Trends ist die schnelle, geschätzte Sicht: Tagesberichte kommen am Folgetag, Wochenberichte montags, Monatsberichte etwa fünf Tage nach Monatsende, in der Regel bis 8 a.m. Pacific. Es schätzt Umsatz und Erlöse in USD anhand eines gleitenden Durchschnitts der Wechselkurse des Vormonats, was gut ist, um einen Trend zu erkennen, und falsch, um eine Auszahlung abzustimmen. Payments and Financial Reports ist die abgerechnete Sicht: einmal im Monat nach Apples Geschäftskalender erzeugt, bis zum ersten Freitag des laufenden Geschäftsmonats für den vorherigen Geschäftsmonat verfügbar, und nur erzeugt, wenn es in diesem Zeitraum Käufe oder Rückerstattungen gab. Er verwendet den finalisierten Wechselkurs, der auf deine Auszahlung angewendet wird. Dieser Bericht ist die Buchhaltungsaufzeichnung. Neben beiden empfängt dein Server die App Store Server Notification REFUND in dem Moment, in dem Apple eine Rückerstattung gewährt, gebunden an eine einzelne transaction id.
Google teilt genauso auf
Google Play spiegelt die Aufteilung. Der earnings report ist die Buchhaltungsaufzeichnung, monatlich erzeugt und typischerweise bis zum 5. des Folgemonats verfügbar, und er führt Rückerstattungen als eigene Transaktionsarten auf: Charge refund für das an den Käufer zurückgegebene Geld und Google fee refund für die Servicegebühr, die Google zurückgibt, jeweils als Full oder Partial gekennzeichnet. Der estimated sales report ist die latenzarme Analysesicht, die zeigt, was Käufer vor Steuern und Gebühren bezahlt haben, und Google sagt klar, er eignet sich für Analysen und wird nicht für die Buchhaltung empfohlen. Auf der Serverseite erhältst du die Real-time Developer Notification in Echtzeit und kannst eine Rückerstattung über die Voided Purchases API zurücklesen.
Wie Apple eine Rückerstattung im Bericht zeigt, und die Negativzeilen-Falle
Öffne den Summary Sales Report, und eine Rückerstattung zieht sich nicht stillschweigend von einem Verkauf ab. Sie erscheint als eigene Zeile. Die Units und der Customer Price in dieser Zeile sind negativ, woran du eine Rückerstattung überhaupt erst erkennst, und die Developer Proceeds verhalten sich nicht so wie der Preis. Der Bericht ist nicht von Natur aus um Rückerstattungen bereinigt. Er listet Refund-Zeilen neben Verkaufszeilen, und es ist deine Aufgabe, sie zu sortieren. Summierst du die Units-Spalte nach Augenmaß, zählst du entweder doppelt oder verpasst die Rückerstattungen ganz, denn eine Minus-eins-Refund-Zeile steht in derselben Spalte wie deine positiven Verkäufe.
Die praktische Regel ist einfach: Finde Rückerstattungen über die negativen Units, addiere diese Zeilen für sich, und nimm nie an, der Bericht habe sie bereits für dich verrechnet. Eine als Featured Snippet taugliche Zählung deiner Rückerstattungen ist die Anzahl der Zeilen mit negativen Units, nicht die arithmetische Summe einer Spalte.
| Apple-Oberfläche | Wofür sie gedacht ist | Wann sie aktualisiert | Wie eine Rückerstattung erscheint |
|---|---|---|---|
| Sales and Trends | Schnelle Trendschätzung, keine Buchhaltung | Täglich am Folgetag, monatlich etwa 5 Tage nach Monatsende | Negative Units im Trend, geschätzt in USD |
| Summary Sales Report | Die herunterladbaren Details hinter Sales and Trends | Gleicher Takt wie Sales and Trends | Eigene Zeile, negative Units und negativer Customer Price |
| Payments and Financial Reports | Die Buchhaltungs- und Auszahlungsaufzeichnung | Monatlich nach Apples Geschäftskalender, bis zum ersten Freitag | Abgerechneter Abzug von den Erlösen dieses Geschäftsmonats |
| REFUND-Server-Benachrichtigung | Echtzeit-Zugriffssteuerung | Der Moment, in dem Apple die Rückerstattung gewährt | Ein Ereignis, eine transaction id |
Der Geschäftskalender ist der Grund, warum deine Monatssummen nie zusammenpassen
Hier ist der wichtigste einzelne Grund, warum sich eine sorgfältige Tabelle dennoch weigert, aufzugehen. Apples Finanzberichte laufen nicht nach Kalendermonaten. Sie laufen nach einem 4-4-5-Geschäftskalender, in dem die meisten Geschäftsmonate vier Wochen haben und jeder dritte fünf Wochen. Ein Entwickler, der einen Financial Report mit einem schlichten Fenster von Januar zu Januar vergleicht, vergleicht zwei verschiedene Spannen von Tagen, sodass die Refund-Summen nicht übereinstimmen können, selbst wenn jede zugrunde liegende Zahl korrekt ist. Entwickler in Apples eigenen Foren haben beobachtet, wie Sales-Zahlen und Financial-Report-Zahlen genau aus diesem Grund um Tausende von Dollar auseinandergingen, wobei die Lücke jeden Monat größer wurde, in dem sie sich aufsummieren durfte.
Googles earnings report ist monatlich, aber er trägt sein eigenes Timing und seine eigene Zeitzone, und keines davon ist die UTC-Uhr deines Servers. Die tiefere Falle teilen sich beide Stores: Eine Rückerstattung wird dem Datum der Abrechnung zugeordnet, nicht dem Datum des ursprünglichen Verkaufs. Erstatte einen März-Kauf Anfang April zurück, und er senkt deine April-Zahlen, nicht deine März-Zahlen. Richte zwei Monate anhand ihrer Labels aus, und die Rückerstattung scheint aus dem einen verschwunden und im anderen aufgetaucht zu sein.

Was eine Rückerstattung kostet, und in welchem Bericht du sie liest
Der Abgleich ist im Kern eine Buchhaltungsfrage, also folge dem Geld. Bei einer Rückerstattung gibt der Store seine eigene Provision zurück, was bedeutet, dass der Betrag, der tatsächlich dein Konto verlässt, dein Anteil am Verkauf ist, nicht der volle Preis, den der Kunde zurückerstattet sieht. Bei Google Play ist diese Rückgabe eine sichtbare Zeile: Die Transaktionsart Google fee refund in deinem earnings report ist die an dich zurückkommende Servicegebühr, die neben dem Charge refund steht, der an den Käufer ging. Im App Store zieht Apple deine Erlöse nach Provision ab und gibt seine Provision in derselben Bewegung zurück, sodass der Financial Report den Abzug abzüglich Apples Anteil zeigt.
Beim Cashflow-Timing werden Entwickler überrascht. Bei Google Play erhältst du den Betrag schlicht nie, wenn du eine Bestellung erstattest, bevor Google dich dafür bezahlt hat. Erstattest du nach der Auszahlung, zieht Google ihn von einer künftigen Auszahlung ab. Und wenn eine Welle von Rückerstattungen deinen Saldo ins Negative drückt und er mindestens 48 Stunden negativ bleibt, belastet Google das Bankkonto, das normalerweise deine Auszahlungen empfängt, mit dem Fehlbetrag. Eine Rückbuchung ist die schärfere Version desselben Ereignisses: Bei Google Play verschiebt die Rückbuchung für Bestellungen ab dem 3. August 2026 den Kaufpreis plus die Gebühren der Bank auf den Entwickler, und sie landet auf dem Bericht eines späteren Monats als der Verkauf.
| Bei einer Rückerstattung | App Store | Google Play |
|---|---|---|
| Was dein Konto verlässt | Deine Erlöse nach Provision | Kaufpreis abzüglich der Servicegebühr von Play |
| Was der Store zurückgibt | Apples Provision | Die Servicegebühr, als Google fee refund Zeile |
| Gegen welchen Bericht abzugleichen ist | Payments and Financial Reports | Earnings report |
| Wann es abgerechnet wird | Der Geschäftsmonat, in dem es verarbeitet wurde, bis zum ersten Freitag danach | Abgezogen von der Auszahlung für diesen Zeitraum oder den nächsten |
| Rückbuchungs-Wendung | Apple übernimmt die Maschinerie des Kartenstreits | Ab 3 Aug 2026 verschieben sich Preis plus Bankgebühren auf dich |
So gleichst du deine Refund-Berichte ab, Schritt für Schritt
Die Aufgabe wird einfach, sobald du aufhörst, jede Zahl gleich machen zu wollen, und stattdessen jede Zahl der Frage zuordnest, die sie beantwortet. Es gibt nur zwei Fragen: wie viel Geld sich bewegt hat und wer noch Zugriff hat.
- Entscheide die Frage, bevor du einen Bericht öffnest. Für Geld liegt die Antwort in Apples Financial Report und Googles earnings report, Punkt. Für Zugriff liegt die Antwort in deinen Server-Benachrichtigungen. Gleiche nie das eine gegen das andere ab.
- Wähle die transaction id als deinen Join-Schlüssel über alle vier Oberflächen. Sie ist das eine Feld, das ein Verkauf, seine Rückerstattung, die Berichte und dein Webhook alle teilen.
- Rufe bei Apple, wenn der Summary Sales Report und dein Webhook nicht übereinstimmen, den Get Refund History Endpunkt der App Store Server API unter
/inApps/v2/refund/lookup/{transactionId}auf. Er gibt die signierten erstatteten Transaktionen für einen Kunden zurück, mit revocationDate und revocationReason, eine transaction id nach der anderen, und blättert durch ihre Historie. Dieser Endpunkt ist der Stichentscheid. - Gleiche bei Google die Charge refund Zeilen im earnings report mit dem ab, was die Voided Purchases API für dieselben Bestellungen meldet, und denke daran, dass eine Teilrückerstattung als Partial gekennzeichnet ist und die ursprüngliche Abbuchung nicht auf null bringt.
- Richte dich nach der Uhr des Berichts, nicht nach deiner. Apples ist ein Geschäftsmonat in Pacific-Zeit. Googles earnings report hat seinen eigenen Monat und seine eigene Zeitzone. Deine Logs sind fast sicher UTC. Rechne auf den Kalender des Berichts um, bevor du vergleichst, sonst erzeugen schon die Tagesgrenzen allein Phantom-Abweichungen.
- Erwarte, dass sich die Schätzung bewegt. Sales and Trends ist eine Schätzung und verschiebt sich weiter, während Transaktionen abgerechnet werden. Gleiche gegen den Financial Report ab, nie gegen die Schätzung und nie gegen den gestrigen Schnappschuss der Schätzung.
Wenn dein Server mehr Rückerstattungen zeigt als der Bericht
Die häufigste Panik ist, mehr REFUND-Benachrichtigungen auf deinem Server zu finden als Refund-Zeilen im Verkaufsbericht für denselben Zeitraum. Es ist meist kein verlorenes Geld. Die beiden Oberflächen zählen verschiedene Momente, eine Benachrichtigung kann der Berichtszeile um Tage vorausgehen, und eine Teilrückerstattung oder eine erneut eingereichte Anfrage kann mehr als ein Ereignis erzeugen. Entwickler haben genau dieses Muster berichtet, Tausende von REFUND-Benachrichtigungen gegen eine geringere Zahl von Zeilen mit negativen Units für denselben Monat. Löse es jedes Mal gleich: Nimm die transaction ids, die dein Server gesehen hat, führe sie durch Get Refund History, und lass Apples eigene Aufzeichnung klären, welche tatsächlich erstattet wurden und um wie viel.
Die Kurzfassung
Du kannst Apples Schätzung, Apples Financial Report, Googles earnings report und deinen Webhook nicht dazu bringen, am selben Tag dieselbe Refund-Summe zu zeigen, und du solltest aufhören, es zu versuchen. Lies jeden für das, was er dir sagen soll. Vertraue dem Financial Report und dem earnings report für Geld, vertraue deinen Server-Benachrichtigungen für Zugriff, und wenn zwei Oberflächen streiten, verbinde sie über die transaction id und lass den Get Refund History oder Voided Purchases Lookup den Stichentscheid fällen. Abgeglichene Rückerstattungen sind keine übereinstimmenden Summen. Es sind übereinstimmende Transaktionen.
Häufig gestellte Fragen
- Warum stimmen meine App Store Verkäufe und der Financial Report nicht überein?
- Sie messen verschiedene Dinge auf verschiedenen Uhren. Sales and Trends ist eine schnelle Schätzung in USD mit einem gleitenden Durchschnittswechselkurs, während Payments and Financial Reports die abgerechnete Buchhaltungsaufzeichnung nach Apples 4-4-5-Geschäftskalender mit dem finalisierten Wechselkurs ist. Weil Geschäftsmonate keine Kalendermonate sind und Rückerstattungen später als der Verkauf abgerechnet werden, gehen die beiden Summen bewusst auseinander. Gleiche für alles, was Geld betrifft, gegen den Financial Report ab.
- Wie werden Rückerstattungen im App Store Summary Sales Report gezeigt?
- Eine Rückerstattung erscheint als eigene Zeile mit negativen Units und einem negativen Customer Price. Der Bericht ist nicht um Rückerstattungen bereinigt, sodass Refund-Zeilen neben Verkaufszeilen stehen, statt sie aufzuheben. Erkenne Rückerstattungen an den negativen Units und summiere diese Zeilen separat, denn das Summieren der Spalte nach Augenmaß zählt deine Rückerstattungen falsch.
- Wann erscheinen Rückerstattungen in Google Plays earnings report?
- Der earnings report wird monatlich erzeugt und ist typischerweise bis zum 5. des Folgemonats verfügbar. Eine Rückerstattung erscheint als zwei Transaktionsarten, Charge refund für das an den Käufer zurückgegebene Geld und Google fee refund für die Servicegebühr, die Google an dich zurückgibt, jeweils als Full oder Partial markiert. Hast du erstattet, bevor Google dich bezahlt hat, erhältst du den Betrag nie; danach wird er von einer künftigen Auszahlung abgezogen.
- Warum zeigt mein Server mehr REFUND-Benachrichtigungen als mein Verkaufsbericht?
- Weil die beiden verschiedene Momente zählen. Dein Server hört das Refund-Ereignis in Echtzeit, während der Verkaufsbericht die abgerechnete Zeile später erfasst, und Teil- oder erneut eingereichte Rückerstattungen können mehr als eine Benachrichtigung erzeugen. Um die Differenz zu klären, nimm die transaction ids, die dein Server gesehen hat, und führe sie durch den Get Refund History Endpunkt der App Store Server API, der Apples eigene Aufzeichnung dessen zurückgibt, was tatsächlich erstattet wurde.
- Welche Refund-Zahl sollte ich für die Buchhaltung verwenden?
- Apples Payments and Financial Reports und Google Plays earnings report. Das sind die abgerechneten Aufzeichnungen in Buchhaltungsqualität. Apples Sales and Trends und Googles estimated sales report sind schnelle Analysen, von denen beide Stores sagen, du sollst sie nicht für die Buchhaltung nutzen, und deine Server-Benachrichtigungen dienen der Zugriffssteuerung, nicht der Verbuchung von Umsatz.
- Erscheint eine Rückerstattung im selben Monat wie der ursprüngliche Verkauf?
- Meist nicht. Eine Rückerstattung wird bei beiden Stores dem Datum der Abrechnung zugeordnet, nicht dem Datum des ursprünglichen Kaufs. Ein im April erstatteter März-Verkauf senkt deine April-Summen, sodass das Zuordnen zweier Monate anhand ihrer Labels die Rückerstattung so aussehen lässt, als sei sie aus einem Monat verschwunden und in einem anderen aufgetaucht. Gleiche stattdessen über die transaction id ab.
Quellen und weiterführende Informationen
- Apple: Differences between Sales and Trends and Financial Reports
- Apple: Summary Sales Report reference (refunds as negative units)
- Apple: Download financial reports (fiscal calendar, first Friday)
- Apple: Get Refund History (App Store Server API)
- Google Play Help: Understand your earnings report
- Google Play Help: Manage your app's orders and issue refunds
- Apple Developer Forums: Reconciling finance reports with App Store service state
RefundHalt
Der Rückerstattungs-Autopilot für App Store und Google Play
Weiterlesen
Google Play lässt Sie eine Teilrückerstattung selbst vornehmen, der App Store überlässt jede Rückerstattung Apple
Bei Google Play können Sie einen Teil einer Bestellung direkt in der Console erstatten, nach Prozentsatz oder Betrag, und den Verlust mit Googles Gebühr teilen. Im App Store können Sie überhaupt keine Rückerstattung vornehmen. So funktioniert eine Teilrückerstattung in jedem Store, und das kostet sie Sie.
Eine gesunde App-Rückerstattungsquote liegt zwischen 2 und 5 Prozent, hier erfährst du, wo du deine findest und was sie wirklich kostet
Die meisten mobilen Apps erstatten 2 bis 5 Prozent der bezahlten Transaktionen, aber Apple und Google verstecken die Zahl in unterschiedlichen Dashboards. Hier erfährst du, wo du deine App-Rückerstattungsquote findest, was je nach Plan und Kategorie als normal gilt, und was jede Rückerstattung nach Gebühren wirklich kostet.