I am trying to submit an update to my Flutter app to Apple, but it has been rejected a few times now.
Initially the error was during restorePurchases()
, the error was a PlatformException:PlatformException(0, Unknown error., {readable_error_code: UNKNOWN, code: 0, userCancelled: false, underlyingErrorMessage: The receipt is missing., readableErrorCode: UNKNOWN, message: Unknown error.}, null)
Following the RevenueCat docs about missing receipts, I asked the reviewer to re-login with their Apple account, but the issue persisted. Then a similar issue occurred when the reviewer saw that they could still purchase the product, and so pressed purchase:
PlatformException(9, The receipt is missing., {underlyingErrorMessage: , readableErrorCode: MISSING_RECEIPT_FILE, readable_error_code: MISSING_RECEIPT_FILE, code: 9, message: The receipt is missing.}, null)
According to this Apple tech note (outdated?): “The absence of the appStoreReceipt is typical when the application is installed using Xcode or TestFlight”. It also says “the application can make the
SKReceiptRefreshRequest
call” to “have iOS present the iTunes User Authentication dialog” which will “attempt to refresh the appStoreReceipt”. I assume this is what restorePurchases()
is doing, so I’m confused why this error is still happening for my app in review.I am using the RevenueCat Flutter package 4.3.0, with Flutter 3.3.5. (Sorry there’s a typo in the title but I can’t edit the title).