Zum Inhalt springen

Tracking von App-Store-Abonnements

Integrationsübersicht

Anchor link to

App Store Server Notifications ist Apples Server-zu-Server-Dienst, der Ihrem Backend eine Echtzeitnachricht sendet, wann immer sich der Status eines Abonnements ändert.

Durch die Verbindung von App Store Server Notifications mit Pushwoosh können Sie auf den gesamten Abonnement-Lebenszyklus reagieren, einschließlich Käufen, Verlängerungen, Kündigungen, Abrechnungsproblemen, Ablaufdaten und Rückerstattungen – ohne eine eigene Backend-Infrastruktur aufbauen zu müssen. Wann immer sich der Status eines Abonnements im App-Store-Konto eines Benutzers ändert, benachrichtigt Apple Pushwoosh, und Pushwoosh löst das entsprechende PW_Subscription*-Ereignis im Benutzerprofil aus.

Integrationstyp

Anchor link to

Quelle: App Store Server Notifications werden von Apple an Pushwoosh gesendet.

Verfolgte Ereignisse

Anchor link to

Pushwoosh ordnet jede unterstützte App-Store-Benachrichtigung einem einheitlichen PW_Subscription*-Ereignissatz zu, sodass Sie Kampagnen in jeder Phase des Abonnement-Lebenszyklus auslösen können.

EreignisWird ausgelöst, wenn
PW_SubscriptionStartEin Benutzer kauft das Abonnement zum ersten Mal.
PW_SubscriptionRenewDas Abonnement verlängert sich automatisch für einen neuen Abrechnungszeitraum.
PW_SubscriptionCancelEin Benutzer deaktiviert die automatische Verlängerung. Das Abonnement bleibt bis zum Ablauf aktiv.
PW_SubscriptionResumeEin Benutzer aktiviert die automatische Verlängerung erneut oder abonniert erneut, bevor das Abonnement abläuft.
PW_SubscriptionBillingIssueEine Verlängerungszahlung schlägt fehl und das Abonnement tritt in Apples Abrechnungs-Wiederholungszeitraum ein.
PW_SubscriptionRecoveredEine zuvor fehlgeschlagene Verlängerung wird durchgeführt und das Abonnement ist wieder aktiv.
PW_SubscriptionExpiredDas Abonnement ist vollständig abgelaufen und nicht mehr aktiv.
PW_SubscriptionRefundApple erstattet den Kauf oder widerruft den Zugriff.

Jedes Ereignis trägt die gleichen Attribute:

  • productID: die App-Store-Produktkennung des Abonnements.
  • expiresAt: wann der aktuelle bezahlte Zeitraum endet, als Unix-Zeitstempel in Sekunden. Enthalten, wenn Apple es bereitstellt.
Wie Ereignisse den App Store Server Notifications zugeordnet werden

Für Entwickler, die die Integration überprüfen: Jedes Pushwoosh-Ereignis entspricht diesen App-Store-notificationType- (und subtype-)Werten:

Pushwoosh-EreignisnotificationType / subtype
PW_SubscriptionStartSUBSCRIBED / INITIAL_BUY
PW_SubscriptionRenewDID_RENEW
PW_SubscriptionCancelDID_CHANGE_RENEWAL_STATUS / AUTO_RENEW_DISABLED
PW_SubscriptionResumeDID_CHANGE_RENEWAL_STATUS / AUTO_RENEW_ENABLED, SUBSCRIBED / RESUBSCRIBE
PW_SubscriptionBillingIssueDID_FAIL_TO_RENEW
PW_SubscriptionRecoveredDID_RENEW / BILLING_RECOVERY
PW_SubscriptionExpiredEXPIRED
PW_SubscriptionRefundREFUND, REVOKE

Andere Benachrichtigungstypen wie Preiserhöhungen, Planänderungen, „on-hold“-Status und Verbrauchs-Anfragen werden bestätigt, lösen aber kein Ereignis aus.

So funktioniert es

Anchor link to
  1. Der Status eines Abonnements ändert sich im App-Store-Konto eines Benutzers (ein Kauf, eine Verlängerung, eine Kündigung usw.).
  2. Apple sendet eine App Store Server Notification (V2) an Ihre Pushwoosh-Benachrichtigungs-URL.
  3. Pushwoosh dekodiert die signierte Nutzlast und liest den appAccountToken aus der Transaktion.
  4. Pushwoosh sucht das Gerät, dessen HWID mit diesem Token übereinstimmt, findet den damit verbundenen Benutzer und postet das entsprechende PW_Subscription*-Ereignis für diesen Benutzer.

Anwendungsfälle

Anchor link to

Abwandernde Abonnenten zurückgewinnen: Das Deaktivieren der automatischen Verlängerung beendet den Zugriff nicht sofort. Das Abonnement bleibt bis zum Ende des bezahlten Zeitraums aktiv, und das ist Ihre Chance, den Benutzer zurückzugewinnen. Starten Sie bei PW_SubscriptionCancel eine Customer Journey mit einem Retentions-Push, einer E-Mail über Funktionen, die sie verlieren würden, oder einer In-App-Nachricht mit einem Verlängerungsrabatt, bevor der Zugriff abläuft.

