In-App Purchase

RSS for tag

Offer extra content, digital goods, and features directly within your app using in-app purchases.

Posts under In-App Purchase tag

200 Posts

Post

Replies

Boosts

Views

Activity

in app purchase pay successfully,but doesn't receive receipt from apple
I am just developing an app,I just config the In App Purchase module in App Store Connect.And I have deployed the related code in flutter, and the Xcode have done the configuration about this. The fetching products is successful, and buyNonconsumable/buyConsumble api could be called successfully ,but whatever install methods I have tried, could not receive the receipt after call the buyNonconsumable/buyConsumbl api.So could you help to solve this problem,I just have stucked for a few weeks , please help. Btw ,my friends have told me that if I want to integrated the In App Purchase function,I need to upload a version to apple store and make it pass the review process.Please help me to confirm these question ,very thankful.
0
0
198
Jun ’25
In-App Purchases Not Showing in App Store Connect (Can't Attach to Version)
Hi everyone, I'm encountering a persistent issue with App Store Connect and hoping someone has seen this before or can advise. I have an approved in-app purchase (product ID: inspo_credits_10), and everything is correctly configured: The IAP is Approved and Ready for Sale The capability is enabled in both the Apple Developer portal and Xcode My app uses StoreKit correctly (Product.products(for:)) I’ve uploaded multiple builds (latest: version 1.3.8, build 3) The problem: When preparing the version (1.3.8) in App Store Connect, the “In-App Purchases” section does not appear at all — so I can’t attach the IAP to the version or submit it for review. I've tried: Re-uploading builds Creating new versions (1.3.9, 1.4.0…) Re-enabling the IAP capability Confirming that StoreKit is properly integrated Waiting multiple days for propagation Even creating new IAPs Still, the IAP section doesn’t appear when editing the version. Apple support responded, but directed me to Developer Technical Support without offering a fix or escalation path. Has anyone experienced this before — an approved IAP that doesn't show up in App Store Connect’s version editor? Is there a way to force a refresh or escalate this internally? Would appreciate any advice or direction!
0
0
132
Jun ’25
About Guideline 2.1 - Performance in-app purchase functionality is not present
Over two months ago, one of my apps (My desktop web) was rejected during its first submission due to 2.1 - App Completeness. The reviewer said that the in-app purchase information was not visible, and that the purchase button showed “null(null)”. However, during both Xcode debugging and TestFlight testing, I was able to see all the in-app purchase information correctly. After multiple rounds of communication with the reviewer, the app was finally approved — although I never figured out why. It might be because I submitted the in-app purchase for review first, and then submitted the app itself. In any case, it was eventually approved. Now, I’m facing the exact same issue with my new app. The in-app purchase code is exactly the same (except for the Product IDs), but again, the reviewer cannot see the product information. The relevant line of code is very straightforward — I can successfully retrieve one product, but the reviewer sees zero: self.products = try await Product.products(for: [productId]) I’ve already contacted DTS, and they said: “You should make sure that StoreKit 2 effectively returns the display price and name of your product object and that these values still exist when you are about to display them.” Yes, I’ve verified that — I can see the in-app purchase information. But the reviewer cannot. I even scheduled a call and spoke with a reviewer based in San Jose, California. She confirmed that everything looks normal from the submission process side, and suggested I either check the app’s implementation again or continue working with DTS. One more thing I noticed: throughout the entire review process, the in-app purchase product always remains in the “Waiting for Review” state, no matter how the app's status changes. The reviewer said that’s expected behavior. At this point, I honestly don’t know what’s wrong anymore — I’m completely overwhelmed. Everything works perfectly in both Xcode and TestFlight, and I have no idea what else I can do to test or verify it. Xcode and TestFlight screenshot: Reviewer screenshot: Appstore connect:
13
0
553
Jul ’25
Acceptable Label for External Donation Link
Hi, I'd like to have a button in my app that links to a website where users can donate to the project. I've tried "Donate to the Project" and "Support the Developer," but both of them were rejected because of: Guideline 3.1.1 - Business - Payments - In-App Purchase: "We notice that your app allows users to contribute donations to the development of your app with a mechanism other than in-app purchase. Although these donations may be optional, they must use in-app purchase since they are associated with receiving digital content or services." Is there a specific label I could use that complies with "3.2.1 (vii) Apps may enable individual users to give a monetary gift to another individual without using in-app purchase, provided that (a) the gift is a completely optional choice by the giver, and (b) 100% of the funds go to the receiver of the gift. However, a gift that is connected to or associated at any point in time with receiving digital content or services must use in-app purchase." But is still understandable as a donations website? I thought that was implied with the two labels I submitted, but I guess not. Thanks, Henry
1
0
233
Jul ’25
TestFlight user cannot re-purchase expired auto-renewable subscription – only restored purchases returned
I’m testing an auto-renewable subscription on TestFlight. Now the user can't re-purchase the same product – Apple just restores the old (expired) one, and no payment sheet appears. How can I let the same TestFlight user re-subscribe to an expired product? Do I have to create a new productId for every test cycle?
3
3
165
Jul ’25
500 server error when trying to add IAP price change
I'm trying to create a price change for one of my in app purchases, but every time I try to save it the website keeps saying an error has occurred. If I check my browser's console I see the below error output: { "errors": [{ "status": "500", "code": "UNEXPECTED_ERROR", "title": "An unexpected error occurred.", "detail": "An unexpected error occurred on the server side. If this issue continues, contact us at https://developer.apple.com/contact/." }] } Please fix this ASAP.
2
0
154
Jul ’25
Can't fix "Provisioning profile doesn't include com.apple.InAppPurchase entitlement" even after resetting everything
Hi everyone, I’ve been struggling for days with a recurring issue in my iOS app build. The build fails with the following error: Provisioning profile "iOS Team Provisioning Profile: com.myapp.bundleid" doesn't include the com.apple.InAppPurchase entitlement. Here’s what I’ve already tried: Created a new Bundle ID with correct capabilities (In-App Purchase, Push Notifications, Sign in with Apple). Created a new provisioning profile manually from Apple Developer Console. Used EAS CLI (Expo) and Xcode to regenerate all certificates and provisioning profiles. Ensured that the In-App Purchase capability is enabled in the App ID (it's greyed out but enabled). Made sure all subscriptions and products in App Store Connect are “Ready to Submit”. Followed all steps from RevenueCat and Apple documentation. Cleaned entitlements in .entitlements file and tried both and variations. Tried building both locally and with EAS – same error every time. Sent multiple tickets to Apple Developer Support, but no helpful reply yet. Extra Notes: I'm using react-native-purchases and RevenueCat, already integrated and working before this started. The error began randomly; before that, I was able to build successfully with in-app purchases. Even creating a completely fresh app from scratch results in the same entitlement missing error. Has anyone faced this exact problem where the provisioning profile fails to include com.apple.InAppPurchase, even though everything is correctly set up? Any help or insights would be greatly appreciated. Thanks in advance!
3
0
420
Jul ’25
Subscriptions Missing from App After Approval – "Updates Pending Review" Blocked State
Hey everyone, I'm dealing with a really frustrating issue with auto-renewable subscriptions in my app and hoping someone can help or at least tell me what's going on. Here's what happened: When I first submitted my app I had already set up the monthly and yearly subscriptions in App Store Connect After a few rejections the app finally got approved, but when it went live I noticed the subscriptions were completely gone. Users could only see the lifetime purchase. I never removed anything or changed any major configurations, so I have no idea why they just disappeared I tried removing the app from sale and then also temporarily removed the subscriptions. After re-enabling them they now show as "Approved" when I look at them individually But in the Subscription Group it still says "Updates Pending Review" and I can't do anything - can't edit anything, can't resubmit I thought about submitting a new build hoping I could reselect the subscriptions, but they still don't show up as selectable in the in-app purchase section At this point I'm completely stuck. I've put a warning message in the app to let users know, but this is seriously hurting my business since subscriptions are basically my main revenue. Has anyone else run into this? Is there any official way to fix or reset a subscription group that's stuck like this? Thanks for any help!
1
0
224
Jul ’25
Payment Marked as "Paid" But Not Received After 3 Business Days
Dear Apple Support, I am writing to report a payment issue with my App Store Connect developer account. The latest payment is marked as "Paid" in the Payments and Financial Reports section, but as of today, more than 3 business days have passed and the funds have not yet arrived in my bank account. I have double-checked that my banking information is accurate and up to date. I would appreciate it if you could investigate this issue and provide further clarification on the current status of the payment. Thank you in advance for your support.
1
1
280
Dec ’25
Unable to retrieve data from In App Purchase
I want to add in-app purchasing to my app, but I can't figure out what part of my workflow is wrong. I created a product for my app in iTunes Connect (the product ID is com.mycompany.products.***) and it's in "Ready to submit" status. I created a sandbox test user for this app. I connected to iTunes on a real device using the sandbox AppleID. I went back to XCode and added in-app purchasing to my app. I turned on developer mode on the real device and logged in as the sandbox user. I built the app and ran it on a real device (not the simulator). I tried to get product information (com.mycompany.products.***) but nothing was returned. In-app purchasing is registered in App Store Connect and the status is "Ready to submit". The code only retrieves product information in a simple way, so I don't think there's a problem. inAppPurchase.getProducts(["com.mycompany.products.***"]).then(console.log).catch(console.error); But it only returns an empty array. What could be wrong? Any help would be much appreciated.
2
1
74
Jul ’25
Unauthorized for Advanced Commerce API Purchase
Hi! My product SKU has been approved for Advanced Commerce API. I successfully receive a purchase pop-up with the correct information. However, I am still having issues with completing the purchase. I always receive Unauthorize error when I confirm the purchase (subscription in my case; see the screenshot). I am using the node.js server library to sign the request. I made sure that the account is a valid account enabled for Sandbox. Logs unfortunately don't indicate any further detail. Thanks for your advice! We've been stuck on this for a while now and would appreciate your help. Marek
6
2
308
Jul ’25
交易无法结束 (Transactions Unable to Finish)
有一个用户反馈7月8日充值了3笔后一直无法发起新的购买,总是提示已经购买。我们查了是之前的交易无法结束,我们使用StoreKit2,已经调用await transaction.finish()成功结束交易了,但是每次发起新支付时,Transaction.unfinished还会返回之前已完成的交易信息。 是设备或AppleID的问题么?用户尝试了重启设备、重新登录AppleID都没用。有什么办法解决呢? 用户无法结束的苹果交易id为:200002703899379、200002703900716、200002703902023。 A user reported that after making 3 purchases on July 8th, they have been unable to initiate new purchases, always receiving a prompt that the item has already been purchased. Upon investigation, we found that the previous transactions couldn't be finalized. We use StoreKit2 and have successfully called await transaction.finish() to end the transactions. However, every time a new payment is initiated, Transaction.unfinished still returns information about the previously completed transactions. Could this be an issue with the device or Apple ID? The user has tried restarting the device and re-logging into their Apple ID, but these attempts were unsuccessful. Is there any way to resolve this? The Apple transaction IDs that the user is unable to finalize are: 200002703899379, 200002703900716, 200002703902023.
6
6
1.5k
Feb ’26
DID_FAIL_TO_RENEW Notification with a null gracePeriodExpiresDate
We are seeking clarification on the behavior of App Store Server Notifications V2. Summary In our production environment, we received a notification with notificationType: DID_FAIL_TO_RENEW and subtype: GRACE_PERIOD. However, the gracePeriodExpiresDate field in the payload was null. We understand this notification indicates that a user's subscription has entered a grace period. The null value for its expiration date is unexpected, and we are looking for an official explanation of this behavior and the correct way to handle it. The Scenario Here are the details of the notification we received: Notification Type: DID_FAIL_TO_RENEW Notification Subtype: GRACE_PERIOD Environment: Production Upon decoding the signedRenewalInfo JWS from the responseBodyV2, we found that the gracePeriodExpiresDate field inside the JWSRenewalInfoDecodedPayload was null. The notificationUUID for this event was in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Our Implementation and its Impact Our backend is designed to ensure service continuity during a grace period, as recommended in the documentation. Current Logic: Receive the DID_FAIL_TO_RENEW / GRACE_PERIOD notification. Extract the gracePeriodExpiresDate. Extend the user's subscription expiration date in our database to match this date. Because the gracePeriodExpiresDate was null in this case, our logic failed, creating a risk of service interruption for the user. Context and Investigation We have performed the following checks: App Store Connect Settings: We have confirmed that Billing Grace Period is enabled for the relevant subscription group. Sandbox Environment: We have been unable to reproduce this scenario in the Sandbox. User Context: We believe the user in this case was experiencing a failed payment when attempting to renew for the first time after a free trial period. Questions To ensure we handle this scenario correctly, we would appreciate clarification on the following points: Conditions for Null: Under what specific conditions does a DID_FAIL_TO_RENEW notification with a GRACE_PERIOD subtype contain a null gracePeriodExpiresDate? Expected Behavior: Is this null value an expected behavior for certain scenarios, such as the first failed renewal after a free trial? Best Practice: If this is an expected behavior, what is the correct way to handle it? How should our backend interpret a null gracePeriodExpiresDate to ensure service continuity for the user?
2
2
208
Jul ’25
In iOS 26 beta3 version, the finishTransaction method is unable to remove transactions from the SKPaymentQueue, causing transactions to remain in the queue even after being processed.
We have some users who have upgraded to iOS 26 beta3. Currently, we observe that when these users make in-app purchases, our code calls [[SKPaymentQueue defaultQueue] finishTransaction:transaction]; method, and we clearly receive the successful removal callback in the delegate method - (void)paymentQueue:(SKPaymentQueue *)queue removedTransactions:(NSArray<SKPaymentTransaction *> *)transactions. However, when users click on products with the same productId again, the method - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions still returns information about previously removed transactions, preventing users from making further in-app purchases.
4
0
336
Jul ’25
In iOS 26 beta3 version, the finishTransaction method is unable to remove transactions from the SKPaymentQueue, causing transactions to remain in the queue even after being processed.
We have some users who have upgraded to iOS 26 beta3. Currently, we observe that when these users make in-app purchases, our code calls [[SKPaymentQueue defaultQueue] finishTransaction:transaction]; method, and we clearly receive the successful removal callback in the delegate method - (void)paymentQueue:(SKPaymentQueue *)queue removedTransactions:(NSArray<SKPaymentTransaction *> *)transactions. However, when users click on products with the same productId again, the method - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions still returns information about previously removed transactions, preventing users from making further in-app purchases.
2
3
496
Jul ’25
Transactions Finish does not work on iOS 26 beta3
On iOS 26 beta 3, after a user purchases an item, initiating a second order for the same product fails to process payment. The system returns the same transaction ID and displays an interface message stating: "You've already purchased this In-App Purchase. It will be restored for free."​​ ​​I’ve tested this – not only did the legacy StoreKit finishTransaction method fail to work, but StoreKit2 finish method also malfunctioned.​​ ​​When will Apple fix this issue? If unresolved, it will prevent a large number of users from making purchases normally, leading to disastrous consequences.​
4
5
594
Jul ’25
Subscription price for existing subscribers unchanged after price increase
We scheduled for a price rise for July 3rd. We have >90% of subscribers on a standard monthly subscription (without trials or offers), and we gave more than the requisite notice (we scheduled these on May 20). We also chose in the price increase flow to apply the new price to existing subscribers. On July 3rd, the price for new subscribers went up as expected. However, we are still seeing all our renewals at the old price. My own subscription to the app renewed today (July 15th) - but at the old price. In my Settings app, I can see that the next renewal (August 15th) will be at the new price. I also haven't had any notifications/email from Apple about the rise (which should happen 27 days before the rise, so will likely happen for me on July 19th....but that should've been June 19th). So it appears that while the new price will be applied to existing subscribers, it is happening a month after the scheduled price rise. Some of our customers are being contacted by Apple about the price rise...for August, when it should have already taken place. Given that we scheduled this way more than 27 days ahead, why would the price rise for existing subscribers not take place at the planned date? Are there other reasons that are not documented? The only two reasons we can see are a) insufficient planning notice and b) trial periods being respected - neither of which apply here. We can see significant cancellations from July 3rd in countries where customers have to opt-in for a price rise, primarily Germany. So it seems that the price rise definitely came into effect for our existing subscribers, causing opt-in cancellations, but the customers aren't actually paying the higher price for another cycle. Any ideas?
0
0
77
Jul ’25
Apple Subscriptions - Coupons/Offer codes
We are trying to develop a coupon/offer code module where our app users can avail a free trail offer for 2 months period after applying the code. We already had a subscription module with monthly & yearly subscriptions with 7 day free trial period. Now, we want to implement a offer/coupon module, where, a user can either select monthly or yearly subscription, and upon entering the offer/coupon code, they will get 2 months free trial (or) a discount on the chosen subscription. (this will overwrite the existing 7 day free trial). We are confused on choosing the type of “offer/coupon” from AppStore connect. In App Store connect, we have introductory offers, promotional offer & Offer codes. Based on our requirements, we have done research and found that we cannot implement the offer code & promotional codes in the develop environment as there is no possibility to test in Sandbox environment. We observed that we need to push the app to App store and upon approval, we need to implement “offer/coupon” module. Can some one please suggest or guide us on choosing the best solution for our requirement? Thanks in advance.
1
0
120
Jul ’25
in app purchase pay successfully,but doesn't receive receipt from apple
I am just developing an app,I just config the In App Purchase module in App Store Connect.And I have deployed the related code in flutter, and the Xcode have done the configuration about this. The fetching products is successful, and buyNonconsumable/buyConsumble api could be called successfully ,but whatever install methods I have tried, could not receive the receipt after call the buyNonconsumable/buyConsumbl api.So could you help to solve this problem,I just have stucked for a few weeks , please help. Btw ,my friends have told me that if I want to integrated the In App Purchase function,I need to upload a version to apple store and make it pass the review process.Please help me to confirm these question ,very thankful.
Replies
0
Boosts
0
Views
198
Activity
Jun ’25
In-App Purchases Not Showing in App Store Connect (Can't Attach to Version)
Hi everyone, I'm encountering a persistent issue with App Store Connect and hoping someone has seen this before or can advise. I have an approved in-app purchase (product ID: inspo_credits_10), and everything is correctly configured: The IAP is Approved and Ready for Sale The capability is enabled in both the Apple Developer portal and Xcode My app uses StoreKit correctly (Product.products(for:)) I’ve uploaded multiple builds (latest: version 1.3.8, build 3) The problem: When preparing the version (1.3.8) in App Store Connect, the “In-App Purchases” section does not appear at all — so I can’t attach the IAP to the version or submit it for review. I've tried: Re-uploading builds Creating new versions (1.3.9, 1.4.0…) Re-enabling the IAP capability Confirming that StoreKit is properly integrated Waiting multiple days for propagation Even creating new IAPs Still, the IAP section doesn’t appear when editing the version. Apple support responded, but directed me to Developer Technical Support without offering a fix or escalation path. Has anyone experienced this before — an approved IAP that doesn't show up in App Store Connect’s version editor? Is there a way to force a refresh or escalate this internally? Would appreciate any advice or direction!
Replies
0
Boosts
0
Views
132
Activity
Jun ’25
About Guideline 2.1 - Performance in-app purchase functionality is not present
Over two months ago, one of my apps (My desktop web) was rejected during its first submission due to 2.1 - App Completeness. The reviewer said that the in-app purchase information was not visible, and that the purchase button showed “null(null)”. However, during both Xcode debugging and TestFlight testing, I was able to see all the in-app purchase information correctly. After multiple rounds of communication with the reviewer, the app was finally approved — although I never figured out why. It might be because I submitted the in-app purchase for review first, and then submitted the app itself. In any case, it was eventually approved. Now, I’m facing the exact same issue with my new app. The in-app purchase code is exactly the same (except for the Product IDs), but again, the reviewer cannot see the product information. The relevant line of code is very straightforward — I can successfully retrieve one product, but the reviewer sees zero: self.products = try await Product.products(for: [productId]) I’ve already contacted DTS, and they said: “You should make sure that StoreKit 2 effectively returns the display price and name of your product object and that these values still exist when you are about to display them.” Yes, I’ve verified that — I can see the in-app purchase information. But the reviewer cannot. I even scheduled a call and spoke with a reviewer based in San Jose, California. She confirmed that everything looks normal from the submission process side, and suggested I either check the app’s implementation again or continue working with DTS. One more thing I noticed: throughout the entire review process, the in-app purchase product always remains in the “Waiting for Review” state, no matter how the app's status changes. The reviewer said that’s expected behavior. At this point, I honestly don’t know what’s wrong anymore — I’m completely overwhelmed. Everything works perfectly in both Xcode and TestFlight, and I have no idea what else I can do to test or verify it. Xcode and TestFlight screenshot: Reviewer screenshot: Appstore connect:
Replies
13
Boosts
0
Views
553
Activity
Jul ’25
Acceptable Label for External Donation Link
Hi, I'd like to have a button in my app that links to a website where users can donate to the project. I've tried "Donate to the Project" and "Support the Developer," but both of them were rejected because of: Guideline 3.1.1 - Business - Payments - In-App Purchase: "We notice that your app allows users to contribute donations to the development of your app with a mechanism other than in-app purchase. Although these donations may be optional, they must use in-app purchase since they are associated with receiving digital content or services." Is there a specific label I could use that complies with "3.2.1 (vii) Apps may enable individual users to give a monetary gift to another individual without using in-app purchase, provided that (a) the gift is a completely optional choice by the giver, and (b) 100% of the funds go to the receiver of the gift. However, a gift that is connected to or associated at any point in time with receiving digital content or services must use in-app purchase." But is still understandable as a donations website? I thought that was implied with the two labels I submitted, but I guess not. Thanks, Henry
Replies
1
Boosts
0
Views
233
Activity
Jul ’25
TestFlight user cannot re-purchase expired auto-renewable subscription – only restored purchases returned
I’m testing an auto-renewable subscription on TestFlight. Now the user can't re-purchase the same product – Apple just restores the old (expired) one, and no payment sheet appears. How can I let the same TestFlight user re-subscribe to an expired product? Do I have to create a new productId for every test cycle?
Replies
3
Boosts
3
Views
165
Activity
Jul ’25
500 server error when trying to add IAP price change
I'm trying to create a price change for one of my in app purchases, but every time I try to save it the website keeps saying an error has occurred. If I check my browser's console I see the below error output: { "errors": [{ "status": "500", "code": "UNEXPECTED_ERROR", "title": "An unexpected error occurred.", "detail": "An unexpected error occurred on the server side. If this issue continues, contact us at https://developer.apple.com/contact/." }] } Please fix this ASAP.
Replies
2
Boosts
0
Views
154
Activity
Jul ’25
Can't fix "Provisioning profile doesn't include com.apple.InAppPurchase entitlement" even after resetting everything
Hi everyone, I’ve been struggling for days with a recurring issue in my iOS app build. The build fails with the following error: Provisioning profile "iOS Team Provisioning Profile: com.myapp.bundleid" doesn't include the com.apple.InAppPurchase entitlement. Here’s what I’ve already tried: Created a new Bundle ID with correct capabilities (In-App Purchase, Push Notifications, Sign in with Apple). Created a new provisioning profile manually from Apple Developer Console. Used EAS CLI (Expo) and Xcode to regenerate all certificates and provisioning profiles. Ensured that the In-App Purchase capability is enabled in the App ID (it's greyed out but enabled). Made sure all subscriptions and products in App Store Connect are “Ready to Submit”. Followed all steps from RevenueCat and Apple documentation. Cleaned entitlements in .entitlements file and tried both and variations. Tried building both locally and with EAS – same error every time. Sent multiple tickets to Apple Developer Support, but no helpful reply yet. Extra Notes: I'm using react-native-purchases and RevenueCat, already integrated and working before this started. The error began randomly; before that, I was able to build successfully with in-app purchases. Even creating a completely fresh app from scratch results in the same entitlement missing error. Has anyone faced this exact problem where the provisioning profile fails to include com.apple.InAppPurchase, even though everything is correctly set up? Any help or insights would be greatly appreciated. Thanks in advance!
Replies
3
Boosts
0
Views
420
Activity
Jul ’25
Subscriptions Missing from App After Approval – "Updates Pending Review" Blocked State
Hey everyone, I'm dealing with a really frustrating issue with auto-renewable subscriptions in my app and hoping someone can help or at least tell me what's going on. Here's what happened: When I first submitted my app I had already set up the monthly and yearly subscriptions in App Store Connect After a few rejections the app finally got approved, but when it went live I noticed the subscriptions were completely gone. Users could only see the lifetime purchase. I never removed anything or changed any major configurations, so I have no idea why they just disappeared I tried removing the app from sale and then also temporarily removed the subscriptions. After re-enabling them they now show as "Approved" when I look at them individually But in the Subscription Group it still says "Updates Pending Review" and I can't do anything - can't edit anything, can't resubmit I thought about submitting a new build hoping I could reselect the subscriptions, but they still don't show up as selectable in the in-app purchase section At this point I'm completely stuck. I've put a warning message in the app to let users know, but this is seriously hurting my business since subscriptions are basically my main revenue. Has anyone else run into this? Is there any official way to fix or reset a subscription group that's stuck like this? Thanks for any help!
Replies
1
Boosts
0
Views
224
Activity
Jul ’25
Payment Marked as "Paid" But Not Received After 3 Business Days
Dear Apple Support, I am writing to report a payment issue with my App Store Connect developer account. The latest payment is marked as "Paid" in the Payments and Financial Reports section, but as of today, more than 3 business days have passed and the funds have not yet arrived in my bank account. I have double-checked that my banking information is accurate and up to date. I would appreciate it if you could investigate this issue and provide further clarification on the current status of the payment. Thank you in advance for your support.
Replies
1
Boosts
1
Views
280
Activity
Dec ’25
Unable to retrieve data from In App Purchase
I want to add in-app purchasing to my app, but I can't figure out what part of my workflow is wrong. I created a product for my app in iTunes Connect (the product ID is com.mycompany.products.***) and it's in "Ready to submit" status. I created a sandbox test user for this app. I connected to iTunes on a real device using the sandbox AppleID. I went back to XCode and added in-app purchasing to my app. I turned on developer mode on the real device and logged in as the sandbox user. I built the app and ran it on a real device (not the simulator). I tried to get product information (com.mycompany.products.***) but nothing was returned. In-app purchasing is registered in App Store Connect and the status is "Ready to submit". The code only retrieves product information in a simple way, so I don't think there's a problem. inAppPurchase.getProducts(["com.mycompany.products.***"]).then(console.log).catch(console.error); But it only returns an empty array. What could be wrong? Any help would be much appreciated.
Replies
2
Boosts
1
Views
74
Activity
Jul ’25
Unauthorized for Advanced Commerce API Purchase
Hi! My product SKU has been approved for Advanced Commerce API. I successfully receive a purchase pop-up with the correct information. However, I am still having issues with completing the purchase. I always receive Unauthorize error when I confirm the purchase (subscription in my case; see the screenshot). I am using the node.js server library to sign the request. I made sure that the account is a valid account enabled for Sandbox. Logs unfortunately don't indicate any further detail. Thanks for your advice! We've been stuck on this for a while now and would appreciate your help. Marek
Replies
6
Boosts
2
Views
308
Activity
Jul ’25
交易无法结束 (Transactions Unable to Finish)
有一个用户反馈7月8日充值了3笔后一直无法发起新的购买,总是提示已经购买。我们查了是之前的交易无法结束,我们使用StoreKit2,已经调用await transaction.finish()成功结束交易了,但是每次发起新支付时,Transaction.unfinished还会返回之前已完成的交易信息。 是设备或AppleID的问题么?用户尝试了重启设备、重新登录AppleID都没用。有什么办法解决呢? 用户无法结束的苹果交易id为:200002703899379、200002703900716、200002703902023。 A user reported that after making 3 purchases on July 8th, they have been unable to initiate new purchases, always receiving a prompt that the item has already been purchased. Upon investigation, we found that the previous transactions couldn't be finalized. We use StoreKit2 and have successfully called await transaction.finish() to end the transactions. However, every time a new payment is initiated, Transaction.unfinished still returns information about the previously completed transactions. Could this be an issue with the device or Apple ID? The user has tried restarting the device and re-logging into their Apple ID, but these attempts were unsuccessful. Is there any way to resolve this? The Apple transaction IDs that the user is unable to finalize are: 200002703899379, 200002703900716, 200002703902023.
Replies
6
Boosts
6
Views
1.5k
Activity
Feb ’26
DID_FAIL_TO_RENEW Notification with a null gracePeriodExpiresDate
We are seeking clarification on the behavior of App Store Server Notifications V2. Summary In our production environment, we received a notification with notificationType: DID_FAIL_TO_RENEW and subtype: GRACE_PERIOD. However, the gracePeriodExpiresDate field in the payload was null. We understand this notification indicates that a user's subscription has entered a grace period. The null value for its expiration date is unexpected, and we are looking for an official explanation of this behavior and the correct way to handle it. The Scenario Here are the details of the notification we received: Notification Type: DID_FAIL_TO_RENEW Notification Subtype: GRACE_PERIOD Environment: Production Upon decoding the signedRenewalInfo JWS from the responseBodyV2, we found that the gracePeriodExpiresDate field inside the JWSRenewalInfoDecodedPayload was null. The notificationUUID for this event was in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Our Implementation and its Impact Our backend is designed to ensure service continuity during a grace period, as recommended in the documentation. Current Logic: Receive the DID_FAIL_TO_RENEW / GRACE_PERIOD notification. Extract the gracePeriodExpiresDate. Extend the user's subscription expiration date in our database to match this date. Because the gracePeriodExpiresDate was null in this case, our logic failed, creating a risk of service interruption for the user. Context and Investigation We have performed the following checks: App Store Connect Settings: We have confirmed that Billing Grace Period is enabled for the relevant subscription group. Sandbox Environment: We have been unable to reproduce this scenario in the Sandbox. User Context: We believe the user in this case was experiencing a failed payment when attempting to renew for the first time after a free trial period. Questions To ensure we handle this scenario correctly, we would appreciate clarification on the following points: Conditions for Null: Under what specific conditions does a DID_FAIL_TO_RENEW notification with a GRACE_PERIOD subtype contain a null gracePeriodExpiresDate? Expected Behavior: Is this null value an expected behavior for certain scenarios, such as the first failed renewal after a free trial? Best Practice: If this is an expected behavior, what is the correct way to handle it? How should our backend interpret a null gracePeriodExpiresDate to ensure service continuity for the user?
Replies
2
Boosts
2
Views
208
Activity
Jul ’25
Issue preventing StoreKit 2 transactions from being finished
Hello, Since updating to iOS 26 Beta 3, I’ve been experiencing an issue where transactions purchased through the normal in-app purchase flow continue to be reported as updated and unfinished—even after calling the finish() function. Please resolve this promptly.
Replies
1
Boosts
3
Views
309
Activity
Jul ’25
In iOS 26 beta3 version, the finishTransaction method is unable to remove transactions from the SKPaymentQueue, causing transactions to remain in the queue even after being processed.
We have some users who have upgraded to iOS 26 beta3. Currently, we observe that when these users make in-app purchases, our code calls [[SKPaymentQueue defaultQueue] finishTransaction:transaction]; method, and we clearly receive the successful removal callback in the delegate method - (void)paymentQueue:(SKPaymentQueue *)queue removedTransactions:(NSArray<SKPaymentTransaction *> *)transactions. However, when users click on products with the same productId again, the method - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions still returns information about previously removed transactions, preventing users from making further in-app purchases.
Replies
4
Boosts
0
Views
336
Activity
Jul ’25
In iOS 26 beta3 version, the finishTransaction method is unable to remove transactions from the SKPaymentQueue, causing transactions to remain in the queue even after being processed.
We have some users who have upgraded to iOS 26 beta3. Currently, we observe that when these users make in-app purchases, our code calls [[SKPaymentQueue defaultQueue] finishTransaction:transaction]; method, and we clearly receive the successful removal callback in the delegate method - (void)paymentQueue:(SKPaymentQueue *)queue removedTransactions:(NSArray<SKPaymentTransaction *> *)transactions. However, when users click on products with the same productId again, the method - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions still returns information about previously removed transactions, preventing users from making further in-app purchases.
Replies
2
Boosts
3
Views
496
Activity
Jul ’25
Transactions Finish does not work on iOS 26 beta3
On iOS 26 beta 3, after a user purchases an item, initiating a second order for the same product fails to process payment. The system returns the same transaction ID and displays an interface message stating: "You've already purchased this In-App Purchase. It will be restored for free."​​ ​​I’ve tested this – not only did the legacy StoreKit finishTransaction method fail to work, but StoreKit2 finish method also malfunctioned.​​ ​​When will Apple fix this issue? If unresolved, it will prevent a large number of users from making purchases normally, leading to disastrous consequences.​
Replies
4
Boosts
5
Views
594
Activity
Jul ’25
在沙盒环境下或者TestFlight 测试消费型项目会提示此项目将免费恢复
在沙盒环境下或者TestFlight 测试消费型项目会提示此项目将免费恢复
Replies
0
Boosts
0
Views
185
Activity
Aug ’25
Subscription price for existing subscribers unchanged after price increase
We scheduled for a price rise for July 3rd. We have >90% of subscribers on a standard monthly subscription (without trials or offers), and we gave more than the requisite notice (we scheduled these on May 20). We also chose in the price increase flow to apply the new price to existing subscribers. On July 3rd, the price for new subscribers went up as expected. However, we are still seeing all our renewals at the old price. My own subscription to the app renewed today (July 15th) - but at the old price. In my Settings app, I can see that the next renewal (August 15th) will be at the new price. I also haven't had any notifications/email from Apple about the rise (which should happen 27 days before the rise, so will likely happen for me on July 19th....but that should've been June 19th). So it appears that while the new price will be applied to existing subscribers, it is happening a month after the scheduled price rise. Some of our customers are being contacted by Apple about the price rise...for August, when it should have already taken place. Given that we scheduled this way more than 27 days ahead, why would the price rise for existing subscribers not take place at the planned date? Are there other reasons that are not documented? The only two reasons we can see are a) insufficient planning notice and b) trial periods being respected - neither of which apply here. We can see significant cancellations from July 3rd in countries where customers have to opt-in for a price rise, primarily Germany. So it seems that the price rise definitely came into effect for our existing subscribers, causing opt-in cancellations, but the customers aren't actually paying the higher price for another cycle. Any ideas?
Replies
0
Boosts
0
Views
77
Activity
Jul ’25
Apple Subscriptions - Coupons/Offer codes
We are trying to develop a coupon/offer code module where our app users can avail a free trail offer for 2 months period after applying the code. We already had a subscription module with monthly & yearly subscriptions with 7 day free trial period. Now, we want to implement a offer/coupon module, where, a user can either select monthly or yearly subscription, and upon entering the offer/coupon code, they will get 2 months free trial (or) a discount on the chosen subscription. (this will overwrite the existing 7 day free trial). We are confused on choosing the type of “offer/coupon” from AppStore connect. In App Store connect, we have introductory offers, promotional offer & Offer codes. Based on our requirements, we have done research and found that we cannot implement the offer code & promotional codes in the develop environment as there is no possibility to test in Sandbox environment. We observed that we need to push the app to App store and upon approval, we need to implement “offer/coupon” module. Can some one please suggest or guide us on choosing the best solution for our requirement? Thanks in advance.
Replies
1
Boosts
0
Views
120
Activity
Jul ’25