class IntroEligibility Holds the introductory price status
class PromotionalOffer Represents a
StoreProductDiscount that has been validated and is ready to be used for a purchase.class StoreProductDiscount Type that wraps
StoreKit.Product.SubscriptionOffer and SKProductDiscount and provides access to their properties. Information about a subscription offer that you configured in App Store Connect.func checkTrialOrIntroDiscountEligibility (productIdentifiers : [String], completion: ([String : IntroEligibility ]) -> Void) Computes whether or not a user is eligible for the introductory pricing period of a given product. You should use this method to determine whether or not you show the user the normal product price or the introductory price. This also applies to trials (trials are considered a type of introductory pricing). iOS Introductory Offers.
func checkTrialOrIntroDiscountEligibility (product: StoreProduct ) async -> IntroEligibilityStatus Computes whether or not a user is eligible for the introductory pricing period of a given product. You should use this method to determine whether or not you show the user the normal product price or the introductory price. This also applies to trials (trials are considered a type of introductory pricing). iOS Introductory Offers.
func checkTrialOrIntroDiscountEligibility (product: StoreProduct , completion: (IntroEligibilityStatus ) -> Void) Computes whether or not a user is eligible for the introductory pricing period of a given product. You should use this method to determine whether or not you show the user the normal product price or the introductory price. This also applies to trials (trials are considered a type of introductory pricing). iOS Introductory Offers.
func getPromotionalOffer (forProductDiscount : StoreProductDiscount , product: StoreProduct ) async throws -> PromotionalOffer Use this method to find eligibility for this user for iOS Promotional Offers.
func getPromotionalOffer (forProductDiscount : StoreProductDiscount , product: StoreProduct , completion: (PromotionalOffer ?, Error?) -> Void) Use this method to fetch
PromotionalOffer to use in purchase(package:promotionalOffer:) or purchase(product:promotionalOffer:) . iOS Promotional Offers.func purchase(package: Package, promotionalOffer : PromotionalOffer ) async throws -> PurchaseResultData Purchase the passed
Package. Call this method when a user has decided to purchase a product with an applied discount. Only call this in direct response to user input. From here Purchases will handle the purchase with StoreKit and call the PurchaseCompletedBlock .func purchase(package: Package, promotionalOffer : PromotionalOffer , completion: PurchaseCompletedBlock ) Purchase the passed
Package. Call this method when a user has decided to purchase a product with an applied discount. Only call this in direct response to user input. From here Purchases will handle the purchase with StoreKit and call the PurchaseCompletedBlock .func purchase(product: StoreProduct , promotionalOffer : PromotionalOffer ) async throws -> PurchaseResultData Use this function if you are not using the Offerings system to purchase a
StoreProduct with an applied PromotionalOffer . If you are using the Offerings system, use purchase(package:promotionalOffer:completion:) instead.func purchase(product: StoreProduct , promotionalOffer : PromotionalOffer , completion: PurchaseCompletedBlock ) Initiates a purchase of a
StoreProduct with a PromotionalOffer .