Skip to main content

Hi,

I’m StoreKit testing and subbing to my monthly or annual products works. Refunds also work. Switching between monthly and annual also works but… cancelling does not. I never seem to see willRenew == false., I do sometimes see this in the logs: 

2021-12-19 18:29:19.582279+0000 Captionista Debug 85027:961458] 1Purchases] - ERROR: 😿‼️ The data object identifier couldn't be found on the receipt.

2021-12-19 18:29:19.582382+0000 Captionista Debugi85027:961458] 5Purchases] - WARN: ⚠️ /Users/marc/Library/Developer/Xcode/DerivedData/Captionista-dhlqkvltvxzowycfexhqwsaswlxg/SourcePackages/checkouts/purchases-ios/PurchasesCoreSwift/LocalReceiptParsing/ReceiptParser.swift-receiptHasTransactions(receiptData:): Could not parse receipt, conservatively returning true

Any ideas?

Basically I can’t verify that cancellation clears the entitlement.isActive as it stays true when I cancel — no matter what time scale I use e.g. monthly sub with 1 month = 30 seconds.

If I restart the app after waiting, the entitlement is gone - but I can’t verify `willRenew` functionality.

Hey @Marc Palmer 

With StoreKit testing, the receipt is cleared after restarting the device, which is why you’re seeing that the entitlement is gone after resetting. The log message that you see just indicates that local receipt parsing failed, this is just an informative message indicating the on device receipt couldn't be parsed, and doesn't necessarily indicate a larger issue- by returning true, it ensures that the receipt gets sent to our backend for processing.

 

Have you tried testing on a real device yet? 


Reply