Skip to main content
Answer

willRenew Not Updating

  • August 23, 2021
  • 3 replies
  • 439 views

Forum|alt.badge.img+2

I’m working on an app with an auto-renewing subscription. 

When using Sandbox testing, I can subscribe, and it updates just fine. However, if I cancel the subscription, when I go to get the updated `purchaserInfo`, the `willRenew` property is `true`. Even if I reset the cache, it still won’t be updated.

How can I have it properly update?

Best answer by jazmine

Hey @Michael Berk ,

Are you testing for IOS or Android?

If you are using IOS are you using StoreKit?

There is a  limitation of StoreKit testing receipts- Apple doesn't actually include the same renewal data that we need in these Xcode receipts that they do for normal sandbox/production purchases, so it's not possible for us to calculate the 'willRenew' field correctly with these types of receipts. Sorry about that!

You should be able to use `isActive` field, it may take a few minutes for our cache to refresh in the app. The `isActive` field is calculated when the PurchaserInfo object is created, so it will take a cache refresh (~5 minutes) to get this value updated. This is more noticeable in sandbox when testing shorter durations, etc, but you are safe to call the `purchaserInfo` method as often as you need.

 

This post has been closed for comments

3 replies

jazmine
Forum|alt.badge.img+7
  • Dedicated Contributor
  • Answer
  • August 23, 2021

Hey @Michael Berk ,

Are you testing for IOS or Android?

If you are using IOS are you using StoreKit?

There is a  limitation of StoreKit testing receipts- Apple doesn't actually include the same renewal data that we need in these Xcode receipts that they do for normal sandbox/production purchases, so it's not possible for us to calculate the 'willRenew' field correctly with these types of receipts. Sorry about that!

You should be able to use `isActive` field, it may take a few minutes for our cache to refresh in the app. The `isActive` field is calculated when the PurchaserInfo object is created, so it will take a cache refresh (~5 minutes) to get this value updated. This is more noticeable in sandbox when testing shorter durations, etc, but you are safe to call the `purchaserInfo` method as often as you need.

 


Forum|alt.badge.img
  • New Member
  • November 24, 2023

I have got same issue in android. why is that ?😶


Forum|alt.badge.img+3

I have the same issue on iOS on production… looks like `entitlement.willRenew` is not working at all.. 
I bought a subscription on production, then cancel it after 5 minutes, and now, after 6 hours, I can’t see in RevenueCat panel the subscription as cancelled. Also on the app it shows it to have willRenew with value true...