Neue Abonnenten onboarden: Lösen Sie bei PW_SubscriptionStart eine Willkommensserie aus, um Benutzern zu helfen, frühzeitig einen Mehrwert aus ihrem Plan zu ziehen und die Weichen für eine Verlängerung zu stellen.

Fehlgeschlagene Zahlungen retten: Wenn PW_SubscriptionBillingIssue ausgelöst wird, ist eine Verlängerungszahlung fehlgeschlagen und das Abonnement befindet sich im Wiederholungsfenster von Apple. Fordern Sie den Benutzer auf, seine Zahlungsmethode zu aktualisieren, bevor er den Zugriff verliert, und folgen Sie mit PW_SubscriptionRecovered, um zu bestätigen, sobald das Problem behoben ist.

Abgelaufene Benutzer reaktivieren: Starten Sie bei PW_SubscriptionExpired eine Reaktivierungskampagne mit einem Angebot für wiederkehrende Kunden für Abonnenten, die vollständig abgewandert sind.

Einrichtung der Integration

Anchor link to

appAccountToken auf die Pushwoosh-HWID des Geräts setzen

Anchor link to

Pushwoosh identifiziert den richtigen Benutzer anhand der HWID des Geräts. Daher muss Ihre App die Pushwoosh-HWID des Geräts als appAccountToken anhängen, wenn das Abonnement über StoreKit gekauft wird.

Standardmäßig verwendet das Pushwoosh iOS SDK den identifierForVendor (IDFV) des Geräts als HWID. IDFV ist bereits eine UUID, genau das Format, das Apple für appAccountToken verlangt. Pushwoosh löst dann automatisch den Benutzer auf, der aktuell an dieses Gerät gebunden ist, sodass dies funktioniert, unabhängig davon, ob Sie Ihre eigenen Benutzer-IDs mit setUserId zuweisen oder nicht.

// Attach the device's Pushwoosh HWID (the default IDFV) as the appAccountToken
var options: Set<Product.PurchaseOption> = []
if let hwid = UIDevice.current.identifierForVendor {
options.insert(.appAccountToken(hwid))
}
let result = try await product.purchase(options: options)

Finden Sie Ihren Pushwoosh Application Code

Anchor link to

Öffnen Sie Ihre Anwendung im Pushwoosh Control Panel. Ihr Application Code (Format XXXXX-XXXXX) wird unter dem Projektnamen in der Seitenleiste angezeigt.

Sie benötigen den Application Code, um die Benachrichtigungs-URL zu erstellen.

Fügen Sie die Benachrichtigungs-URL in App Store Connect hinzu

Anchor link to
  1. Gehen Sie in App Store Connect zu Apps → Ihre App → App-Informationen (unter Allgemein) und scrollen Sie zu App Store Server Notifications.
  2. Wählen Sie Benachrichtigungen der Version 2 aus.
  3. Setzen Sie sowohl die Produktionsserver-URL als auch die Sandbox-Server-URL auf:
https://appstore-notifications.pushwoosh.com/appstore/YOUR_APPLICATION_CODE/
  1. Ersetzen Sie YOUR_APPLICATION_CODE durch den Application Code aus dem vorherigen Schritt. Behalten Sie den abschließenden Schrägstrich bei.

Bestätigen Sie die Ereignisse in Pushwoosh

Anchor link to

Pushwoosh registriert jedes PW_Subscription*-Ereignis in Ihrem Projekt, wenn es zum ersten Mal auftritt, mit den Attributen productID und expiresAt. Öffnen Sie nach einem Sandbox-Test Audience → Events, um zu überprüfen, ob die Ereignisse angezeigt werden. Sie sind dann bereit für die Segmentierung, Statistiken und Customer Journeys.

Erstellen Sie Ihre Kampagne

Anchor link to

Erstellen Sie eine Customer Journey mit einem triggerbasierten Eintritt für ein beliebiges PW_Subscription*-Ereignis, z. B. PW_SubscriptionCancel zur Rückgewinnung oder PW_SubscriptionStart zum Onboarding, und fügen Sie die Nachrichten hinzu, die Sie senden möchten.

App Store Server Notifications können in Apples Sandbox-Umgebung ausgelöst werden. Um die Integration zu überprüfen:

  1. Tätigen Sie einen Sandbox-Abonnementkauf, bei dem appAccountToken wie oben beschrieben gesetzt ist. Dies löst PW_SubscriptionStart aus.
  2. Deaktivieren Sie die automatische Verlängerung auf dem Abonnementverwaltungsbildschirm des Geräts. Dies löst PW_SubscriptionCancel aus.
  3. Öffnen Sie im Pushwoosh Control Panel das Benutzerprofil und gehen Sie zum Ereignisverlauf.
  4. Bestätigen Sie, dass die Ereignisse innerhalb weniger Augenblicke erscheinen.