RenewalInfoIOS class

Subscription renewal information from Product.SubscriptionInfo.RenewalInfo https://developer.apple.com/documentation/storekit/product/subscriptioninfo/renewalinfo

Constructors

RenewalInfoIOS({String? autoRenewPreference, String? bundleOriginalTransactionId, String? bundleProductId, String? bundleSubscriptionGroupId, RenewalCommitmentInfoIOS? commitmentInfo, String? expirationReason, double? gracePeriodExpirationDate, bool? isInBillingRetry, String? jsonRepresentation, String? pendingUpgradeProductId, String? priceIncreaseStatus, SubscriptionBillingPlanTypeIOS? renewalBillingPlanType, double? renewalDate, String? renewalOfferId, String? renewalOfferType, required bool willAutoRenew, bool? willUnbundle})
const
RenewalInfoIOS.fromJson(Map<String, dynamic> json)
factory

Properties

autoRenewPreference → String?
final
bundleOriginalTransactionId → String?
Original transaction identifier for the bundle used by the next renewal.
final
bundleProductId → String?
Product identifier for the bundle used by the next renewal.
final
bundleSubscriptionGroupId → String?
Subscription-group identifier for the bundle used by the next renewal.
final
commitmentInfo → RenewalCommitmentInfoIOS?
iOS 26.4+ renewal commitment metadata for monthly subscriptions with a 12-month commitment.
final
expirationReason → String?
StoreKit's raw integer expiration-reason value represented as a string. Xcode 27 adds the back-deployed unbundled case. Preserve unknown future values.
final
gracePeriodExpirationDate → double?
Grace period expiration date (milliseconds since epoch) When set, subscription is in grace period (billing issue but still has access)
final
hashCode → int
The hash code for this object.
no setterinherited
isInBillingRetry → bool?
True if subscription failed to renew due to billing issue and is retrying StoreKit exposes this directly as RenewalInfo.isInBillingRetry.
final
jsonRepresentation → String?
final
pendingUpgradeProductId → String?
Product ID that will be used on next renewal (when user upgrades/downgrades) If set and different from current productId, subscription will change on expiration
final
priceIncreaseStatus → String?
User's response to subscription price increase Possible values: "AGREED", "PENDING", null (no price increase)
final
renewalBillingPlanType → SubscriptionBillingPlanTypeIOS?
iOS 26.4+ billing plan that will renew after the current period.
final
renewalDate → double?
Expected renewal date (milliseconds since epoch) For active subscriptions, when the next renewal/charge will occur
final
renewalOfferId → String?
Offer ID applied to next renewal (promotional offer, subscription offer code, etc.)
final
renewalOfferType → String?
Type of offer applied to next renewal Possible values: "PROMOTIONAL", "SUBSCRIPTION_OFFER_CODE", "WIN_BACK", etc.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
willAutoRenew → bool
final
willUnbundle → bool?
Whether this subscription will leave its bundle and renew standalone.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited