AppStore sandbox not renewing subscription

I am currently testing my in app subscription via sandbox. I am able to make the purchase and verify it, but it will not auto renew. The sandbox account is flagged as being subscribed, so it can't be purchased again, but I don't actually get the auto renewal.

I did notice that randomly on app boot up, I'll get a bunch of the backlogged auto renewals come in, but they are never actually sent to me when the 3 minute expiration is finished.

This is on macOS, so I am not able to actually look at and manage the sandbox subscriptions. It seems like that's only a thing for iOS. Is this just a behavior with the sandbox environment or will this behavior also happen with legitimate App Store?

The code I use is below:

@MainActor
func updateCustomerProductStatus() async {
    var purchasedSubscriptions: [Product] = []
    for await result in Transaction.currentEntitlements {
        do {
            let transaction = try checkVerified(result)
            switch transaction.productType {
            case .autoRenewable:
                if let subscription = subscriptions.first(where: { $0.id == transaction.productID}) {
                    purchasedSubscriptions.append(subscription)
                }
            default:
                break
            }
        } catch {
            print("catching \(error)")
        }
    }

init() {
    subscriptions = []
    updateListenerTask = listenForTransactions()
    Task {
        await requestProducts()
        await updateCustomerProductStatus()
    }
}

deinit {
    updateListenerTask?.cancel()
}

func listenForTransactions() -> Task<Void, Error> {
    return Task.detached {
        // Iterate through any transactions that don't come from a direct call to `purchase()`.
        for await result in Transaction.updates {
            do {
                let transaction = try self.checkVerified(result)
                
                // Deliver products to the user.
                await self.updateCustomerProductStatus()
                
                // Always finish a transaction.
                await transaction.finish()
            } catch {
                // StoreKit has a transaction that fails verification. Don't deliver content to the user.
                print("Transaction failed verification.")
            }
        }
    }
}
AppStore sandbox not renewing subscription
 
 
Q