iOS Subscription Billing Plans
StoreKit 26.4 adds billing plans for auto-renewable subscriptions, including monthly billing with a 12-month commitment and up-front billing for the full subscription period. OpenIAP exposes the selected billing plan on purchase results, available pricing terms on fetched products, and commitment renewal details when StoreKit returns them.
SubscriptionBillingPlanTypeIOS#
Enum used by RequestSubscriptionIosProps.billingPlanType, PurchaseIOS.billingPlanTypeIOS, pricing terms, and renewal commitment fields.
| Value | Summary |
|---|---|
unknown | StoreKit returned an unsupported or unavailable billing plan type. |
monthly | Monthly billing with a 12-month commitment. |
up-front | Up-front billing for the full subscription period. |
type SubscriptionBillingPlanTypeIOS = 'unknown' | 'monthly' | 'up-front';SubscriptionPricingTermsIOS#
Pricing term returned on ProductIOS.pricingTermsIOS, ProductSubscriptionIOS.pricingTermsIOS, and SubscriptionInfoIOS.pricingTerms. Use it to display the available commitment choices before starting a purchase.
| Name | Summary |
|---|---|
billingDisplayPrice | Localized billing price for this plan. |
billingPeriod | Billing cadence as a SubscriptionPeriodIOS. |
billingPlanType | monthly, up-front, or unknown. |
billingPrice | Numeric billing price for this plan. |
commitmentInfo | Full commitment price and period for this plan. See SubscriptionCommitmentInfoIOS. |
subscriptionOffers | StoreKit offers attached to this billing plan, normalized as SubscriptionOffer. |
SubscriptionCommitmentInfoIOS#
Commitment summary attached to a pricing term before purchase. It describes the full commitment, not just one billing installment.
| Name | Summary |
|---|---|
displayPrice | Localized commitment total. |
period | Full commitment duration. |
price | Numeric commitment total. |
TransactionCommitmentInfoIOS#
Commitment state attached to PurchaseIOS.commitmentInfoIOS after purchase and on later transaction reads such as latestTransactionIOS.
| Name | Summary |
|---|---|
billingPeriodNumber | Current billing period number within the commitment. |
totalBillingPeriods | Total number of billing periods in the commitment. |
commitmentExpiresDate | Commitment expiration timestamp in epoch milliseconds. |
commitmentPrice | Numeric price StoreKit reports for the commitment. |
RenewalCommitmentInfoIOS#
Commitment renewal state attached to RenewalInfoIOS.commitmentInfo. Use this when StoreKit reports the next commitment renewal plan or renewal price.
| Name | Summary |
|---|---|
commitmentAutoRenewProductId | Product ID StoreKit will auto-renew to. |
commitmentAutoRenewStatus | Whether StoreKit reports the commitment will auto-renew. |
commitmentRenewalBillingPlanType | Billing plan type for the next commitment renewal. |
commitmentRenewalDate | Next commitment renewal timestamp in epoch milliseconds. |
commitmentRenewalPrice | Numeric renewal price for the next commitment. |
See also: iOS commitment billing plans guide · requestPurchase · PurchaseIOS