My app has been rejected, as the IAP description contains the word "free." I am unable to edit the wording because the IAP is still "in review" state even though the submission has been rejected. How can I edit? There' no option to remove just the IAP.
In-App Purchase
RSS for tagOffer extra content, digital goods, and features directly within your app using in-app purchases.
Posts under In-App Purchase tag
200 Posts
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
hello this is my first time putting an app on subscriptions in Storekit, I believe I did everything correctly, from my paywall to everything in Xcode and apple connect, including agreements and sandbox, my sandbox in app purchase worked on all my subscriptions but when I my app was live in store it said purchase could not be made, basically apple wasn't returning what it needs to. my subsections are all approved and say active including my subscription group. bundle ID matches everywhere and so does product id, does anyone know what could possibly be the issue? and how to fix, I would really appreciate any insight.
Topic:
App Store Distribution & Marketing
SubTopic:
App Store Connect
Tags:
Subscriptions
StoreKit Test
In-App Purchase
Hello,
We are facing an issue with In-App Purchases (subscriptions) in two iOS apps built with React Native + react-native-iap.
Issue
Some users receive the error:
E_CONNECTION_CLOSED
during the purchase flow.
However:
The payment is successfully deducted via the App Store.
The subscription appears in the user's Apple ID subscription list.
But on our side:
The app does not receive the StoreKit transaction callback
No receipt or transaction ID is delivered
Our backend cannot validate the purchase.
Restore Purchases
When affected users try Restore Purchases, StoreKit returns:
No purchases found
even though the subscription is visible in their Apple ID.
Most affected users are from India, and many payments are made via UPI through App Store billing.
Has anyone experienced a case where:
the user is charged
the subscription exists in Apple ID
but StoreKit never returns the transaction or receipt?
Any suggestions on how to recover these transactions would be greatly appreciated.
Thanks!
Topic:
App & System Services
SubTopic:
StoreKit
Tags:
Subscriptions
StoreKit
In-App Purchase
App Store Receipts
I have the issues in this particular guideline: Issue Description
We noticed that the app requires users to register with personal information to purchase In-App Purchase products that are not account based.
Apps cannot require user registration prior to allowing access to app content and features that are not associated specifically to the user. User registration that requires the sharing of personal information must be optional or tied to account-specific functionality.
Next Steps
To resolve this issue, please revise the app to not require users to register before purchasing In-App Purchase products that are not account based. You may explain to the user that registering will enable them to access the purchased content from any of their supported devices and provide them a way to register at any time, if they wish to later extend access to additional devices.
Please note that although guideline 5.1.1 requires an app to make subscription content available to all the supported devices owned by a single user, it is not appropriate to force user registration to meet this requirement; such user registration must be optional.
For this issue, I have revised my app accordingly many times, but it still get rejected even though I believe that I have revised my app accordingly.
My app name is Wallpaperlogoart and my app ID is 6744837826.
I would like Apple to look into this issue again in my app submission.
I am looking forward to hearing from you soon.
Hello,
I am investigating a case where two different transaction IDs appear to refer to the same purchase, and I would like clarification on whether this behavior is expected.
Additional context
StoreKit version: StoreKit 1 (SKPaymentTransaction)
Environment: Production
Product type: Auto-renewable subscription
Transaction sources
The values are obtained from the following APIs:
transaction_id from SKPaymentTransaction
https://developer.apple.com/documentation/storekit/skpaymentqueue
receipt_data from the App Store receipt
https://developer.apple.com/documentation/foundation/bundle/appstorereceipturl
Observed behavior
After an In-App Purchase completes, the app receives:
a transaction_id from SKPaymentTransaction
the corresponding receipt_data for the purchase
When inspecting the receipt, the transaction_id inside latest_receipt_info differs from the transaction_id received directly from the purchase transaction.
For clarity:
A = transaction_id received from the purchase flow (SKPaymentTransaction)
A' = transaction_id found in receipt_data.latest_receipt_info
The two values are different, but they differ only by 1.
Additional observation
The original_transaction_id for A and A' is identical, which suggests that both transaction IDs belong to the same subscription purchase chain.
Pattern observation on the ID difference
We have observed that the difference between A and A' is consistently exactly 1 (i.e., A' = A + 1) across multiple transactions, not just a single case.
This appears to be a reproducible pattern rather than a coincidence.
This observation raises an additional question (Question 6 below).
API verification
When calling:
GET /inApps/v1/transactions/{transactionId}
Both A and A' return what appears to be the same purchase record.
The response data is effectively identical except for the transactionId field.
However, when calling:
GET /inApps/v2/history/{transactionId}
A does not appear in the transaction history
only A' appears in the history response
Questions
If A does not appear in transaction history, where does this transaction ID originate from?
Why does Get Transaction Info (/inApps/v1/transactions/{transactionId}) return a valid response for A even though it is not present in the transaction history?
Why do A and A' both resolve to what appears to be the same purchase?
In this situation, which transaction ID should be treated as the canonical transaction ID for server-side validation?
Is this difference related to how StoreKit 1 (SKPaymentTransaction) and the App Store Server API represent transactions?
Is the consistent off-by-one difference between the transaction_id from SKPaymentTransaction and the one recorded in latest_receipt_info an intentional behavior of StoreKit 1's internal transaction ID assignment?
Specifically, we are wondering whether StoreKit 1 applies some form of internal offset when delivering the transaction ID to the client, while the App Store server records a different (adjacent) ID in the receipt. If so, is this documented anywhere?
Note
We are currently in the process of migrating to StoreKit 2, but this behavior was observed while investigating our existing StoreKit 1 implementation.
Any clarification would help us better understand the correct transaction model during the migration.
Topic:
App & System Services
SubTopic:
StoreKit
Tags:
Subscriptions
StoreKit
In-App Purchase
App Store Receipts
Hi everyone,
I’m using StoreKit 2 with .storeButton(.visible, for: .policies) inside my SubscriptionStoreView. The buttons appear correctly, but when tapped, a sheet opens that says “Terms of Service Unavailable” or “Something went wrong. Try again.”
I’ve already added the required URLs (Privacy Policy and Terms of Use) in App Store Connect under App Information, but they still don’t show in the sheet.
Does anyone know how this is supposed to work?
• Are the URLs pulled directly from App Store Connect?
• Do they only appear correctly in production?
• Or do we need to manually set them in code for testing/TestFlight?
Any insight would be greatly appreciated — just want to make sure everything is in place before submitting for review. Thanks!
Topic:
App Store Distribution & Marketing
SubTopic:
App Review
Tags:
StoreKit Test
App Review
StoreKit
In-App Purchase
I am currently running iOS 26.4 Beta and have encountered a critical issue with the in-app purchase system.
Due to a system malfunction in this beta version, I was charged multiple times for the same purchase. I have already submitted a formal refund request through the official channels; however, the request was rejected/not processed.
Has anyone else experienced similar billing issues on this specific beta build? Any advice on how to escalate this, given that the standard refund process has failed?
Topic:
App Store Distribution & Marketing
SubTopic:
App Store Connect
Tags:
App Store
In-App Purchase
In iOS 26.4 beta 4, the receipt returned by StoreKit payments via [[NSBundle mainBundle] appStoreReceiptURL] corresponds to the previous transaction; the content only becomes correct after restarting the app.
Hello,
We are facing an issue with In-App Purchases (subscriptions) in two iOS apps built with React Native + react-native-iap.
Issue
Some users receive the error:
E_CONNECTION_CLOSED
during the purchase flow.
However:
The payment is successfully deducted via the App Store.
The subscription appears in the user's Apple ID subscription list.
But on our side:
The app does not receive the StoreKit transaction callback
No receipt or transaction ID is delivered
Our backend cannot validate the purchase.
Restore Purchases
When affected users try Restore Purchases, StoreKit returns:
No purchases found
even though the subscription is visible in their Apple ID.
Most affected users are from India, and many payments are made via UPI through App Store billing.
Has anyone experienced a case where:
*the user is charged *the subscription exists in Apple ID *but StoreKit never returns the transaction or receipt?
Any suggestions on how to recover these transactions would be greatly appreciated.
Thanks!
Topic:
App & System Services
SubTopic:
StoreKit
Tags:
Subscriptions
StoreKit
In-App Purchase
App Store Receipts
Topic:
App & System Services
SubTopic:
StoreKit
Tags:
Subscriptions
StoreKit
In-App Purchase
App Store Receipts
Hi,
My app VITTRA has been approved and is live on the App Store.
also i have already pushed even another update …However, I submitted two in-app purchases along with the app:
1. VITTRA Pro (Non-Consumable) — Status: “In Review”
2. AI Scan Pack (Consumable) — Status: “Waiting for Review”
The app binary was approved and distributed, but the IAPs are still under review. My app’s core functionality depends on these purchases being available to users.
A few questions:
1. Is it normal for IAPs to remain in review after the app itself has been approved and distributed?
2. Is there an expected timeline for IAP reviews when submitted alongside a new app?
3. Is there anything I can do to expedite the process, or should I just wait?
Any guidance would be appreciated.
Its a real frustrating situation and there is not a single response from the support.
Thanks!
Topic:
App Store Distribution & Marketing
SubTopic:
App Review
Tags:
Subscriptions
App Store Connect
In-App Purchase
Hello,
My app was rejected on iPad (iPad Air 11-inch M3, iPadOS 26.2.1) with two related issues:
Guideline 2.1 – Performance – App Completeness
“The app exhibited one or more bugs that would negatively impact users.
Bug description: the premium subscription cannot be loaded properly.”
Guideline 3.1.2 – Business – Payments – Subscriptions
“The submission did not include all the required information for apps offering auto-renewable subscriptions.”
I am using StoreKit 2 with SubscriptionStoreView to present the auto-renewable subscription.
During development:
Subscriptions load correctly in the simulator (sandbox).
On real devices, I test without a local StoreKit configuration file to fetch products from App Store Connect.
The subscription UI (title, duration, price) displays correctly when products are returned.
At the time of review, the Paid Apps Agreement was not active.
I suspect this may have caused the subscription products to fail loading on the review device.
Since then:
Paid Apps Agreement is now Active. SubscriptionStoreView should automatically show required metadata.
Because the subscription failed to load on iPad during review, the required information (title, price, duration) was not visible, which likely triggered the 3.1.2 rejection.
Additionally, in TestFlight I sometimes see inconsistent behavior where the app appears but cannot be installed (“App Not Available”).
Also, my app was rejected, but the subscription is still waiting for review.
I would really appreciate guidance on the following:
Am I potentially missing any required configuration that could prevent products from loading in production?
Is there any propagation delay after activating the Paid Apps Agreement that could affect product availability?
If I am overlooking something in configuration or testing, please let me know what I should specifically verify before resubmitting.
Thank you very much for your help.
Topic:
App & System Services
SubTopic:
StoreKit
Tags:
Subscriptions
StoreKit
In-App Purchase
TestFlight
We are implementing promo/offer codes for our iOS app’s subscription in-app purchases and have several technical questions regarding validation, receipt data, and integration. Could you please provide guidance on the following points?
Testing/Validating Custom Codes Without Production Release: How can we validate custom promo/offer codes in a non-production environment? Current documentation indicates promo codes only work in production, requiring app submission and future release date setup for testing.
Receipt Data for Redeemed Codes: The receipt currently includes only offer_code_ref_name, not the exact redeemed code (e.g., “ABC123”) entered by the user. Is there a way to retrieve the specific offer code used via receipts, App Store Server API, or other endpoints?
Server-Side Validation Best Practices: What are the recommended best practices for server-side validation of offer codes, including using App Store Server API for transaction verification?
Passing appAccountToken for Coupons: How can we pass an appAccountToken when users redeem coupon/offer codes (e.g., via presentOfferCodeRedeemSheet or redemption flows)? StoreKit purchase options support it for regular purchases but not redemption sheets.
Callbacks on Coupon Redemption: Is there a client-side callback or notification (e.g., via updatedTransactions or StoreKit observers) when a user successfully redeems a coupon code in the app? Server notifications are received, but app-side feedback appears unreliable.
Topic:
App & System Services
SubTopic:
StoreKit
Tags:
Subscriptions
StoreKit
In-App Purchase
App Store Receipts
**To offer apps or other in-app purchases, you must update your legal entity information prior to signing the Paid Apps Agreement. Edit Legal entity **
Hello everyone, i have for days and weeks tried to change this so i can update my address, but i cannot change it by my own. And all i see is message above
Does anyone know exactly how long it takes to be updated by apple support?
what other alternatives there to sign up for business agreements so i can not loose much time ?
Thanks
Topic:
Developer Tools & Services
SubTopic:
Apple Developer Program
Tags:
Subscriptions
In-App Purchase
I managed to publish the first version of my app at the beginning of February.
I was lucky, I guess.
On 11th of February, I added a new version which contains in app purchases.
The app went "in review" a few hours later and since then ... nothing.
After a week or so I sent a first email support. They claim responding in 2 working days: no response.
Then I sent another one. 2 days later another one. Tried expedite review several times: nothing.
Last week I finally got an answer to my first email: they apologize, blah blah.
But still nothing.
This is very very annoying. I longtime hesitated to purchase the Apple developer program and finally did it. Now I regret doing so.
They seem they don't care about.
We buy expensive Apple gear. We develop applications we cannot even install on our devices without Apple developer subscription! And they treat us like this.
What is going on, Apple? Are you still there?
I am unable to sign in to a Sandbox Apple Account, where this issue occurs only via Simulator.
Under Settings > Developer, I tap "Sign In" under Sandbox Apple Account. I enter my account credentials, and after bringing me back to the Developer page, the Sign In button briefly appears as disabled, before being re-enabled, without signing in to the account. (The account credentials are also recognized as correct, as I will receive an alert popup if incorrect.) See screenshots below:
After signing in, Sign In button appears disabled...
... then is re-enabled without actually signing in to the account.
I have now tried setting up multiple sandbox accounts via App Store Connect with various permutations (no confirmation of Apple Account email, confirming Apple Account email, logging in to iCloud and accepting terms of service), running different device simulators, running simulators on different Mac computers... none of which yield a different result.
By contrast, I can sign in to the Sandbox Apple Account without issue on a physical device. The problem occurs only via Simulator.
In Getting started with In-App Purchase using StoreKit views and the corresponding sample project, Store simultaneously enumerates Transaction.unfinished and Transaction.updates.
Since, "if your app has unfinished transactions, the updates listener receives them once, immediately after the app launches," it appears that Transaction.unfinished would also receive the same unfinished transactions causing handle(updatedTransaction:) to be called for twice for each transaction, causing consumables to be double-counted.
Is this a bug in the sample? Is there more information on concurrent execution of unfinished and updates?
Hello,
I’m having an issue with my first subscription for my app WealthSlices, where the subscription appears correctly when testing locally from Xcode, but App Store reviewers appear unable to retrieve the product.
Symptoms
When I run the app from Xcode on my iPhone using the Sandbox environment:
The subscription loads successfully.
The purchase sheet appears.
I can complete a sandbox purchase.
However, when App Review tests the app, the paywall fails to load products and the app shows the following message:
"No Products found. Purchases are temporarily unavailable on this device."
Environment
App: WealthSlices
Platform: iOS
Testing locally via Xcode → Sandbox Apple ID
Subscription type: Auto-renewable subscription
Product: WealthSlices Basic ($9.99/month)
StoreKit: StoreKit 2
Current build: 1.0.7 (Build 32)
What works locally
When running via Xcode:
StoreKit successfully fetches products.
The subscription sheet appears with the correct pricing.
Sandbox purchase flow completes normally.
What appears to happen during App Review
It appears that Product.products(for:) returns an empty list when the reviewers test the app.
Things I have already verified
The subscription is created in App Store Connect.
It is attached to the current app version under In-App Purchases and Subscriptions.
The subscription has pricing and localization configured.
The subscription is in Ready to Submit status.
The bundle ID and product ID match the code.
Paid Apps Agreement is active.
I uploaded a new build after creating the subscription.
Question
Is there something specific required for first-time subscription submissions that might cause the product not to appear during App Review but still work in local sandbox testing?
Is there a known delay or propagation requirement for subscriptions before they can be fetched by Product.products(for:) in TestFlight/App Review environments?
Any guidance would be greatly appreciated.
also there doesn't seem to be an option to select the subscription over at https://appstoreconnect.apple.com/apps/6754225986/distribution/ios/version/inflight but there is no option to add it
Thank you!
Topic:
App Store Distribution & Marketing
SubTopic:
App Review
Tags:
Subscriptions
StoreKit
In-App Purchase
I have created and verified a new sandbox account in Users and Access. Now I want to test my in-app purchases with this account on my iPad Air in my iOS game. I have already uploaded a build to TestFlight. Then I have downloaded and installed my game from TestFlight on my iPad Air.
How can I login on my iPad Air with my new sandbox account to test my in-app purchases in my game?
Hello everyone,
I’m facing an issue with In-App Purchases during App Review and would appreciate guidance from anyone who has encountered a similar situation.
Context:
New iOS/iPadOS app, first submission.
One Non-Consumable In-App Purchase.
IAP was created, fully configured, and submitted together with the app version.
IAP status in App Store Connect: In Review.
App includes Restore Purchase and uses standard StoreKit purchase flow.
Paid Apps Agreement is accepted.
Problem:
During Apple’s review, when the reviewer taps the purchase button, a generic error appears:
“Purchase failed. An error occurred, please try again.”
Apple rejected the app under Guideline 2.1 – Performance – App Completeness, stating that the IAP shows a bug.
What seems to be happening:
The IAP itself is still in review and therefore not fully active, which causes the purchase attempt to fail.
However, the app cannot be approved because the purchase fails, creating a circular dependency:
App cannot be approved because IAP purchase fails.
IAP cannot work because the app is not approved yet.
According to Apple documentation, IAPs are tested in the sandbox during review and should not require separate approval to function, so I’m unsure what additional step is required.
Questions:
Is there any special configuration needed to make first-time IAPs work during review?
Should Apple reviewers be able to complete sandbox purchases even if the IAP status is “In Review”?
Is there a recommended workaround or reviewer instruction to avoid this deadlock?
Any insights or real-world experience would be greatly appreciated.
Thanks in advance.