Skip to main content

[Web Billing] Offer product fetching support for mobile


Forum|alt.badge.img

Are there any plans to support fetching Web Billing products on mobile platforms?

Context

We are using RevenueCat Web Billing to manage our web app subscriptions.
On the companion mobile app, we would like to show users some details regarding their subscription.
As such we are configuring our Purchases instance with the WebBilling API Key.

This works well for the most part - with entitlements & subscription expiration data coming in as expected on the CustomerInfo response.

Issue

Other information (such as price) can only be obtained via the product instance itself.
And any attempt to fetch the WebBilling product returns a “Not Found” error with it being obvious that the SDK is only searching among the PlayStoreAppStore products.

Furthermore, attempting to manually specify the store via the PurchasesConfiguration.Builder is also met with an exception. And sure enough, looking into the implementation reveals that the provided store is cast to the one native to the platform (e.g. on Android, the .toAndroidStore() function is called).

UseCases

Here are some use cases that the inability to fetch products is blocking:

  1. Using Paywalls to prepare users before forwarding them to the web app. Ideally we would leverage the flexibility of paywalls to create an upgrade screen with a single URL button linking to our domain. Unfortunately, paywalls need a package attached thus making it impossible for us to use them (because internally that product is fetched leading to an error)
  2. Fetching the price of the active subscription
  3. Obtaining the name of the subscription
  4. Getting any other information that is accessible via the product

Request

As you can hopefully see, this inability to interact with WebBilling products from inside the mobile app is proving to be very restrictive.

We’ve already been forced to resort to some in-house solutions to get around some of the use cases listed above. However, the Paywall one still stands and having to manage 2 sources of truth for our subscription details is less than ideal.

 

As such, it would be a huge help if it would be possible to:

Make the mobile SDK’s able to accept Store configurations other than the native platform ones - namely WebBilling

 

P.S. Any other viable workaround solutions are also appreciated as would be lifting the constraint that every Paywall needs to have a package.

This post has been closed for comments

3 replies

jeffrey_bunn
RevenueCat Staff
Forum|alt.badge.img+6
  • RevenueCat Staff
  • 300 replies
  • May 20, 2025

Hi ​@vlad-mircan thanks for sharing such detailed feedback. Regarding this point:

Using Paywalls to prepare users before forwarding them to the web app. Ideally we would leverage the flexibility of paywalls to create an upgrade screen with a single URL button linking to our domain. Unfortunately, paywalls need a package attached thus making it impossible for us to use them (because internally that product is fetched leading to an error)

 

Can you provide more details about this flow? It sounds like the user is on an iOS or Android device and you want to show them a paywall that doesn’t include a corresponding iOS/Android product. Is this the case? One issue here is this is (currently) against both platform’s terms, even though the recent Apple ruling does allow a web purchase button alongside a regular in-app purchase button. If you’re on iOS, you can create a paywall with a package containing an iOS and web billing product and add two CTA buttons - one IAP and one web purchase button. Then configure your SDK based on the platform the user is on, and the user will be able to both purchase an IAP or click through to your web billing product. Now, this won’t fetch the underlying web billing product (which is a core part of your question), so you’ll have to input any details about the product directly in the paywall editor.

One possible workaround for the other issues would be to add offering metadata. You could add keys for your web billing product names and prices and show these in your mobile app without having to fetch the underlying products. Again, you’ll have to review if your flows comply with the platforms terms, but perhaps this workaround could help. In the meantime, I have forwarded your feedback to my engineering team. Please feel free to add additional details and I’ll be happy to help further.


jeffrey_bunn
RevenueCat Staff
Forum|alt.badge.img+6
  • RevenueCat Staff
  • 300 replies
  • May 20, 2025

Also, I just spoke to my engineering team and we’re actually working on adding web billing product fetching in the mobile SDKs! Here’s the work in progress PR.


Forum|alt.badge.img
  • Author
  • New Member
  • 1 reply
  • May 20, 2025

Hello, and really appreciate you getting back to me.

Regarding your first message

It wouldn’t be a paywall screen per-se, no price or any such information being displayed.
We would essentially be reusing the revenue cat interface that we’re already familiar with (we do have in-app purchases for other kinds of products) to show remote-configurable UI to the user.

Regarding the work in progress

Thank you very much for linking the PR, I’ll follow progress there and in the meantime we’ll make use of some workarounds.

Have a great day!


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings