The recurring store transaction that continues an auto-renewing subscription into its next paid period.
A renewal occurs when the mobile store successfully charges the subscriber for the next recurring period. It extends the subscription’s expiration and keeps the mapped entitlement active. The event differs from the initial purchase: Google Play does not require a new acknowledgement for ordinary subscription renewals, and Apple represents the continuation through updated signed transaction and renewal information. A canceled subscription may remain active until its current period ends but will not produce the next renewal.
Renewal processing belongs on a backend because the customer’s app may be closed, offline, uninstalled, or running on another device when billing occurs. Google sends SUBSCRIPTION_RENEWED through RTDN; the handler then calls subscriptionsv2 and stores the new line-item expiryTime after validating current state. Apple sends App Store Server Notifications such as DID_RENEW with signed data. Both channels can retry or arrive more than once, so persistence must be idempotent.
A scheduled billing date does not guarantee a renewal. A declined charge can enter billing retry and possibly grace, while a price-consent issue or canceled auto-renew setting can prevent collection. Servers should distinguish a predicted date from a verified transaction. They should also avoid client polling as the sole source of truth, because lifecycle notifications provide timely background updates and store APIs support reconciliation.
Analytics often count renewals separately from new subscriptions, upgrades, and restorations. Cohorts can measure first-to-second renewal, retained periods, recovered payments, and revenue by product. Refunds may later reverse a renewed period and require entitlement changes. Testing should cover duplicate events, out-of-order delivery, leap-month dates, plan replacement, failed billing, grace recovery, and a notification received after the customer already changed products. The durable record should retain store transaction identifiers and the effective entitlement interval for support.
The recovery sequence when a scheduled renewal charge fails.
The Play channel that reports background renewal events.
Apple’s signed delivery mechanism for renewal lifecycle changes.