StoreProduct

interface StoreProduct

Represents an in-app product's or subscription's listing details.

Properties

Link copied to clipboard
abstract val category: ProductCategory?

Category of product. One of ProductCategory. Is never null on iOS, but will be null on Android if the type is ProductType.UNKNOWN.

Link copied to clipboard

Play Store only. The default SubscriptionOption that will be used when purchasing and not specifying a different option. Null for INAPP products.

Link copied to clipboard

App Store only. A list of subscription offers available for the auto-renewable subscription.

Link copied to clipboard
abstract val id: String

The product ID. Google INAPP: "" Google Sub: "productId:basePlanID" Amazon INAPP: "" Amazon Sub: ""

Link copied to clipboard

App Store only, null otherwise. The object containing introductory price information for the product. If you’ve set up introductory prices in App Store Connect, the introductory price property will be populated. This property is null if the product has no introductory price.

Link copied to clipboard

The description of the product.

Link copied to clipboard
abstract val period: Period?

Subscription period. Note: Returned only for Google subscriptions. Null for Amazon or for INAPP products.

Link copied to clipboard

The offering ID this StoreProduct was returned from.

Link copied to clipboard
abstract val price: Price

Price information for a non-subscription product. Base plan price for a Google subscription. Term price for an Amazon subscription. For Google subscriptions, use SubscriptionOption's pricing phases for offer pricing.

Link copied to clipboard
abstract val pricePerMonth: Price?

Null for INAPP products. The price of the StoreProduct in the current locale in a monthly recurrence. This means that, for example, if the period is annual, the price will be divided by 12. It uses a currency formatter to format the price in the given locale. Note that this value may be an approximation. For Google subscriptions, this value will use the basePlan to calculate the value.

Link copied to clipboard
abstract val pricePerWeek: Price?

Null for INAPP products. The price of the StoreProduct in the current locale in a weekly recurrence. This means that, for example, if the period is monthly, the price will be divided by 4. It uses a currency formatter to format the price in the given locale. Note that this value may be an approximation. For Google subscriptions, this value will use the basePlan to calculate the value.

Link copied to clipboard
abstract val pricePerYear: Price?

Null for INAPP products. The price of the StoreProduct in the current locale in a yearly recurrence. This means that, for example, if the period is monthly, the price will be multiplied by 12. It uses a currency formatter to format the price in the given locale. Note that this value may be an approximation. For Google subscriptions, this value will use the basePlan to calculate the value.

Link copied to clipboard

Contains only data that is required to make the purchase.

Link copied to clipboard

Play Store only. Contains all SubscriptionOptions. Null for Amazon or for INAPP products.

Link copied to clipboard
abstract val title: String

Title of the product. If you are using Google subscriptions with multiple base plans, this title will be the same for every subscription duration (monthly, yearly, etc) as base plans don't have their own titles. Google suggests using the duration as a way to title base plans.

Link copied to clipboard
abstract val type: ProductType

Type of product. One of ProductType.