API reference

ProductDetails

Updated: Mar 19, 2025

ProductDetails

data class ProductDetails(val productId: String⁠, val title: String⁠ = "", val name: String⁠ = "", val description: String⁠ = "", val productType: String⁠, val oneTimePurchaseOfferDetails: ProductDetails.OneTimePurchaseOfferDetails?, var subscriptionOfferDetails: List⁠<ProductDetails.SubscriptionOfferDetails>?)
Represents the details of a one time or subscription product.
The equivalent Google Play Billing Library class can be found at the Android developer documentation for ProductDetails⁠.

Constructors

NameSummary
ProductDetails
constructor(ovrProduct: Product)constructor(productId: String⁠, title: String⁠ = "", name: String⁠ = "", description: String⁠ = "", productType: String⁠, oneTimePurchaseOfferDetails: ProductDetails.OneTimePurchaseOfferDetails?, subscriptionOfferDetails: List⁠<ProductDetails.SubscriptionOfferDetails>?)

Types

NameSummary
Companion
object Companion
data class InstallmentPlanDetails(val installmentPlanCommitmentPaymentsCount: Int⁠, val subsequentInstallmentPlanCommitmentPaymentsCount: Int⁠)
Represents additional details of an installment subscription plan.
data class OneTimePurchaseOfferDetails(val formattedPrice: String⁠, val priceAmountMicros: Long⁠, val priceCurrencyCode: String⁠)
Represents the offer details to buy an one-time purchase product.
data class PricingPhase(val billingCycleCount: Int⁠, val billingPeriod: String⁠, val formattedPrice: String⁠, val priceAmountMicros: Long⁠, val priceCurrencyCode: String⁠, val recurrenceMode: Int⁠)
Represents a pricing phase, describing how a user pays at a point in time.
data class PricingPhases(val pricingPhaseList: List⁠<ProductDetails.PricingPhase>)
Pricing phases for purchasing an item through a offer. Pricing phases contains time ordered list of ProductDetails.PricingPhase.
annotation class RecurrenceMode
Recurrence mode of the pricing phase.
data class SubscriptionOfferDetails(val basePlanId: String⁠, val installmentPlanDetails: ProductDetails.InstallmentPlanDetails, val offerId: String⁠?, val offerTags: List⁠<String⁠>, val offerToken: String⁠, val pricingPhases: ProductDetails.PricingPhases)
Represents the available purchase plans to buy a subscription product.

Properties

NameSummary
description
val description: String⁠
The description of the product.
name
val name: String⁠
The name of the product being sold.
oneTimePurchaseOfferDetails
val oneTimePurchaseOfferDetails: ProductDetails.OneTimePurchaseOfferDetails?
The offer details of an one-time purchase product.
productId
val productId: String⁠
The product’s Id.
productType
val productType: String⁠
The @BillingClient.ProductType of the product
subscriptionOfferDetails
var subscriptionOfferDetails: List⁠<ProductDetails.SubscriptionOfferDetails>?
The available purchase plans to buy a subscription product.
title
val title: String⁠
The title of the product being sold.

Companion

object Companion

Properties

NameSummary
SUBS_VIRTUAL_SKU_PREFIX
const val SUBS_VIRTUAL_SKU_PREFIX: String⁠