I am using Android SDK, revenuecat version 7.0, and this is my code (kotlin):
Purchases.sharedInstance.getCustomerInfoWith(
fetchPolicy = CacheFetchPolicy.FETCH_CURRENT,
onError = { error: PurchasesError ->
log("END with ERROR = $error")
},
onSuccess = { customerInfo: CustomerInfo ->
val purchased = customerInfo.entitlements["premium"]?.isActive
log("END with SUCCESS: isActive = $purchased")
})
Consider following scenario:
- Before purchasing a product = getCustomerInfo properly returns no active entitlements (as I never purchased the product)
- After I purchase the product = getCustomerInfo properly returns existing active entitlement (as I just purchased product)
- After I refund my purchase in Play Console (including checked checkbox "Remove entitlement") = getCustomerInfo incorrectly still returns I do have active entitlements. Even after hours, even after I specifically used fetch policy forcing fresh server value...
Such behavior is in my opinion not correct…
Is it a bug or am I doing something wrong? Why is revenuecat getCustomerInfo function not returning the latest fresh result? Or is that intended behavior, that entitlements still remain active, even after I manually perform refunding? If so, can this be turned off?