purchases-android icon indicating copy to clipboard operation
purchases-android copied to clipboard

Purchase callback never fires when changing products with DEFERRED proration

Open esamelson opened this issue 4 weeks ago • 6 comments

Describe the bug A clear and concise description of what the bug is. The more detail you can provide the faster our team will be able to triage and resolve the issue. Do not remove any of the steps from the template below. If a step is not applicable to your issue, please leave that step empty.

  1. Environment
    1. Platform: Android
    2. SDK version: 35
    3. OS version: multiple
    4. Android Studio version: multiple
    5. How widespread is the issue. Percentage of devices affected. -- all tested devices
  2. Debug logs that reproduce the issue
    • no relevant logs produced (either in-app or from adb logcat)
  3. Steps to reproduce, with a description of expected vs. actual behavior
    • have two subscription products (separate products, not base plans of the same product) in Google Play
    • subscribe to one of them
    • subscribe to the other product using DEFERRED proration mode
    • I am doing this via react-native-purchases with Purchases.purchasePackage(package, null, { oldProductIdentifier: <id>, prorationMode: PRORATION_MODE.DEFERRED })
    • the promise never resolves (i.e. onSuccess never fires), even though if I look at my subscriptions in Google Play the purchase did go through as expected
    • the promise should resolve when the purchase completes, as it does when other proration modes are used
  4. Other information (e.g. stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, etc.)
    • I'm opening this on the purchases-android repo because it looks like react-native-purchases and purchases-hybrid-common are pretty thin wrappers, and AFAICT there's no reason within them that this flow should work with some proration modes but not others.
    • That said I'm happy to reopen on a different repo if that would help.
    • This issue describes exactly the same problem but seems to have had no traction.
    • This RevenueCat blog post describes a possible cause of the exact issue I'm seeing.

Additional context Add any other context about the problem here.

esamelson avatar Nov 25 '25 22:11 esamelson

👀 We've just linked this issue to our internal tracker and notified the team. Thank you for reporting, we're checking this out!

RCGitBot avatar Nov 25 '25 22:11 RCGitBot

Thanks for reporting @esamelson and sorry for the inconvenience! I'll check it out and ping you back

facumenzella avatar Nov 26 '25 00:11 facumenzella

Hi @facumenzella , thanks for your quick response. Are there any updates on this?

esamelson avatar Dec 04 '25 19:12 esamelson

Hi @esamelson I am into it. I need to test a little bit more but expect it to be out in the next release 🙏

facumenzella avatar Dec 05 '25 09:12 facumenzella

Thanks @facumenzella , that's great to hear!

esamelson avatar Dec 05 '25 17:12 esamelson

@esamelson Just opened a PR :) . It should be included in the next release, already pinged the team so they can take a look

facumenzella avatar Dec 15 '25 17:12 facumenzella

@esamelson I've just merged the PR. Please ping once you're able to test it out :)

facumenzella avatar Dec 16 '25 09:12 facumenzella