# Class Index

# Class Index

These are the API classes. See all[API packages](https://developer.android.com/reference/com/android/billingclient/packages).

## A

|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [AccountIdentifiers](https://developer.android.com/reference/com/android/billingclient/api/AccountIdentifiers)                                                           | Account identifiers that were specified when the purchase was made.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| [AcknowledgePurchaseParams](https://developer.android.com/reference/com/android/billingclient/api/AcknowledgePurchaseParams)                                             | Parameters to acknowledge a purchase.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [AcknowledgePurchaseParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/AcknowledgePurchaseParams.Builder)                             | Helps construct[AcknowledgePurchaseParams](https://developer.android.com/reference/com/android/billingclient/api/AcknowledgePurchaseParams)that are used to acknowledge a purchase.                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| [AcknowledgePurchaseResponseListener](https://developer.android.com/reference/com/android/billingclient/api/AcknowledgePurchaseResponseListener)                         | Listener for the result of an acknowledge purchase request.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| [AlternativeBillingListener](https://developer.android.com/reference/com/android/billingclient/api/AlternativeBillingListener)                                           | *This interface is deprecated. Use[BillingClient.Builder.enableUserChoiceBilling(UserChoiceBillingListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient.Builder#enableUserChoiceBilling(com.android.billingclient.api.UserChoiceBillingListener))with[UserChoiceBillingListener](https://developer.android.com/reference/com/android/billingclient/api/UserChoiceBillingListener)instead.* Included in documentation by the annotations: @Annotations.AlternativeBilling                                                                                                                                     |
| [AlternativeBillingOnlyAvailabilityListener](https://developer.android.com/reference/com/android/billingclient/api/AlternativeBillingOnlyAvailabilityListener)           | Listener for the result of the[BillingClient.isAlternativeBillingOnlyAvailableAsync(AlternativeBillingOnlyAvailabilityListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient#isAlternativeBillingOnlyAvailableAsync(com.android.billingclient.api.AlternativeBillingOnlyAvailabilityListener))API.                                                                                                                                                                                                                                                                                                            |
| [AlternativeBillingOnlyInformationDialogListener](https://developer.android.com/reference/com/android/billingclient/api/AlternativeBillingOnlyInformationDialogListener) | Listener for the result of the[BillingClient.showAlternativeBillingOnlyInformationDialog(Activity, AlternativeBillingOnlyInformationDialogListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient#showAlternativeBillingOnlyInformationDialog(android.app.Activity,%20com.android.billingclient.api.AlternativeBillingOnlyInformationDialogListener))API.                                                                                                                                                                                                                                                      |
| [AlternativeBillingOnlyReportingDetails](https://developer.android.com/reference/com/android/billingclient/api/AlternativeBillingOnlyReportingDetails)                   | The details used to report transactions made via alternative billing without user choice to use Google Play billing.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [AlternativeBillingOnlyReportingDetailsListener](https://developer.android.com/reference/com/android/billingclient/api/AlternativeBillingOnlyReportingDetailsListener)   | Listener for the result of the[BillingClient.createAlternativeBillingOnlyReportingDetailsAsync(AlternativeBillingOnlyReportingDetailsListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient#createAlternativeBillingOnlyReportingDetailsAsync(com.android.billingclient.api.AlternativeBillingOnlyReportingDetailsListener))API.                                                                                                                                                                                                                                                                              |
| [AlternativeChoiceDetails](https://developer.android.com/reference/com/android/billingclient/api/AlternativeChoiceDetails)                                               | *This class is deprecated. Use[BillingClient.Builder.enableUserChoiceBilling(UserChoiceBillingListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient.Builder#enableUserChoiceBilling(com.android.billingclient.api.UserChoiceBillingListener))with[UserChoiceBillingListener](https://developer.android.com/reference/com/android/billingclient/api/UserChoiceBillingListener)and[UserChoiceDetails](https://developer.android.com/reference/com/android/billingclient/api/UserChoiceDetails)in the listener callback instead.* Included in documentation by the annotations: @Annotations.AlternativeBilling |
| [AlternativeChoiceDetails.Product](https://developer.android.com/reference/com/android/billingclient/api/AlternativeChoiceDetails.Product)                               | Details about a product being purchased.Included in documentation by the annotations: @Annotations.AlternativeBilling                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |

## B

|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [BillingClient](https://developer.android.com/reference/com/android/billingclient/api/BillingClient)                                                                                           | Main interface for communication between the library and user application code.                                                                                                                                                                                                                                                                                |
| [BillingClient.BillingResponseCode](https://developer.android.com/reference/com/android/billingclient/api/BillingClient.BillingResponseCode)                                                   | Possible response codes.                                                                                                                                                                                                                                                                                                                                       |
| [BillingClient.Builder](https://developer.android.com/reference/com/android/billingclient/api/BillingClient.Builder)                                                                           | Builder to configure and create a[BillingClient](https://developer.android.com/reference/com/android/billingclient/api/BillingClient)instance.                                                                                                                                                                                                                 |
| [BillingClient.ConnectionState](https://developer.android.com/reference/com/android/billingclient/api/BillingClient.ConnectionState)                                                           | Connection state of billing client.                                                                                                                                                                                                                                                                                                                            |
| [BillingClient.FeatureType](https://developer.android.com/reference/com/android/billingclient/api/BillingClient.FeatureType)                                                                   | Features/capabilities supported by[BillingClient.isFeatureSupported(String)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient#isFeatureSupported(java.lang.String)).                                                                                                                                                        |
| [BillingClient.ProductType](https://developer.android.com/reference/com/android/billingclient/api/BillingClient.ProductType)                                                                   | Supported Product types.                                                                                                                                                                                                                                                                                                                                       |
| [BillingClient.SkuType](https://developer.android.com/reference/com/android/billingclient/api/BillingClient.SkuType)                                                                           | *This @interface is deprecated. Use[BillingClient.ProductType](https://developer.android.com/reference/com/android/billingclient/api/BillingClient.ProductType)instead.*                                                                                                                                                                                       |
| [BillingClientStateListener](https://developer.android.com/reference/com/android/billingclient/api/BillingClientStateListener)                                                                 | Callback for setup process.                                                                                                                                                                                                                                                                                                                                    |
| [BillingConfig](https://developer.android.com/reference/com/android/billingclient/api/BillingConfig)                                                                                           | BillingConfig stores configuration used to perform billing operations.                                                                                                                                                                                                                                                                                         |
| [BillingConfigResponseListener](https://developer.android.com/reference/com/android/billingclient/api/BillingConfigResponseListener)                                                           | Listener for the result of the[BillingClient.getBillingConfigAsync(GetBillingConfigParams, BillingConfigResponseListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient#getBillingConfigAsync(com.android.billingclient.api.GetBillingConfigParams,%20com.android.billingclient.api.BillingConfigResponseListener))API. |
| [BillingFlowParams](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams)                                                                                   | Parameters to initiate a purchase flow.                                                                                                                                                                                                                                                                                                                        |
| [BillingFlowParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder)                                                                   | Helps to construct[BillingFlowParams](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams)that are used to initiate a purchase flow.                                                                                                                                                                                       |
| [BillingFlowParams.ProductDetailsParams](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.ProductDetailsParams)                                         | Params that describe the product to be purchased and the offer to purchase with.                                                                                                                                                                                                                                                                               |
| [BillingFlowParams.ProductDetailsParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.ProductDetailsParams.Builder)                         | Helps to construct a[BillingFlowParams.ProductDetailsParams](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.ProductDetailsParams).                                                                                                                                                                                    |
| [BillingFlowParams.ProrationMode](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.ProrationMode)                                                       | *This @interface is deprecated. use[BillingFlowParams.SubscriptionUpdateParams.ReplacementMode](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.SubscriptionUpdateParams.ReplacementMode)instead.*                                                                                                                     |
| [BillingFlowParams.SubscriptionUpdateParams](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.SubscriptionUpdateParams)                                 | Params that describe a subscription update.                                                                                                                                                                                                                                                                                                                    |
| [BillingFlowParams.SubscriptionUpdateParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.SubscriptionUpdateParams.Builder)                 | Helps to construct[BillingFlowParams.SubscriptionUpdateParams](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.SubscriptionUpdateParams).                                                                                                                                                                              |
| [BillingFlowParams.SubscriptionUpdateParams.ReplacementMode](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.SubscriptionUpdateParams.ReplacementMode) | Supported replacement modes to replace an existing subscription with a new one.                                                                                                                                                                                                                                                                                |
| [BillingResult](https://developer.android.com/reference/com/android/billingclient/api/BillingResult)                                                                                           | Params containing the response code and the debug message from In-app Billing API response.                                                                                                                                                                                                                                                                    |
| [BillingResult.Builder](https://developer.android.com/reference/com/android/billingclient/api/BillingResult.Builder)                                                                           | Helps to construct[BillingResult](https://developer.android.com/reference/com/android/billingclient/api/BillingResult)that are used to return response from In-app Billing API.                                                                                                                                                                                |

## C

|--------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------|
| [ConsumeParams](https://developer.android.com/reference/com/android/billingclient/api/ConsumeParams)                     | Parameters to consume a purchase.                                                                                                                       |
| [ConsumeParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/ConsumeParams.Builder)     | Helps construct[ConsumeParams](https://developer.android.com/reference/com/android/billingclient/api/ConsumeParams)that are used to consume a purchase. |
| [ConsumeResponseListener](https://developer.android.com/reference/com/android/billingclient/api/ConsumeResponseListener) | Callback that notifies when a consumption operation finishes.                                                                                           |

## G

|----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [GetBillingConfigParams](https://developer.android.com/reference/com/android/billingclient/api/GetBillingConfigParams)                 | Parameters for get billing config flow[BillingClient.getBillingConfigAsync(GetBillingConfigParams, BillingConfigResponseListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient#getBillingConfigAsync(com.android.billingclient.api.GetBillingConfigParams,%20com.android.billingclient.api.BillingConfigResponseListener)). |
| [GetBillingConfigParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/GetBillingConfigParams.Builder) | Helps construct[GetBillingConfigParams](https://developer.android.com/reference/com/android/billingclient/api/GetBillingConfigParams).                                                                                                                                                                                                                              |

## I

|------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------|
| [InAppMessageParams](https://developer.android.com/reference/com/android/billingclient/api/InAppMessageParams)                                                   | Parameters for in-app messaging.                                                                                               |
| [InAppMessageParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/InAppMessageParams.Builder)                                   | Helps construct[InAppMessageParams](https://developer.android.com/reference/com/android/billingclient/api/InAppMessageParams). |
| [InAppMessageParams.InAppMessageCategoryId](https://developer.android.com/reference/com/android/billingclient/api/InAppMessageParams.InAppMessageCategoryId)     | A high-level category of the in-app message.                                                                                   |
| [InAppMessageResponseListener](https://developer.android.com/reference/com/android/billingclient/api/InAppMessageResponseListener)                               | Listener for the result of the in-app messaging flow.                                                                          |
| [InAppMessageResult](https://developer.android.com/reference/com/android/billingclient/api/InAppMessageResult)                                                   | Results related to in-app messaging.                                                                                           |
| [InAppMessageResult.InAppMessageResponseCode](https://developer.android.com/reference/com/android/billingclient/api/InAppMessageResult.InAppMessageResponseCode) | Possible response codes.                                                                                                       |

## P

|----------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [ProductDetails](https://developer.android.com/reference/com/android/billingclient/api/ProductDetails)                                                         | Represents the details of a one time or subscription product.                                                                                                      |
| [ProductDetails.OneTimePurchaseOfferDetails](https://developer.android.com/reference/com/android/billingclient/api/ProductDetails.OneTimePurchaseOfferDetails) | Represents the offer details to buy an one-time purchase product.                                                                                                  |
| [ProductDetails.PricingPhase](https://developer.android.com/reference/com/android/billingclient/api/ProductDetails.PricingPhase)                               | Represents a pricing phase, describing how a user pays at a point in time.                                                                                         |
| [ProductDetails.PricingPhases](https://developer.android.com/reference/com/android/billingclient/api/ProductDetails.PricingPhases)                             | Pricing phases for purchasing an item through a offer.                                                                                                             |
| [ProductDetails.RecurrenceMode](https://developer.android.com/reference/com/android/billingclient/api/ProductDetails.RecurrenceMode)                           | Recurrence mode of the pricing phase.                                                                                                                              |
| [ProductDetails.SubscriptionOfferDetails](https://developer.android.com/reference/com/android/billingclient/api/ProductDetails.SubscriptionOfferDetails)       | Represents the available purchase plans to buy a subscription product.                                                                                             |
| [ProductDetailsResponseListener](https://developer.android.com/reference/com/android/billingclient/api/ProductDetailsResponseListener)                         | Listener to a result of product details query.                                                                                                                     |
| [Purchase](https://developer.android.com/reference/com/android/billingclient/api/Purchase)                                                                     | Represents an in-app billing purchase.                                                                                                                             |
| [Purchase.PurchaseState](https://developer.android.com/reference/com/android/billingclient/api/Purchase.PurchaseState)                                         | Possible purchase states.                                                                                                                                          |
| [PurchaseHistoryRecord](https://developer.android.com/reference/com/android/billingclient/api/PurchaseHistoryRecord)                                           | Represents an in-app billing purchase history record.                                                                                                              |
| [PurchaseHistoryResponseListener](https://developer.android.com/reference/com/android/billingclient/api/PurchaseHistoryResponseListener)                       | Listener to a result of purchase history query.                                                                                                                    |
| [PurchasesResponseListener](https://developer.android.com/reference/com/android/billingclient/api/PurchasesResponseListener)                                   | Listener to a result of purchases query.                                                                                                                           |
| [PurchasesUpdatedListener](https://developer.android.com/reference/com/android/billingclient/api/PurchasesUpdatedListener)                                     | Listener interface for purchase updates which happen when, for example, the user buys something within the app or by initiating a purchase from Google Play Store. |

## Q

|--------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [QueryProductDetailsParams](https://developer.android.com/reference/com/android/billingclient/api/QueryProductDetailsParams)                                 | Parameters to initiate a query for Product details[BillingClient.queryProductDetailsAsync(QueryProductDetailsParams, ProductDetailsResponseListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient#queryProductDetailsAsync(com.android.billingclient.api.QueryProductDetailsParams,%20com.android.billingclient.api.ProductDetailsResponseListener)). |
| [QueryProductDetailsParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/QueryProductDetailsParams.Builder)                 | Helps construct[QueryProductDetailsParams](https://developer.android.com/reference/com/android/billingclient/api/QueryProductDetailsParams)required to query[ProductDetails](https://developer.android.com/reference/com/android/billingclient/api/ProductDetails).                                                                                                                           |
| [QueryProductDetailsParams.Product](https://developer.android.com/reference/com/android/billingclient/api/QueryProductDetailsParams.Product)                 | A Product identifier used for querying product details.                                                                                                                                                                                                                                                                                                                                       |
| [QueryProductDetailsParams.Product.Builder](https://developer.android.com/reference/com/android/billingclient/api/QueryProductDetailsParams.Product.Builder) | Builder that helps construct[QueryProductDetailsParams.Product](https://developer.android.com/reference/com/android/billingclient/api/QueryProductDetailsParams.Product).                                                                                                                                                                                                                     |
| [QueryPurchaseHistoryParams](https://developer.android.com/reference/com/android/billingclient/api/QueryPurchaseHistoryParams)                               | Parameters to initiate a query for purchase history.                                                                                                                                                                                                                                                                                                                                          |
| [QueryPurchaseHistoryParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/QueryPurchaseHistoryParams.Builder)               | Helps construct[QueryPurchaseHistoryParams](https://developer.android.com/reference/com/android/billingclient/api/QueryPurchaseHistoryParams)required to query purchase history.                                                                                                                                                                                                              |
| [QueryPurchasesParams](https://developer.android.com/reference/com/android/billingclient/api/QueryPurchasesParams)                                           | Parameters to initiate a query for purchases.                                                                                                                                                                                                                                                                                                                                                 |
| [QueryPurchasesParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/QueryPurchasesParams.Builder)                           | Helps construct[QueryPurchasesParams](https://developer.android.com/reference/com/android/billingclient/api/QueryPurchasesParams)required to query purchases.                                                                                                                                                                                                                                 |

## S

|--------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [SkuDetails](https://developer.android.com/reference/com/android/billingclient/api/SkuDetails)                                 | *This class is deprecated. Use[BillingClient.queryProductDetailsAsync(QueryProductDetailsParams, ProductDetailsResponseListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient#queryProductDetailsAsync(com.android.billingclient.api.QueryProductDetailsParams,%20com.android.billingclient.api.ProductDetailsResponseListener))instead*     |
| [SkuDetailsParams](https://developer.android.com/reference/com/android/billingclient/api/SkuDetailsParams)                     | *This class is deprecated. Use[BillingClient.queryProductDetailsAsync(QueryProductDetailsParams, ProductDetailsResponseListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient#queryProductDetailsAsync(com.android.billingclient.api.QueryProductDetailsParams,%20com.android.billingclient.api.ProductDetailsResponseListener))instead*     |
| [SkuDetailsParams.Builder](https://developer.android.com/reference/com/android/billingclient/api/SkuDetailsParams.Builder)     | Helps to construct[SkuDetailsParams](https://developer.android.com/reference/com/android/billingclient/api/SkuDetailsParams)that are used to query for SKU details.                                                                                                                                                                                                                  |
| [SkuDetailsResponseListener](https://developer.android.com/reference/com/android/billingclient/api/SkuDetailsResponseListener) | *This interface is deprecated. Use[BillingClient.queryProductDetailsAsync(QueryProductDetailsParams, ProductDetailsResponseListener)](https://developer.android.com/reference/com/android/billingclient/api/BillingClient#queryProductDetailsAsync(com.android.billingclient.api.QueryProductDetailsParams,%20com.android.billingclient.api.ProductDetailsResponseListener))instead* |

## U

|------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------|
| [UserChoiceBillingListener](https://developer.android.com/reference/com/android/billingclient/api/UserChoiceBillingListener) | Listener interface for the developer-managed alternative billing flow, when it is chosen by the user when initiating a purchase. |
| [UserChoiceDetails](https://developer.android.com/reference/com/android/billingclient/api/UserChoiceDetails)                 | Details related to a user's choice of alternative billing.                                                                       |
| [UserChoiceDetails.Product](https://developer.android.com/reference/com/android/billingclient/api/UserChoiceDetails.Product) | Details about a product being purchased.                                                                                         |