StoreKit

RSS for tag

Support in-app purchases and interactions with the App Store using StoreKit.

Posts under StoreKit tag

200 Posts

Post

Replies

Boosts

Views

Activity

Auto renewable subsction, auto renews to different product id
I need help understanding how the In-App purchase subscription works within the same subscription group and how the Order plays a role at the time of auto-renewal. In my case, I have 5 in-app products in the same group as given below with their Order, Order Product ---------------------- 1 Gold Annual 2 Gold Monthly 3 Silver Annual Old, 3 Silver Annual New 4 Silver Monthly One user purchased Silver annual New, at the time of expiry, after a year, it auto-renewed to Silver annual Old. My understanding is that if a user has purchased Silver annual New, at the time of renewal, it should renew with the same product, not with different product id. Is this behaviour expected? Is there any official document which can explain this behaviour? Note: There was no Order given before, recently we have changed the Order to manage Upgrade and Downgrade for In-App subscriptions.
0
0
74
Nov ’25
StoreKit 2 not loading subscription products
Hi everyone, I’m seeing a strange behavior with StoreKit 2 and I’d like to know if anyone else experienced this. My subscription group “ROTA Premium” (Monthly + Annual) is currently Waiting for Review in App Store Connect. What works In Xcode’s StoreKit sandbox, everything loads correctly: Products appear Trial starts Purchases work What doesn’t work In TestFlight and App Review, StoreKit 2 returns zero products, so my paywall shows: “No subscription options found.” There are: No geo restrictions No backend No VPN/IP filtering Paid Apps Agreement is accepted App Review said the device was online, but couldn’t give technical help. My question Has anyone seen StoreKit 2 fail to load subscription products when the subscription group is still in Waiting for Review? Do subscription groups need to be reviewed together with the app version for StoreKit 2 to return them in TestFlight/App Review? Any advice would be appreciated! Thanks.
0
1
90
Nov ’25
SubscriptionStoreView - Restoring Subscriptions
I'm using code similar to the following to conditionally show the SubscriptionStoreView and the .storeButton(.visible, for: .restorePurchases) modifier is used to allow the user to restore an existing subscription. How can I listen for events that would allow me to close this view once the subscription is restored? The .onInAppPurchaseCompletion closure does not handle this and it also appears that listening for results in Transaction.currentEntitlements also doesn't handle the fact that a subscription is restored. Any guidance on how to determine if the subscription has been restored would be greatly appreciated. Finally, how can this be tested effectively in both TestFlight and in Xcode with the simulator. if subscriptionManager.subscription == .none { SubscriptionStoreView(groupID: "1234567") { SubscriptionMarketingView(transparency: false) .containerBackground(for: .subscriptionStoreFullHeight) { GradientBackground() } } .backgroundStyle(.clear) .storeButton(.visible, for: .restorePurchases) .storeButton(.visible, for: .redeemCode) .onInAppPurchaseCompletion { product, result in Task { await subscriptionManager.entitlements() } } }
0
1
130
Nov ’25
Request Review alert is unresponsive in iOS 26.1
Try this simple code: import SwiftUI import StoreKit struct ReviewView: View { @Environment(\.requestReview) var requestReview var body: some View { Button("Leave a review") { requestReview() } } } When the Review Alert shows, the "Not Now" button is disabled for some reason!? It was always tappable in all iOS versions that I remember. And there is no way to opt out, unless the user taps on the stars first. Is it a bug or a feature? Thanks for looking into it!
4
1
1.3k
Dec ’25
In-App Purchases rejected + Reviewer cannot complete purchase although sandbox works fine (StoreKit2)
Hi everyone, I’m experiencing an issue with In-App Purchases during App Review. What works My consumable IAP products load correctly using StoreKit2. TestFlight (sandbox) purchases work perfectly. Localizations are filled in and valid. Paid Apps Agreement, banking, and tax forms are active. IAP products are properly created in App Store Connect and marked as “Developer Action Needed” only because they wait for approval with the new binary. What fails During review I received: “We found that your in-app purchase products exhibited one or more bugs which create a poor user experience. Specifically, we were not able to complete a purchase.” They didn’t provide any more technical details. Additional context The StoreKit configuration file is not included in the app archive. Product identifiers perfectly match those in App Store Connect. StoreKit2 purchase() works as expected on TestFlight. The app does not use server-side receipt validation - purchases are handled purely through StoreKit2 APIs, as recommended. My questions What could cause a situation where TestFlight purchases work but App Review cannot complete a purchase? Does Apple expect server-side receipt validation even for simple one-time consumables? Could there be a delay or sync issue causing IAP products to not be available to the reviewer yet? Is there anything I should check on the App Store Connect side beyond what I already verified? Any help or hints would be greatly appreciated - I’m stuck because everything works in sandbox but fails only for reviewers. Thanks!
1
0
257
Dec ’25
Unable to test first In-App Purchase for non-consumable - receive empty array.
Hello, I am really struggling to test my first In-App Purchase for a non-consumable product. I have setup the following: App Store Connect: Paid agreement, Bank account, tax forms and compliance all submitted and active Privacy policy added Pricing and availability - all setup In-App Purchases screen - status is "Ready to Submit" Code refers to the correct BundleID: com.mycompany.product - it is exactly the same in App Store Connect and within my code. XCode: I have setup a StoreKit configuration file and it has correctly sync'd with App Store Connect and pulls through the correct data. The code compiles with no errors or warnings. I trying to initially test in the simulator before I - use a Sandbox account in a spare device. Outcome from all of the above, when I run the app, all I receive is an empty array!! What could I be missing or overlooking? Any help you could offer would be gratefully received. Thanks.
2
0
133
Nov ’25
promotion code with user information
What we're trying to implement is not a new subscription promotion It has implemented a function that allows certain members to experience the membership of the application by providing promotional codes. With the offer code provided by Apple, we are currently implemented Log in => Membership provided by the member entering the promotion code => I'm inquiring because I think the next logic will be difficult. There is no way we can identify the member when entering from the app store with Offer code I would like to inquire about developing it so that it does not violate Apple's review regulations as much as possible.
0
0
70
Nov ’25
verifyReceipt endpoint failing on occassion
I am finding that the verifyReceipt endpoint used to verify a receipt is failing on occassion starting around October 27, 2015. I realize this API is deprecated. I am using cURL to call verifyReceipt. The specific errors are 52 - Empty reply from server and 56 - Connection closed abruptly. This indicates an issue with Apple's server as I understand it. Is anyone else experiencing this as well?
0
0
75
Nov ’25
StoreKit v2: autoRenewStatus returns 0 right after purchase on iOS 26.1
Hi everyone, I’m implementing subscriptions using StoreKit v2, and I’ve noticed a behavior change starting with iOS 26.1. I’d like to ask if anyone else has experienced the same issue. ■ Issue Immediately after purchasing a new subscription, the value of auto_renew_status (or autoRenewStatus) returned in the receipt is 0 (auto-renew OFF). This issue occurs on iOS 26.1. On iOS 26.0 and earlier, the same parameter returned 1 (auto-renew ON) right after purchase. Sometimes, after executing a “restore” operation, the value changes to 1 later. Since we’ve been using this parameter to determine whether a user’s subscription is active or not, the current behavior is causing some difficulties on our end. ■ Questions Has anyone else observed this issue (where autoRenewStatus is 0 immediately after purchase on iOS 26.1 or later)? How are you handling or working around this behavior in your implementation? If autoRenewStatus is unreliable, we’re considering determining the subscription state based on receipt fields instead. Would this approach be reasonable? "status" is 1 (indicates active subscription) "expire_time" is in the future "deleted_at" is null If anyone has encountered the same behavior or knows of any Apple-recommended implementation approach, I’d really appreciate your insights. Thank you! 🙏
1
1
189
Feb ’26
Flutter app no subscription found.
I already created subscription in appstore connect with proper metadata still when I am using product id to purchase the subscription using flutter package in_app_purchase: ^3.2.3 it say's no subscription found with product id x. I observed everything minutely all seems fine than why ?? I try to test with storekit that works btw. I also have sandbox account and same signed in my iPhone 12 mini but much please look into this.. Flutter code : Future<void> _loadSubscriptions() async { Set<String> kSubscriptionIds = {'monthly_plan_test_iop_81'}; ProductDetailsResponse response = await _inAppPurchase.queryProductDetails(kSubscriptionIds); if (response.notFoundIDs.isNotEmpty) { kLog("Subscription IDs not found: ${response.notFoundIDs}"); } kLog("God it works seriously"); kLog(response.notFoundIDs); kLog(response.productDetails); kLog(response.error); subscriptions.value = response.productDetails; }
1
0
136
Nov ’25
Subscriptions not showing in react-native-iap / StoreKit although setup and waiting for review
Hello everyone, I’m currently experiencing an issue where no subscriptions appear in my app when fetching products from StoreKit via react-native-iap. I would like to confirm whether this is related to my App Store Connect setup or a possible StoreKit limitation. Context My app uses react-native-iap and successfully initializes the StoreKit connection with: await RNIap.initConnection(); const items = await RNIap.fetchProducts({ skus: productIds, type: 'subs', }); productIds contains valid identifiers matching those configured in App Store Connect. The API /plan dynamically returns the correct product IDs. The fetch call completes successfully, but returns an empty array ([]). What I have already done Confirmed all subscription products exist and are correctly linked to the same app bundle ID. All subscriptions are currently in “Waiting for Review” status in App Store Connect. Verified that StoreKit connection is initialized correctly (RNIap.initConnection() returns successfully). Tested on a real device (iPhone 14, iOS 18). Contacted App Review by phone — they confirmed my implementation was correct and told me that pending subscriptions should still appear for review. Followed Apple’s official guides: TN3186: Troubleshooting in-app purchase availability in the sandbox TN3188: Troubleshooting in-app purchase availability in the App Store Unfortunately, neither solved the issue. Code excerpt Here’s the relevant portion of my React Native code: await RNIap.initConnection(); let items = await RNIap.fetchProducts({ skus: productIds, type: 'subs', }); setProducts(items); console.log('🛍️ Products from Store:', items); Everything runs fine, no errors — but items is always empty. Question Could this be due to the fact that my subscriptions are still Waiting for Review (not yet “Ready for Sale”)? If yes, is there any way for the App Review or developer testing environment to see them before they are approved? Or could I be missing a configuration step (for example, enabling the App-Specific Shared Secret or App Store server notifications)? Any advice from someone who has faced this issue or from Apple staff would be greatly appreciated 🙏 Environment React Native 0.76 react-native-iap 13.7.0 iOS 18.1 (real device) Xcode 16 Products: Auto-renewable subscriptions Status: “Waiting for Review” App currently in App Review Thank you, Sébastien
4
0
463
Nov ’25
Delete TestFlight in-app purchase record by using a real ID.
Hey guys, somehow I used my real ID(not sandbox test ID) to purchase a non-consumable item in the TestFlight package, no actual payment was made, but this payment record cannot be erased. Even though I know the transaction ID, I cannot initiate a refund like using refundRequestSheet(). Does anyone know how to deal with this, or there is no way to solve it?
0
0
161
Nov ’25
StoreKit returning 0 products (IAPError: storekit_no_response)
Hi everyone, I’m facing an issue where StoreKit is returning 0 products from the App Store, even though my auto-renewable subscriptions are approved in App Store Connect. When calling queryProductDetails using Flutter’s in_app_purchase package (which uses StoreKit under the hood), StoreKit reports success but returns an empty list. The logs show the following error: IAPError(code: storekit_no_response, source: app_store, message: "StoreKit: Failed to get response from platform.") InAppPurchase.isAvailable() returns true, but no product details are received. Already verified: • Subscriptions are approved in App Store Connect • Product identifiers in the app match those in App Store Connect exactly • In-App Purchase capability is enabled in Xcode • Paid Applications Agreement, banking, and tax details are active and complete • Using the latest version of the Flutter in_app_purchase package StoreKit should normally return the list of available products in the production environment, but it consistently returns an empty array along with the “storekit_no_response” error. Has anyone else encountered this issue or found any potential causes for StoreKit failing to return products in the production environment? Any insights would be greatly appreciated. Thank you.
2
1
333
Nov ’25
App Store StoreKit web hooks doesn't work o=in the Sandbox env.
Hey! We're implementing In-App Purchase Subscriptions and we were able to receive "App Store Server Notifications" on our "Sandbox Server URL". But the last event we received 22 hours ago. We are able to verify transactions and finish them, but receive no webhooks. We changed nothing on our server or its configurations but the notifications stoped to come. We consulted the API (https://api.storekit-sandbox.itunes.apple.com/inApps/v1/notifications/history) and it says the same as we see - the last event was 22hrs ago. I checked all the advices from here as well (https://developer.apple.com/forums/thread/805806?answerId=864483022#864483022). Is there any Status page for the Store Kit Sandbox services? Was there any outage? Sincerely, Konstantin
2
2
198
Nov ’25
Authentication Error with App Store Server API (NOT_AUTHORIZED) while Using JWT for Subscription Validation
Hello Apple Developer Community, We are currently facing an authentication issue when calling the App Store Server API for subscription validation. Despite following Apple’s documentation and verifying all credentials, we consistently receive a NOT_AUTHORIZED error response. GET https://api.storekit-sandbox.itunes.apple.com/inApps/v1/transactions/appTransactions/{transactionId} Environment: Sandbox and Production (both tested, same result) Our Setup: Key ID: {Your Key ID} Issuer ID: {Your Issuer ID} Bundle ID: {Your Bundle ID} JWT Header: { "alg": "ES256", "kid": "" } JWT Payload: { "iss": "", "iat": , "exp": <timestamp + 5 minutes>, "aud": "appstoreconnect-v1", "bid": "" } Authorization Header: Authorization: Bearer Troubleshooting Steps Already Taken: Verified that .p8 key, Key ID, Issuer ID, and Bundle ID are all correctly configured and match the App Store Connect details. Confirmed that the system clock is accurate (UTC). Used appropriate endpoint (sandbox or production) based on environment. Ensured that the JWT is short-lived (under 5 minutes). Added the “Bearer” prefix correctly in the header. Tested JWT generations using Python. Issue: All requests return: { "errorCode": "NOT_AUTHORIZED" } Questions: Are there any additional claims or headers required for the subscriptions endpoint? Are there specific permissions or roles needed for the API key in App Store Connect? Is there a way to get more detailed logs or diagnostics for this NOT_AUTHORIZED response? Does the App Store Server API require a different aud or bid structure for certain endpoints? We already contacted Apple Developer Support, but they suggested posting here for engineering-level guidance. Any insight or examples of a working JWT + request for this endpoint would be greatly appreciated.
0
0
252
Nov ’25
App Reject: Subscription works on storeKit but not on sandBox environment.
have successfully created subscription with all metaData: Localization(inside subscription and also for subscription group), logo, description and also screenshots but subscription shows missing metadata instead of ready to submit causing flutter app package inAppPurchase to not found the subscription id or product it. Flutter code level : Future<void> _loadSubscriptions() async { Set<String> kSubscriptionIds = {'monthly_689'}; ProductDetailsResponse response = await _inAppPurchase.queryProductDetails(kSubscriptionIds); if (response.notFoundIDs.isNotEmpty) { kLog("Subscription IDs not found: ${response.notFoundIDs}"); } print("God it works seriously"); print(response.notFoundIDs); print(response.productDetails); print(response.error); subscriptions.value = response.productDetails; } Says: Subscription IDs not found is been logged I try with storekit it works!!! but as apple asking me we test on sandbox environment and it's not working I also created sandbox account login with same credentials and test it not works. Point is package I used in flutter not finding the above product_id I successfully added subscription group, localization, image and all still why my subscription not found ?
0
0
69
Nov ’25
IAP Product Info Error & Sandbox Webhook/Test API Failures
Hello, I'm suddenly encountering errors with In-App Purchases (IAP) and my sandbox webhooks, which were working correctly just a few days ago. Specifically: Product Information Error: I'm receiving the following error when trying to fetch product information: { "type": "product_info", "result": "error", "error": "An unknown error occurred" } This API call was functioning normally until today. Sandbox Webhook Failure: I have configured a sandbox webhook, but my server is not receiving any notifications from the App Store. Test API 401: When I attempt to call the test API (https://api.storekit-sandbox.itunes.apple.com/inApps/v1/notifications/test), I consistently receive a 401 (Unauthorized) error. Could you please provide some guidance on how to troubleshoot these issues? Thank you.
1
0
111
Nov ’25
Can SKOverlay be used to prompt updates for the same app?
According to Apple's documentation, SKOverlay is designed to recommend other applications to users. I'm seeking clarification on whether it also supports displaying update prompts for the host application itself. Use case: My app (for example, HelloDeveloper) is live at version 2.0, but some users are still on version 1.0. I want to display a soft update prompt that allows users to remain in the app. Question: Is it possible to use SKOverlay with my app's App Store ID to present an update option without requiring users to leave the app?
1
0
185
Oct ’25
Storekit 2 error
StoreKit error:Storekit has failed to fetch this product. We implemented in-app purchases using StoreKit2. During testing, we were able to make purchases smoothly in various ways without any issues. However, the reviewers encountered this error, and it happened 100% of the time.
Replies
1
Boosts
0
Views
262
Activity
Nov ’25
Auto renewable subsction, auto renews to different product id
I need help understanding how the In-App purchase subscription works within the same subscription group and how the Order plays a role at the time of auto-renewal. In my case, I have 5 in-app products in the same group as given below with their Order, Order Product ---------------------- 1 Gold Annual 2 Gold Monthly 3 Silver Annual Old, 3 Silver Annual New 4 Silver Monthly One user purchased Silver annual New, at the time of expiry, after a year, it auto-renewed to Silver annual Old. My understanding is that if a user has purchased Silver annual New, at the time of renewal, it should renew with the same product, not with different product id. Is this behaviour expected? Is there any official document which can explain this behaviour? Note: There was no Order given before, recently we have changed the Order to manage Upgrade and Downgrade for In-App subscriptions.
Replies
0
Boosts
0
Views
74
Activity
Nov ’25
StoreKit 2 not loading subscription products
Hi everyone, I’m seeing a strange behavior with StoreKit 2 and I’d like to know if anyone else experienced this. My subscription group “ROTA Premium” (Monthly + Annual) is currently Waiting for Review in App Store Connect. What works In Xcode’s StoreKit sandbox, everything loads correctly: Products appear Trial starts Purchases work What doesn’t work In TestFlight and App Review, StoreKit 2 returns zero products, so my paywall shows: “No subscription options found.” There are: No geo restrictions No backend No VPN/IP filtering Paid Apps Agreement is accepted App Review said the device was online, but couldn’t give technical help. My question Has anyone seen StoreKit 2 fail to load subscription products when the subscription group is still in Waiting for Review? Do subscription groups need to be reviewed together with the app version for StoreKit 2 to return them in TestFlight/App Review? Any advice would be appreciated! Thanks.
Replies
0
Boosts
1
Views
90
Activity
Nov ’25
SubscriptionStoreView - Restoring Subscriptions
I'm using code similar to the following to conditionally show the SubscriptionStoreView and the .storeButton(.visible, for: .restorePurchases) modifier is used to allow the user to restore an existing subscription. How can I listen for events that would allow me to close this view once the subscription is restored? The .onInAppPurchaseCompletion closure does not handle this and it also appears that listening for results in Transaction.currentEntitlements also doesn't handle the fact that a subscription is restored. Any guidance on how to determine if the subscription has been restored would be greatly appreciated. Finally, how can this be tested effectively in both TestFlight and in Xcode with the simulator. if subscriptionManager.subscription == .none { SubscriptionStoreView(groupID: "1234567") { SubscriptionMarketingView(transparency: false) .containerBackground(for: .subscriptionStoreFullHeight) { GradientBackground() } } .backgroundStyle(.clear) .storeButton(.visible, for: .restorePurchases) .storeButton(.visible, for: .redeemCode) .onInAppPurchaseCompletion { product, result in Task { await subscriptionManager.entitlements() } } }
Replies
0
Boosts
1
Views
130
Activity
Nov ’25
Request Review alert is unresponsive in iOS 26.1
Try this simple code: import SwiftUI import StoreKit struct ReviewView: View { @Environment(\.requestReview) var requestReview var body: some View { Button("Leave a review") { requestReview() } } } When the Review Alert shows, the "Not Now" button is disabled for some reason!? It was always tappable in all iOS versions that I remember. And there is no way to opt out, unless the user taps on the stars first. Is it a bug or a feature? Thanks for looking into it!
Replies
4
Boosts
1
Views
1.3k
Activity
Dec ’25
In-App Purchases rejected + Reviewer cannot complete purchase although sandbox works fine (StoreKit2)
Hi everyone, I’m experiencing an issue with In-App Purchases during App Review. What works My consumable IAP products load correctly using StoreKit2. TestFlight (sandbox) purchases work perfectly. Localizations are filled in and valid. Paid Apps Agreement, banking, and tax forms are active. IAP products are properly created in App Store Connect and marked as “Developer Action Needed” only because they wait for approval with the new binary. What fails During review I received: “We found that your in-app purchase products exhibited one or more bugs which create a poor user experience. Specifically, we were not able to complete a purchase.” They didn’t provide any more technical details. Additional context The StoreKit configuration file is not included in the app archive. Product identifiers perfectly match those in App Store Connect. StoreKit2 purchase() works as expected on TestFlight. The app does not use server-side receipt validation - purchases are handled purely through StoreKit2 APIs, as recommended. My questions What could cause a situation where TestFlight purchases work but App Review cannot complete a purchase? Does Apple expect server-side receipt validation even for simple one-time consumables? Could there be a delay or sync issue causing IAP products to not be available to the reviewer yet? Is there anything I should check on the App Store Connect side beyond what I already verified? Any help or hints would be greatly appreciated - I’m stuck because everything works in sandbox but fails only for reviewers. Thanks!
Replies
1
Boosts
0
Views
257
Activity
Dec ’25
Unable to test first In-App Purchase for non-consumable - receive empty array.
Hello, I am really struggling to test my first In-App Purchase for a non-consumable product. I have setup the following: App Store Connect: Paid agreement, Bank account, tax forms and compliance all submitted and active Privacy policy added Pricing and availability - all setup In-App Purchases screen - status is "Ready to Submit" Code refers to the correct BundleID: com.mycompany.product - it is exactly the same in App Store Connect and within my code. XCode: I have setup a StoreKit configuration file and it has correctly sync'd with App Store Connect and pulls through the correct data. The code compiles with no errors or warnings. I trying to initially test in the simulator before I - use a Sandbox account in a spare device. Outcome from all of the above, when I run the app, all I receive is an empty array!! What could I be missing or overlooking? Any help you could offer would be gratefully received. Thanks.
Replies
2
Boosts
0
Views
133
Activity
Nov ’25
promotion code with user information
What we're trying to implement is not a new subscription promotion It has implemented a function that allows certain members to experience the membership of the application by providing promotional codes. With the offer code provided by Apple, we are currently implemented Log in => Membership provided by the member entering the promotion code => I'm inquiring because I think the next logic will be difficult. There is no way we can identify the member when entering from the app store with Offer code I would like to inquire about developing it so that it does not violate Apple's review regulations as much as possible.
Replies
0
Boosts
0
Views
70
Activity
Nov ’25
verifyReceipt endpoint failing on occassion
I am finding that the verifyReceipt endpoint used to verify a receipt is failing on occassion starting around October 27, 2015. I realize this API is deprecated. I am using cURL to call verifyReceipt. The specific errors are 52 - Empty reply from server and 56 - Connection closed abruptly. This indicates an issue with Apple's server as I understand it. Is anyone else experiencing this as well?
Replies
0
Boosts
0
Views
75
Activity
Nov ’25
StoreKit v2: autoRenewStatus returns 0 right after purchase on iOS 26.1
Hi everyone, I’m implementing subscriptions using StoreKit v2, and I’ve noticed a behavior change starting with iOS 26.1. I’d like to ask if anyone else has experienced the same issue. ■ Issue Immediately after purchasing a new subscription, the value of auto_renew_status (or autoRenewStatus) returned in the receipt is 0 (auto-renew OFF). This issue occurs on iOS 26.1. On iOS 26.0 and earlier, the same parameter returned 1 (auto-renew ON) right after purchase. Sometimes, after executing a “restore” operation, the value changes to 1 later. Since we’ve been using this parameter to determine whether a user’s subscription is active or not, the current behavior is causing some difficulties on our end. ■ Questions Has anyone else observed this issue (where autoRenewStatus is 0 immediately after purchase on iOS 26.1 or later)? How are you handling or working around this behavior in your implementation? If autoRenewStatus is unreliable, we’re considering determining the subscription state based on receipt fields instead. Would this approach be reasonable? "status" is 1 (indicates active subscription) "expire_time" is in the future "deleted_at" is null If anyone has encountered the same behavior or knows of any Apple-recommended implementation approach, I’d really appreciate your insights. Thank you! 🙏
Replies
1
Boosts
1
Views
189
Activity
Feb ’26
Flutter app no subscription found.
I already created subscription in appstore connect with proper metadata still when I am using product id to purchase the subscription using flutter package in_app_purchase: ^3.2.3 it say's no subscription found with product id x. I observed everything minutely all seems fine than why ?? I try to test with storekit that works btw. I also have sandbox account and same signed in my iPhone 12 mini but much please look into this.. Flutter code : Future<void> _loadSubscriptions() async { Set<String> kSubscriptionIds = {'monthly_plan_test_iop_81'}; ProductDetailsResponse response = await _inAppPurchase.queryProductDetails(kSubscriptionIds); if (response.notFoundIDs.isNotEmpty) { kLog("Subscription IDs not found: ${response.notFoundIDs}"); } kLog("God it works seriously"); kLog(response.notFoundIDs); kLog(response.productDetails); kLog(response.error); subscriptions.value = response.productDetails; }
Replies
1
Boosts
0
Views
136
Activity
Nov ’25
Subscriptions not showing in react-native-iap / StoreKit although setup and waiting for review
Hello everyone, I’m currently experiencing an issue where no subscriptions appear in my app when fetching products from StoreKit via react-native-iap. I would like to confirm whether this is related to my App Store Connect setup or a possible StoreKit limitation. Context My app uses react-native-iap and successfully initializes the StoreKit connection with: await RNIap.initConnection(); const items = await RNIap.fetchProducts({ skus: productIds, type: 'subs', }); productIds contains valid identifiers matching those configured in App Store Connect. The API /plan dynamically returns the correct product IDs. The fetch call completes successfully, but returns an empty array ([]). What I have already done Confirmed all subscription products exist and are correctly linked to the same app bundle ID. All subscriptions are currently in “Waiting for Review” status in App Store Connect. Verified that StoreKit connection is initialized correctly (RNIap.initConnection() returns successfully). Tested on a real device (iPhone 14, iOS 18). Contacted App Review by phone — they confirmed my implementation was correct and told me that pending subscriptions should still appear for review. Followed Apple’s official guides: TN3186: Troubleshooting in-app purchase availability in the sandbox TN3188: Troubleshooting in-app purchase availability in the App Store Unfortunately, neither solved the issue. Code excerpt Here’s the relevant portion of my React Native code: await RNIap.initConnection(); let items = await RNIap.fetchProducts({ skus: productIds, type: 'subs', }); setProducts(items); console.log('🛍️ Products from Store:', items); Everything runs fine, no errors — but items is always empty. Question Could this be due to the fact that my subscriptions are still Waiting for Review (not yet “Ready for Sale”)? If yes, is there any way for the App Review or developer testing environment to see them before they are approved? Or could I be missing a configuration step (for example, enabling the App-Specific Shared Secret or App Store server notifications)? Any advice from someone who has faced this issue or from Apple staff would be greatly appreciated 🙏 Environment React Native 0.76 react-native-iap 13.7.0 iOS 18.1 (real device) Xcode 16 Products: Auto-renewable subscriptions Status: “Waiting for Review” App currently in App Review Thank you, Sébastien
Replies
4
Boosts
0
Views
463
Activity
Nov ’25
Delete TestFlight in-app purchase record by using a real ID.
Hey guys, somehow I used my real ID(not sandbox test ID) to purchase a non-consumable item in the TestFlight package, no actual payment was made, but this payment record cannot be erased. Even though I know the transaction ID, I cannot initiate a refund like using refundRequestSheet(). Does anyone know how to deal with this, or there is no way to solve it?
Replies
0
Boosts
0
Views
161
Activity
Nov ’25
StoreKit returning 0 products (IAPError: storekit_no_response)
Hi everyone, I’m facing an issue where StoreKit is returning 0 products from the App Store, even though my auto-renewable subscriptions are approved in App Store Connect. When calling queryProductDetails using Flutter’s in_app_purchase package (which uses StoreKit under the hood), StoreKit reports success but returns an empty list. The logs show the following error: IAPError(code: storekit_no_response, source: app_store, message: "StoreKit: Failed to get response from platform.") InAppPurchase.isAvailable() returns true, but no product details are received. Already verified: • Subscriptions are approved in App Store Connect • Product identifiers in the app match those in App Store Connect exactly • In-App Purchase capability is enabled in Xcode • Paid Applications Agreement, banking, and tax details are active and complete • Using the latest version of the Flutter in_app_purchase package StoreKit should normally return the list of available products in the production environment, but it consistently returns an empty array along with the “storekit_no_response” error. Has anyone else encountered this issue or found any potential causes for StoreKit failing to return products in the production environment? Any insights would be greatly appreciated. Thank you.
Replies
2
Boosts
1
Views
333
Activity
Nov ’25
App Store StoreKit web hooks doesn't work o=in the Sandbox env.
Hey! We're implementing In-App Purchase Subscriptions and we were able to receive "App Store Server Notifications" on our "Sandbox Server URL". But the last event we received 22 hours ago. We are able to verify transactions and finish them, but receive no webhooks. We changed nothing on our server or its configurations but the notifications stoped to come. We consulted the API (https://api.storekit-sandbox.itunes.apple.com/inApps/v1/notifications/history) and it says the same as we see - the last event was 22hrs ago. I checked all the advices from here as well (https://developer.apple.com/forums/thread/805806?answerId=864483022#864483022). Is there any Status page for the Store Kit Sandbox services? Was there any outage? Sincerely, Konstantin
Replies
2
Boosts
2
Views
198
Activity
Nov ’25
Authentication Error with App Store Server API (NOT_AUTHORIZED) while Using JWT for Subscription Validation
Hello Apple Developer Community, We are currently facing an authentication issue when calling the App Store Server API for subscription validation. Despite following Apple’s documentation and verifying all credentials, we consistently receive a NOT_AUTHORIZED error response. GET https://api.storekit-sandbox.itunes.apple.com/inApps/v1/transactions/appTransactions/{transactionId} Environment: Sandbox and Production (both tested, same result) Our Setup: Key ID: {Your Key ID} Issuer ID: {Your Issuer ID} Bundle ID: {Your Bundle ID} JWT Header: { "alg": "ES256", "kid": "" } JWT Payload: { "iss": "", "iat": , "exp": <timestamp + 5 minutes>, "aud": "appstoreconnect-v1", "bid": "" } Authorization Header: Authorization: Bearer Troubleshooting Steps Already Taken: Verified that .p8 key, Key ID, Issuer ID, and Bundle ID are all correctly configured and match the App Store Connect details. Confirmed that the system clock is accurate (UTC). Used appropriate endpoint (sandbox or production) based on environment. Ensured that the JWT is short-lived (under 5 minutes). Added the “Bearer” prefix correctly in the header. Tested JWT generations using Python. Issue: All requests return: { "errorCode": "NOT_AUTHORIZED" } Questions: Are there any additional claims or headers required for the subscriptions endpoint? Are there specific permissions or roles needed for the API key in App Store Connect? Is there a way to get more detailed logs or diagnostics for this NOT_AUTHORIZED response? Does the App Store Server API require a different aud or bid structure for certain endpoints? We already contacted Apple Developer Support, but they suggested posting here for engineering-level guidance. Any insight or examples of a working JWT + request for this endpoint would be greatly appreciated.
Replies
0
Boosts
0
Views
252
Activity
Nov ’25
App Reject: Subscription works on storeKit but not on sandBox environment.
have successfully created subscription with all metaData: Localization(inside subscription and also for subscription group), logo, description and also screenshots but subscription shows missing metadata instead of ready to submit causing flutter app package inAppPurchase to not found the subscription id or product it. Flutter code level : Future<void> _loadSubscriptions() async { Set<String> kSubscriptionIds = {'monthly_689'}; ProductDetailsResponse response = await _inAppPurchase.queryProductDetails(kSubscriptionIds); if (response.notFoundIDs.isNotEmpty) { kLog("Subscription IDs not found: ${response.notFoundIDs}"); } print("God it works seriously"); print(response.notFoundIDs); print(response.productDetails); print(response.error); subscriptions.value = response.productDetails; } Says: Subscription IDs not found is been logged I try with storekit it works!!! but as apple asking me we test on sandbox environment and it's not working I also created sandbox account login with same credentials and test it not works. Point is package I used in flutter not finding the above product_id I successfully added subscription group, localization, image and all still why my subscription not found ?
Replies
0
Boosts
0
Views
69
Activity
Nov ’25
IAP Product Info Error & Sandbox Webhook/Test API Failures
Hello, I'm suddenly encountering errors with In-App Purchases (IAP) and my sandbox webhooks, which were working correctly just a few days ago. Specifically: Product Information Error: I'm receiving the following error when trying to fetch product information: { "type": "product_info", "result": "error", "error": "An unknown error occurred" } This API call was functioning normally until today. Sandbox Webhook Failure: I have configured a sandbox webhook, but my server is not receiving any notifications from the App Store. Test API 401: When I attempt to call the test API (https://api.storekit-sandbox.itunes.apple.com/inApps/v1/notifications/test), I consistently receive a 401 (Unauthorized) error. Could you please provide some guidance on how to troubleshoot these issues? Thank you.
Replies
1
Boosts
0
Views
111
Activity
Nov ’25
Can SKOverlay be used to prompt updates for the same app?
According to Apple's documentation, SKOverlay is designed to recommend other applications to users. I'm seeking clarification on whether it also supports displaying update prompts for the host application itself. Use case: My app (for example, HelloDeveloper) is live at version 2.0, but some users are still on version 1.0. I want to display a soft update prompt that allows users to remain in the app. Question: Is it possible to use SKOverlay with my app's App Store ID to present an update option without requiring users to leave the app?
Replies
1
Boosts
0
Views
185
Activity
Oct ’25
Sandbox offer codes not working in sandbox environment
I've been testing the offer code feature for my non consumable in app purchase using a sandbox account, with sandbox offer codes and in the sandbox environment. However, the codes don't appear to work despite everything being in the sandbox. Any idea what I'm missing?
Replies
2
Boosts
0
Views
142
Activity
Oct ’25