487 questions
0
votes
1
answer
66
views
Fetching OfuscatedAccountId with AndroidPublisher service account 2026
It is question about Google Play Billing in 2026
I was doing that before like in 2024 and I manage those systems still. So I in theory I have access to working accounts and I can see permissions that ...
1
vote
1
answer
608
views
Google Play Store blocking app update due to Billing Library version AIDL and must update to at least version 6.0.1
Working on a legacy app recently, I went to upload a new version but was blocked by the following error on the google play store:
Your app currently uses Play Billing Library version AIDL and must ...
0
votes
1
answer
53
views
Preference summary does not update after being changed from BillingClient.queryProductDetailsAsync() or BillingClient.queryPurchasesAsync() callbacks
I have an app with one in-app purchase.
The status (purchased/not purchased) is displayed in a Preference of a PreferenceFragmentCompat.
The text in the preference summary is initialized with "...
0
votes
0
answers
74
views
Can I use the BillingClient SDK to fetch the Play Store region without in-app purchases?
I am planning to use the BillingClient SDK in my Android app to fetch the user's Play Store region. However, my app does not include any in-app purchasing features.
Is it still acceptable to use the ...
1
vote
1
answer
307
views
How to identify the subscription duration (monthly or yearly) from a purchase in Google Play Billing Library?
I am using the Google Play Billing Library in my Kotlin app to allow users to purchase subscriptions. I have a single product with two subscription offers: one for a monthly duration and the other for ...
0
votes
1
answer
121
views
Display Product data from BillingClient
I have made the following BillingManager class to handle the Google Play Billing Library for my Android app:
public class BillingManager {
private List<ProductDetails> productDetailsList;
...
0
votes
1
answer
137
views
How to check the status of In-app-billing in android (Jetpack compose) app
I developed a simple app without any backend cloud server, It has an IN-APP-Billing system for premium users. (It is a one-time purchase). To perform that system, I'm using Google's in-app billing ...
2
votes
0
answers
373
views
BillingClient - queryProductDetailsAsync returns error statuses (2, 6, 12) many times
I'm using billing client in my game in order to let people purchase in app item.
According to my logs, many users aren't able to purchase the item, as purchase flow doesn't start.
Logs show that most ...
4
votes
0
answers
671
views
Fatal Exception in Google Play Billing Library: NullPointerException in ProxyBillingActivity
I am encountering a crash in my Android application related to the Google Play Billing Library. The crash occurs when trying to start the ProxyBillingActivity, and the stack trace indicates a ...
1
vote
1
answer
138
views
Subscription upgrade vs expire - distinguish SUBSCRIPTION_EXPIRED notifications
There are two conflicting cases when Google sends SUBSCRIPTION_EXPIRED notification
subscription is expired, entitlements should be removed
subscription is superseded by another, entitlements should ...
19
votes
2
answers
6k
views
enablePendingPurchases was deprecated in version 7 of the google billing library
When updating the Google Billing Library to version 7 it marks the enablePendingPurchases() method as obsolete.
Reading the documentation it seems we now need to pass a PendingPurchasesParams object ...
0
votes
1
answer
81
views
How to find the end time of a subscription?
Android billing library has the queryPurchasesAsync api which returns the puchases of the user. Purchase class has the method getPurchaseTime() but the document says that for a subscription this ...
0
votes
1
answer
61
views
How to get data from play biling api
I have implemented play billing api in my backend, I get success getting startTime but lineItems->expiryTime can't get don't show anything
require_once('autoload.php');
//...
0
votes
1
answer
126
views
queryPurchasesAsync return empty when subscriptions expired
I test to buy subscription in sandbox ,but the subscription canceled and expired when the auto-renew reach 6 times.
Then nothing was returned with calling queryPurchasesAsync.
I think it would always ...
0
votes
1
answer
211
views
Change Paid Android App to Subscription Model but keep it free for past users
My client wants to turn a paid Android app into a free one with subscription options for premium features.
However users that have paid for in the past should not need to subscribe for premium ...
0
votes
1
answer
184
views
How can we persist ProductDetails in Google Play Billing Library 5 and 6 to disk?
In billing library version 4, we can use querySkuDetailsAsync to retrieve SkuDetails
String sku = skuDetails.getSku();
final Map<String, String> skuToOriginalJsons = new HashMap<>();
...
1
vote
0
answers
398
views
Google Play Billing PurchasesUpdatedListener returning SERVICE_DISCONNECTED
Im trying to add Google PLay Billing in my app from last few days , in the previous question i mentioned that the launch flow is opening the real payment method instead of test cards
view the ...
1
vote
0
answers
157
views
Google billing trial subscription error "Your transaction can't be completed"
This is the current setup in Google Play console:
Offer 1: 1W with 3d trial period
Offer 2: 1M
Offer 3: 1Y
When I request queryProductDetails I get next offers in subscriptionOfferDetails field:
...
1
vote
0
answers
126
views
Android Billing. How to purchase multiple quantity of multiple items?
Do we have the possibility to purchase multiple different items with different quantity within a single purchase?
Sample:
item_sku_0
item_sku_1
item_sku_2
The user selects
item_sku_0 : qty: 3
...
0
votes
1
answer
134
views
Android Billing : How to cancel Purchase if ConsumeParams failed
On an active and stable internet network, the purchasing process does not have any obstacles, but when a purchase is made on an unstable and super slow internet network (possibly disconnected, lost ...
0
votes
0
answers
314
views
Problems with subscription implementation | deprecated codes
let's see if I explain myself correctly, I am trying to implement subscriptions in an application on android studio for the first time, the structure is this:
splash.java -> SubscriptionActivity....
0
votes
1
answer
2k
views
Android Studio - In App Purchase: billingclient problem
A few years ago I made a app for Android, but the project was deleted by a mistake. After now a few more years I decided to write it again. So I have came to the part where I want to add in app ...
1
vote
0
answers
529
views
Google Play Billing queryPurchasesAsync returns empty subscriptions list while there is an active subscription
The Google Play Billing Library is returning an empty list of subscriptions when querying through the queryPurchasesAsync method while in fact there is an active subscription. From the documentation ...
1
vote
1
answer
196
views
A member variable set before billingClient.launchBillingFlow is lost when PurchasesUpdatedListener callback is triggered
I'm initializing a member variable to null.
Later in the process, this member variable is assigned a value, before starting the payment flow, ie before invoking billingClient.launchBillingFlow(context,...
0
votes
1
answer
45
views
When to use billingclient:billing in android app?
My Android app doesn't have any subscription or in app purchase, do I need to use billingclient library in my app?
Is it mandatory to use it?
1
vote
1
answer
96
views
Why Google Billing API does not provide purchase details which triggered using promo code in android?
Why Google does this?
Currently, the com.android.billingclient.api.Purchase object obtained through the Google Billing API does not include specific details about whether a purchase was made using a ...
0
votes
1
answer
239
views
Unable to access sku in queryProductDetailsAsync with Google Billing Library 6
I am working on migrating my project from Google Billing Library 4 to use Google Billing Library 6. In my querySkuDetails() method, I can't access the sku (string) from queryProductDetailsAsync
Here's ...
0
votes
1
answer
391
views
Billing library 6.0 error "user not eligible" on upgrade
I have setup two subscriptions each one having one baseplan, like this
SubsA -> Monthly baseplan A
SubsB -> Yearly baseplan B
I can successfully purchase each of them. So my test setup seems ...
2
votes
1
answer
668
views
Android Kotlin - Billing - get productId from In-App purchase
I'm trying to get the productId from a purchase:
private fun queryPurchases(purchases: List<Purchase>){
for (purchase in purchases) {
Log.d("pikaboo", purchase.toString())...
0
votes
1
answer
205
views
Android billing 6 enter in initiatePurchase function and do nothing after it
I'm new using Android billing. I'm implementing an activity with 4 consumable shopping options. So I have 4 buttons. When user clicks on any of them, the toast initiatedPurchase(productId: String) ...
2
votes
1
answer
622
views
Android Kotlin - Billing subscriptions - purpose of consumeAsync?
I've followed a tutorial about implementing subscriptions with Google Billing, but I've left out some methods but it seems to work just fine.
This is one of the methods I left out:
private fun ...
0
votes
1
answer
593
views
queryProductDetailsAsync returns empty list in production version (Google Play Billing)
I'm facing an issue, queryProductDetailsAsync returns empty list in production version, But it's working well for internal testers.
I published the app and it was approved yesterday. Also the app is ...
0
votes
1
answer
919
views
How to query old (one time) purchased items with play billing libray v6.0.1
I am migrating from In-App Billing v3 to Play Billing Library v6.0.1. I am stucked at a point where I need to query and confirm old (one time) purchases with play billing library v6.0.1. With in-app ...
0
votes
1
answer
824
views
BillingClient is not connecting to Play Services using v6.0.1
I am implementing in app services using in app billing library v6.0.1. Strangely the Billing Client is not connecting to Play Services.
I have tested the following code in both release and debug ...
0
votes
1
answer
59
views
Is it possible to get currency values returned by SkuDetails.getPrice()?
I'm using localizedPriceString of Unity that actually calls SkuDetails.getPrice() of Android API. For correct displaying symbols of any currency would be great to know list of values can be returned ...
0
votes
1
answer
1k
views
Replacement for SkuDetailsParams in Billing 6.0.1
I recently updated my Android app to use Billing Library version 6.0.1, and I noticed that SkuDetailsParams class is deprecated. I'm trying to find the new replacement or alternative for ...
2
votes
1
answer
1k
views
Google Billing crash my app because change screen mode to portrate
I have standard billing client with clear architecture, my billing clieant does not know about activity. I Send to billing client activity like a param on his method no more.
My app has screen mode = ...
1
vote
1
answer
115
views
How to call BillingClient::queryProductDetails in Kotlin without knowing any product IDs?
I would like to use the Play Store BillingClient to get a list of all products for sale for my app and I don't want to have to hard-code my product list on the client because the IDs on the client and ...
2
votes
2
answers
378
views
Android Play Store Subscription Billing doesn't trigger any action
I have successfully implemented the in-app purchase flow, now I am trying to switch to the subscription model but something is wrong in the makePurchase() method, it doesn't open the window for the ...
1
vote
0
answers
353
views
Handling Subscription Plan Selection in Google Play for a PWA App
I have the PWA app installed via the GooglePlay store. I use the following code in the app to create a subscription.
const paymentMethodData = [
{
supportedMethods: '...
2
votes
1
answer
556
views
Google Play Billing Library - Hot to check consumption status?
I am updating an older Android app to the latest Google Play Billing Library.
To handle consumable products the docs say:
Make sure the purchase wasn't already consumed by checking the
...
1
vote
0
answers
553
views
Implement Android Billing Introductory Offer in Kotlin
I am looking to add an introductory offer or free-trial to my google play subscription.
I am using the new version of the billing library (5.0), however I cannot see the details of the subscription ...
1
vote
1
answer
838
views
Expiration notification received a second time after an android subscription purchase
I have a strange behavior with SubscriptionNotification, when we purchase a subscription and cancel it we get in total 4 notifications :
the first one for the purchase (received at 08:11:40)
{
&...
2
votes
1
answer
338
views
ConsumeResponseListener always reports SERVICE_DISCONNECTED for pending purchases
I'm using google IAP billing library 5, and after more or less directly copying the code from developer.android.com I'm getting a SERVICE_DISCONNECTED error whenever I try to consume a INAPP purchase ...
9
votes
6
answers
4k
views
billingClient!!.queryProductDetailsAsync does not return any products from Google play console
I am implementing a subscription with Google billing in my android application.
I have followed Google Play Billing official documentation.
I have created subscriptions in Play Console and added ...
1
vote
1
answer
580
views
Removing subscriptions from my Google store possible - really?
It looks like Google have provided a way to delete in-app subscriptions, but have they?
The Developer API docs have a page about deleting inApp products, and while this could be the old "can ...
1
vote
1
answer
860
views
Android Billing - How to get subscription duration from Purchase object
I am using version 5 of billing library. I have a subscription with product id "MySub" that has two offers. One monthly and one yearly with offer ids "sum.monthly" and "sub....
0
votes
2
answers
1k
views
create google cloud pub/sub for android subscriptions notifications
I am totally lost in this point I have finished my subscriptions payment from android application and I need to listen for any subscription on my own backend server to give subscriber the service, but ...
1
vote
0
answers
57
views
Test billing products
In the past we could test the in app purchase with static skus like following:
android.test.purchased
android.test.canceled
android.test.refunded
android.test.item_unavailable
This did work without ...
1
vote
1
answer
482
views
What productId should I use purchases.subscriptions.acknowledge method?
I wanted to acknowledge a subscription purchase made by user.
According to Google docs I have to send a subscriptionID, but according to purchases.subscriptionsv2.get it may return more than one line ...