Package-level declarations

Types

Link copied to clipboard

Enum mapping billing feature types. Currently only used to check for feature availability in Android's, Play store.

Link copied to clipboard

Specifies behavior for a caching API.

Link copied to clipboard
class CustomerInfo(val activeSubscriptions: Set<String>, val allExpirationDateMillis: Map<String, Long?>, val allPurchaseDateMillis: Map<String, Long?>, val allPurchasedProductIdentifiers: Set<String>, val entitlements: EntitlementInfos, val firstSeenMillis: Long, val latestExpirationDateMillis: Long?, val managementUrlString: String?, val nonSubscriptionTransactions: List<Transaction>, val originalAppUserId: String, val originalApplicationVersion: String?, val originalPurchaseDateMillis: Long?, val requestDateMillis: Long)

Class containing all information regarding the customer.

Link copied to clipboard
class DangerousSettings(val autoSyncPurchases: Boolean = true)

Only use a Dangerous Setting if suggested by RevenueCat support team.

Link copied to clipboard

App Store only. The payment mode for a StoreProductDiscount indicates how the product discount price is charged.

Link copied to clipboard

App Store only. Denotes the type of a StoreProductDiscount.

Link copied to clipboard
class EntitlementInfo(val identifier: String, val isActive: Boolean, val willRenew: Boolean, val periodType: PeriodType, val latestPurchaseDateMillis: Long?, val originalPurchaseDateMillis: Long?, val expirationDateMillis: Long?, val store: Store, val productIdentifier: String, val productPlanIdentifier: String?, val isSandbox: Boolean, val unsubscribeDetectedAtMillis: Long?, val billingIssueDetectedAtMillis: Long?, val ownershipType: OwnershipType, val verification: VerificationResult)

This object gives you access to all of the information about the status of a user's entitlements.

Link copied to clipboard
class EntitlementInfos(val all: Map<String, EntitlementInfo>, val verification: VerificationResult)

This class contains all the entitlements associated to the user.

Link copied to clipboard
Link copied to clipboard

Enum of possible replacement modes to be passed to a Play Store purchase. Ignored for Amazon and App Store purchases.

Link copied to clipboard
class InstallmentsInfo(val commitmentPaymentsCount: Int, val renewalCommitmentPaymentsCount: Int)

Type containing information of installment subscriptions. Currently only supported in Google Play.

Link copied to clipboard
interface Offering

An offering is a collection of Packages available for the user to purchase. For more info see https://docs.revenuecat.com/docs/entitlements

Link copied to clipboard
class Offerings(val all: Map<String, Offering>, val current: Offering?, getCurrentOfferingForPlacement: (placementId: String) -> Offering?)

This class contains all the offerings configured in RevenueCat dashboard. For more info see https://docs.revenuecat.com/docs/entitlements

Link copied to clipboard

Play Store only. Payment mode for offer pricing phases

Link copied to clipboard

Enum of supported ownership types for an entitlement.

Link copied to clipboard
interface Package

Contains information about the product available for the user to purchase. For more info see /docs/entitlements.

Link copied to clipboard

Enumeration of all possible Package types.

Link copied to clipboard
class Period(val value: Int, val unit: PeriodUnit)

Represents subscription or PricingPhase billing period.

Link copied to clipboard

Enum of supported period types for an entitlement.

Link copied to clipboard

The unit of time a Period is denoted in.

Link copied to clipboard
class PresentedOfferingContext(val offeringIdentifier: String, val placementIdentifier: String?, val targetingContext: PresentedOfferingTargetingContext?)

Contains data about the context in which an offering was presented.

Link copied to clipboard
class PresentedOfferingTargetingContext(val revision: Int, val ruleId: String)

The targeting context used to obtain a PresentedOfferingContext.

Link copied to clipboard
class Price(val formatted: String, val amountMicros: Long, val currencyCode: String)

Represents a monetary price.

Link copied to clipboard
class PricingPhase(val billingPeriod: Period, val recurrenceMode: RecurrenceMode, val billingCycleCount: Int?, val price: Price, val offerPaymentMode: OfferPaymentMode?)

Play Store only. Encapsulates how a user pays for a subscription at a given point in time.

Link copied to clipboard

The category of a product, whether a subscription or a one-time purchase.

Link copied to clipboard

Possible product types.

Link copied to clipboard

App Store only. Represents a StoreProductDiscount that has been validated and is ready to be used for a purchase.

Link copied to clipboard
sealed interface PurchasesAreCompletedBy

Modes for completing the purchase process.

Link copied to clipboard
class PurchasesError(val code: PurchasesErrorCode, val underlyingErrorMessage: String? = null)

This class represents an error

Link copied to clipboard

A predefined error type.

Link copied to clipboard

An exception wrapping a PurchasesError.

Link copied to clipboard
class PurchasesTransactionException(purchasesError: PurchasesError, val userCancelled: Boolean) : PurchasesException

An exception indicating an error occurred during a transaction. Extends PurchasesException by adding a userCancelled property.

Link copied to clipboard
interface PurchasingData

Data connected to a purchase.

Link copied to clipboard

Recurrence mode for a pricing phase. Google Play Store only.

Link copied to clipboard
interface ReplacementMode

Contains information about the replacement mode to use in case of a product upgrade. Use the platform specific subclasses in each implementation. Currently only used for Play store upgrades/downgrades

Link copied to clipboard
enum Store : Enum<Store>

Enum of supported stores

Link copied to clipboard

Defines which version of StoreKit may be used.

Link copied to clipboard

Enum mapping in-app message types.

Link copied to clipboard
interface StoreProduct

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

Link copied to clipboard

App Store only. Information about a subscription offer that you configured in App Store Connect.

Link copied to clipboard
class StoreTransaction(val transactionId: String?, val productIds: List<String>, val purchaseTime: Long)

Represents an in-app billing purchase.

Link copied to clipboard

Play Store only. A purchase-able entity for a subscription product.

Link copied to clipboard

A collection of SubscriptionOptions.

Link copied to clipboard
class Transaction(val transactionIdentifier: String, val productIdentifier: String, val purchaseDateMillis: Long)

Representation of a transaction.

Link copied to clipboard

The result of the verification process.

Properties

Link copied to clipboard

The subscription period of fullPricePhase (after free and intro trials).

Link copied to clipboard

The free trial PricingPhase of the subscription. Looks for the first pricing phase of the SubscriptionOption where amountMicros is 0. There can be a freeTrialPhase and an introductoryPhase in the same SubscriptionOption.

Link copied to clipboard

The full price PricingPhase of the subscription. Looks for the last price phase of the SubscriptionOption.

Link copied to clipboard

The intro trial PricingPhase of the subscription. Looks for the first pricing phase of the SubscriptionOption where amountMicros is greater than 0. There can be a freeTrialPhase and an introductoryPhase in the same SubscriptionOption.

Link copied to clipboard

True if this SubscriptionOption represents a Google subscription base plan (rather than an offer). Not applicable for Amazon subscriptions.

Link copied to clipboard

True if the subscription is pre-paid. Not applicable for Amazon subscriptions.