I am integrating RevenueCat right into a Flutter iOS app. Choices all the time fail to load no matter whether or not I check on simulator or an actual gadget. StoreKit receives a response however returns no merchandise.
Atmosphere:
-
purchases_flutter: ^10.2.2(RC SDK 5.76.0) -
Flutter 3.x, iOS goal
-
Product ID:
my_product(auto-renewable month-to-month subscription) -
App Retailer Join standing: READY_TO_SUBMIT
-
RC dashboard: default providing configured,
my_productmapped tomy_productentitlement
Error:
No current merchandise cached, beginning retailer merchandise request for: ["my_product"]
Retailer merchandise request acquired response
Retailer merchandise request completed
Error fetching choices - The operation could not be accomplished.
(RevenueCat.OfferingsManager.Error error 1.)
There's an issue together with your configuration. Not one of the merchandise registered
within the RevenueCat dashboard may very well be fetched from App Retailer Join
(or the StoreKit Configuration file if one is getting used).
RC well being report warning:
my_product (Professional Month): This product's standing (READY_TO_SUBMIT) requires you
to take motion in App Retailer Join earlier than utilizing it in manufacturing purchases.
Initialization code (most important.dart):
await PurchaseService.occasion.init(
userId: FirebaseAuth.occasion.currentUser?.uid,
);
Future init({String? userId}) async {
await Purchases.setLogLevel(kDebugMode ? LogLevel.debug : LogLevel.error);
closing config = PurchasesConfiguration(AppConfig.revenueCatIosApiKey);
if (userId != null) config.appUserID = userId;
await Purchases.configure(config);
}
Fetch code:
Future fetchCurrentOffering() async {
attempt {
closing choices = await Purchases.getOfferings();
return choices.present;
} on PlatformException catch (e) {
debugPrint('[PurchaseService] fetchCurrentOffering error: ${e.message}');
return null;
}
}
What I’ve tried:
-
Simulator (iOS 18) — Added a
.storekitconfig file withsl_proregistered, added the file reference toundertaking.pbxproj, setStoreKitConfigurationFileReferencewithin the Run scheme. StoreKit nonetheless returns an empty merchandise response. -
Simulator (iOS 26 beta) — Similar outcome.
-
Actual gadget (iOS 26 beta) — Log confirms
Not utilizing a simulator. Similar empty response from StoreKit.
The RC server name succeeds (HTTP 200), accurately returns ["my-product"] because the product to fetch, then StoreKit returns empty.
Query:
-
Does a
READY_TO_SUBMITproduct work within the Apple sandbox atmosphere on an actual gadget, or does it want to succeed in a minimum ofReady for Overviewstanding earlier than StoreKit can discover it? -
For the simulator
.storekitconfig method in Flutter — doesflutter runcorrectly apply the Xcode scheme’s StoreKit configuration, or does it should be configured in a different way?
