mastodon.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
The original server operated by the Mastodon gGmbH non-profit

Administered by:

Server stats:

354K
active users

Casey Liss

StoreKit2 people: I have a customer who has a subscription that is expired:

developer.apple.com/documentat

…but the expiration isn't for another couple weeks.

How, uh, is that possible? I'm guessing I'm missing something here?

Apple Developer Documentationexpired | Apple Developer DocumentationThe subscription expired.

@caseyliss Was it revoked? Maybe that happens if they asked for a refund. I could be way off. Haven’t played with storekit in a very long time.

@strongcoffee No, in Settings.app it shows as currnet.

@caseyliss The status array on Product.SubscriptionInfo can contain multiple elements if a subscription supports family sharing. Different family members can subscribe/cancel and they all get recorded.

Do this:

let checkStatus = statuses.first { $0.state == .subscribed || $0.state == .inGracePeriod }

@chockenberry @caseyliss that would require a new release of the app. 😳 😭
Been there. Done that. Sorry.

@caseyliss you mean that the state is expired, but not the expiration date?

@caseyliss that's very strange. I'm only checking the state in my apps.

@Mecid There's a chance this is me doing something wrong but it's hard to debug remotely in prod 🥴

@caseyliss a few things to check, if the user have family sharing for this subscription? Might be two subscriptions with the same id but different states.

@Mecid Yeah, that's the road I'm currently walking down. Adding a shitload more logging to prep for more remote "debugging" in prod. ;)

@Ampsonic I have ragrats

@charliechapman

@charliemchapman @caseyliss @Ampsonic RevenueCat truly is a superpower in these predicaments 😽

@caseyliss The 2 hardest problems in computer science are cache invalidation....and dates/times.