[Sandbox - Xcode] Delegate Callback - IsActive returns True when Subscription Expired

Userlevel 1
Badge +2




    func isProGranted(customer: CustomerInfo) -> Bool {

if let entitlement = customer.entitlements["PRO"] {

return entitlement.isActive
return false


In the Delegate Callback 


extension SubscriptionViewModel:PurchasesDelegate {

func purchases(_ purchases: Purchases, receivedUpdated customerInfo: CustomerInfo) {
self.isPRO = manager.isProGranted(customer: customerInfo)


The problem is, it returns true when we Cancel Subscription or when it is automatically expired


Best answer by DC-26df0a 2 June 2023, 20:57

View original

3 replies

Userlevel 1
Badge +2



We waited a whole day as we thought maybe it’s Cache related.

Still, when launching the app, or checking to “Manage Susbcriptions” we see “Click to resubscribe” with our options.


The real question is, does the delegate is called with updated infos ONLY when we do a related action (restore, purchase ,etc.) or your server notify the delegate whenever the app is running?

Userlevel 1
Badge +2


iOS 16.5


We see only the initial purchase on RC dashboard, there's no cancellation event as we did in the app.

something is broken here..

Userlevel 1
Badge +2


Thanks   for the default settings in a Sandbox Xcode Environment!

we missed it.