description
TypeScriptget description(): stringSwift declarationlet description: StringA localized description of the product.
struct · iOS 15.0+ · SDK 27.1
struct ProductInformation about a product configured in App Store Connect.
get description(): stringSwift declarationlet description: StringA localized description of the product.
get displayName(): stringSwift declarationlet displayName: StringA localized display name of the product.
get displayPrice(): stringSwift declarationlet displayPrice: StringA localized string representation of `price`.
get subscription(): (Product_SubscriptionInfo) | nullSwift declarationlet subscription: Product.SubscriptionInfo?Properties and functionality specific to auto-renewable subscriptions. This is never `nil` if `type` is `.autoRenewable`, and always `nil` for all other product types.
get debugDescription(): stringSwift declarationvar debugDescription: String { get }A textual representation of this instance, suitable for debugging. Calling this property directly is discouraged. Instead, convert an instance of any type to a string by using the `String(reflecting:)` initializer. This initializer works with any type, and uses the custom `debugDescription` property for types that conform to `CustomDebugStringConvertible`: struct Point: CustomDebugStringConvertible { let x: Int, y: Int var debugDescription: String { return "(\(x), \(y))" } } let p = Point(x: 21, y: 30) let s = String(reflecting: p) print(s) // Prints "(21, 30)" The conversion of `p` to a string in the assignment to `s` uses the `Point` type's `debugDescription` property.
get priceFormatStyle(): _Foundation_Decimal_FormatStyle_CurrencySwift declaration@backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
var priceFormatStyle: Decimal.FormatStyle.Currency { get }The format style to use when formatting numbers derived from the price for the product. Use `displayPrice` when possible. Use `priceFormatStyle` only for localizing numbers derived from the `price` property, such as "2 products for $(`price * 2`)". - Important: When using `priceFormatStyle` on systems earlier than iOS 16.0, macOS 13.0, tvOS 16.0 or watchOS 9.0, the property may return a format style with a sentinel locale with identifier "xx\_XX" in some uncommon cases: (1) StoreKit Testing in Xcode (workaround: test your app on a device running a more recent OS) or (2) a critical server error.
get isFamilyShareable(): booleanSwift declarationlet isFamilyShareable: BoolWhether the product is available for family sharing.
get latestTransaction(): Promise<(VerificationResult<Transaction>) | null>Swift declarationvar latestTransaction: VerificationResult<Transaction>? { get async }The most recent transaction for the product, or `nil` if the user has never purchased this product.
get currentEntitlement(): Promise<(VerificationResult<Transaction>) | null>Swift declarationvar currentEntitlement: VerificationResult<Transaction>? { get async }The transaction that entitles the user to this product, or `nil` if the user is not currently entitled to this product. @DeprecationSummary { Use the ``currentEntitlements`` property instead. }
get jsonRepresentation(): ArrayBufferSwift declarationvar jsonRepresentation: Data { get }The raw JSON representation of the product.
get currentEntitlements(): Transaction_TransactionsSwift declaration@backDeployed(before: iOS 26.0, macOS 26.0, tvOS 26.0, watchOS 26.0, visionOS 26.0)
var currentEntitlements: Transaction.Transactions { get }get subscriptionPeriodFormatStyle(): _Foundation_Date_ComponentsFormatStyleSwift declaration@backDeployed(before: iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, macCatalyst 16.0)
var subscriptionPeriodFormatStyle: Date.ComponentsFormatStyle { get }The format style to use when formatting subscription periods for the subscription. Use the `formatted(_:referenceDate:)` method on `Product.SubscriptionPeriod` with this style to format the subscription period for the App Store locale for the subscription. - Important: When using `subscriptionPeriodFormatStyle` on systems earlier than iOS 16.0, macOS 13.0, tvOS 16.0 or watchOS 9.0, the property may return a format style with a sentinel locale with identifier "xx\_XX" in some uncommon cases: (1) StoreKit Testing in Xcode (workaround: test your app on a device running a more recent OS) or (2) a critical server error.
get id(): stringSwift declarationlet id: StringThe unique product identifier.
get subscriptionPeriodUnitFormatStyle(): Product_SubscriptionPeriod_Unit_FormatStyleSwift declarationvar subscriptionPeriodUnitFormatStyle: Product.SubscriptionPeriod.Unit.FormatStyle { get }The format style to use when formatting subscription period units for the subscription. Use the `formatted(_:)` method on `Product.SubscriptionPeriod.Unit` with this style to format the subscription period for the App Store locale for the subscription.
get type(): Product_ProductTypeSwift declarationlet type: Product.ProductTypeThe type of the product.
get price(): _Foundation_DecimalSwift declarationlet price: DecimalThe price of the product in local currency.
static products(identifiers: Array<string>): Promise<Array<Product>>Swift declarationstatic func products<Identifiers>(for identifiers: Identifiers) async throws -> [Product] where Identifiers : Collection, Identifiers.Element == StringRequests product data from the App Store. - Parameter identifiers: A set of product identifiers to load from the App Store. If any identifiers are not found, they will be excluded from the return value. - Returns: An array of all the products received from the App Store. - Throws: `StoreKitError`
purchaseOptions(options?: Array<Product_PurchaseOption>): Promise<Product_PurchaseResult>Swift declaration@MainActor func purchase(options: Set<Product.PurchaseOption> = []) async throws -> Product.PurchaseResultProcesses a purchase for the product. - Parameter options: A set of options to configure the purchase. - Returns: The result of the purchase. - Throws: A `PurchaseError` or `StoreKitError`.
purchaseConfirmInOptions(viewController: _UIKit_UIViewController, options?: Array<Product_PurchaseOption>): Promise<Product_PurchaseResult>Swift declarationfunc purchase(confirmIn viewController: UIViewController, options: Set<Product.PurchaseOption> = []) async throws -> Product.PurchaseResultProcesses a purchase for the product. - Parameters: - viewController: The view controller to show purchase confirmation UI in proximity to. - options: A set of options to configure the purchase. - Returns: The result of the purchase - Throws: A `PurchaseError` or `StoreKitError`.
purchaseConfirmInOptions44435(scene: _UIKit_UIScene, options?: Array<Product_PurchaseOption>): Promise<Product_PurchaseResult>Swift declaration@MainActor func purchase(confirmIn scene: some UIScene, options: Set<Product.PurchaseOption> = []) async throws -> Product.PurchaseResultProcesses a purchase for the product. - Parameters: - scene: The scene to show purchase confirmation UI in proximity to. - options: A set of options to configure the purchase. - Returns: The result of the purchase - Throws: A `PurchaseError` or `StoreKitError`.
No declarations were skipped in this snapshot.