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

114 Posts

Post

Replies

Boosts

Views

Activity

Missing the Required "In-App Purchases and Subscriptions" Section in App Store Connect
CONTEXT: iOS: 18.2.1 || macOS: 15.4 || Xcode: 16.2 || App status: Not yet released || In-app purchase type: Subscription || App version: 1.0, Build 3 ISSUE:
 App Store Connect has rejected our latest app submission with the instructions “…submit your in-app purchases and upload a new binary in App Store Connect…”. Unfortunately, the required "In-App Purchases and Subscriptions" section is missing from the ‘version page’ of our submission. This is further complicated by the fact that we had already tested the subscription in App Store Connect’s sandbox, where it successfully returned the non-domestic storefront pricing for Hungary (HUF1,490.00/year). After reviewing nearly four dozen Apple pages of documentation and a dozen Apple forum posts, we found only one relevant link: https://developer.apple.com/help/app-store-connect/manage-submissions-to-app-review/submit-for-review Unfortunately, the instructions under the disclosure triangle: "Submit an in-app purchase for the first time" confirm that the "In-App Purchases and Subscriptions" section is missing from our version page. Additionally, review of the blue warning box on the Subscription page includes the following instructions: "…Create your subscription, then select it from the app’s In-App Purchases and Subscriptions section on the version page…" Unfortunately, this section does not exist on our version page, confirming that there is no specific section labeled "In-App Purchases and Subscriptions" available. Similar issues have been reported by other developers. See this Stack Overflow thread for additional context: https://stackoverflow.com/questions/73098652/app-store-connect-in-app-purchase-and-subscriptions-section-missing HISTORY: Successfully created and sandbox tested the subscription in App Store Connect. Reviewed over five dozen pages of Apple documentation and forum posts as well as Stack Overflow. Have repeatedly loaded and checked the 'version page' for the "In-App Purchases and Subscriptions" section, which is unfortunately missing from our submission. QUESTIONS: Where is the "In-App Purchases and Subscriptions" section located, if not on the 'version page' of our submission? Is there an alternative method to submit in-app purchases and upload a new binary in App Store Connect? Do we need to remove any part of the submission to access the "In-App Purchases and Subscriptions" section? What is the risk of losing our app name 'Concensus' in the Apple App Store if we delete any portion of the submission? We would appreciate guidance on how to proceed with submitting our in-app purchase subscription along with our new app version. Grateful Indeed.
1
0
177
Mar ’25
Payment System for Peer-to-peer Parking App.
Hello, I am in the process of developing a peer-to-peer parking app and would like clarification on whether my payment system requires In-App Purchases (IAP) or if I can use custom payment system embedded in-app such as Stripe for transactions. About the App: Users can add empty parking spots they find on a map. Other users can pay to unlock a group of spot coordinates (availability is not guaranteed). Users can also host their own occupied parking spot and sell it to another user, guaranteeing availability. The app uses a virtual currency (“coins”), which represent real money and are used to pay for unlocking spots and purchasing hosted spots. Users can fund their account with coins, and coins they earn from selling spots can be cashed out via PayPal once a minimum threshold is met. Users cannot cash out coins they purchased—only the ones they earned. The funds/coins are controlled by the app’s servers acting as a middleman. If a purchase transaction occurs, the app deducts the coins from the purchaser‘s account and credits the sellers account minus service fee of the app. My Question: Since the app facilitates real-world transactions between users, can I use Stripe to allow users to purchase coins, or does Apple require In-App Purchases (IAP) for funding accounts? If not do you have any suggestions on different methods? I want to ensure compliance with App Store policies before proceeding. Thank you! Best regards, Mubin
1
0
92
Mar ’25
Does originalTransactionId change if a user resubscribes?
Hello, For In App Purchases with a renewable subscription, does the originalTransactionId change in the following scenarios? Case 1: A user subscribes to a subscription A within a Subscription Group SG1. The user then cancels it at the end of the month. Comes back later to subscribe to the same subscription A within the same Subscription Group SG1. Case 2: A user subscribes to a subscription A within a Subscription Group SG1. The user then cancels it at the end of the month. Comes back later to subscribe to subscription B within the same Subscription Group SG1.
3
1
1.1k
Mar ’25
Transaction ID Misassociation in IAP Subscription API
Dear Apple Support Team, Hello! I am currently developing the in-app subscription functionality using Apple IAP API and have encountered a serious technical issue while processing subscription data. I would like to report this issue to you. Issue Description: When calling the subscription API endpoint, the same OriginalTransactionId returns inconsistent results. Specifically, a particular transaction ID (let's call it TransactionId_A) should belong to the subscription order with OriginalTransactionId_A, but it is currently incorrectly associated with OriginalTransactionId_B. This issue severely affects our ability to accurately manage and process subscription data. Here are the relevant log details for your reference: API Endpoint Requested: https://api.storekit.itunes.apple.com/inApps/v1/subscriptions/{TransactionId_A} (Note: The link is a placeholder for the actual API endpoint.) Log Information on February 21, 2025, at 09:40:09: { "AppAccountToken": "{AppAccountToken}", "BundleId": "{BundleId}", "Currency": "CNY", "Environment": "Production", "ExpiresDate": {ExpiresDate}, "InAppOwnershipType": "PURCHASED", "IsUpgraded": false, "OfferDiscountType": "", "OfferIdentifier": "", "OfferType": 0, "OriginalPurchaseDate": {OriginalPurchaseDate}, "OriginalTransactionId": "{OriginalTransactionId_A}", "Price": {Price}, "ProductId": "{ProductId}", "PurchaseDate": {PurchaseDate}, "Quantity": 1, "RevocationDate": 0, "RevocationReason": 0, "SignedDate": {SignedDate}, "Storefront": "CHN", "StorefrontId": {StorefrontId}, "SubscriptionGroupIdentifier": "{SubscriptionGroupIdentifier}", "TransactionId": "{TransactionId_A}", "TransactionReason": "PURCHASE", "Type": "Auto-Renewable Subscription", "WebOrderLineItemId": "{WebOrderLineItemId}" } Log Information on March 21, 2025, at 09:38:49: { "AppAccountToken": "{AppAccountToken}", "BundleId": "{BundleId}", "Currency": "CNY", "Environment": "Production", "ExpiresDate": {ExpiresDate}, "InAppOwnershipType": "PURCHASED", "IsUpgraded": false, "OfferDiscountType": "", "OfferIdentifier": "", "OfferType": 0, "OriginalPurchaseDate": {OriginalPurchaseDate}, "OriginalTransactionId": "{OriginalTransactionId_B}", "Price": {Price}, "ProductId": "{ProductId}", "PurchaseDate": {PurchaseDate}, "Quantity": 1, "RevocationDate": 0, "RevocationReason": 0, "SignedDate": {SignedDate}, "Storefront": "CHN", "StorefrontId": {StorefrontId}, "SubscriptionGroupIdentifier": "{SubscriptionGroupIdentifier}", "TransactionId": "{TransactionId_A}", "TransactionReason": "PURCHASE", "Type": "Auto-Renewable Subscription", "WebOrderLineItemId": "{WebOrderLineItemId}" } From the above logs, it is evident that the same transaction (TransactionId_A) returns different OriginalTransactionId values at different times, which is clearly not expected and severely impacts our ability to correctly process and manage subscription data. I hope you can address and investigate this issue as soon as possible. If you need any further information or assistance, please feel free to contact me. Thank you for your support! Best regards!
3
3
433
Mar ’25
How to handle external purchases on iOS 15.4 - 17.3 without StoreKit modal?
Hello everyone, I’m implementing external purchases in my app and I’m using ExternalPurchase.linkToExternalPurchase() on iOS 17.4+ to display the Apple modal for external purchases. However, I need to handle purchases on iOS 15.4 - 17.3, where StoreKit’s external purchase APIs do not provide tokens and return false. Questions: What is the recommended fallback for iOS 15.4 - 17.3 since the Apple modal is not available? Should I display a custom modal or directly open a WebView with the purchase page? On iOS < 15.4, since external purchase APIs are unavailable, is it acceptable to open the external purchase page directly in Safari instead of within the app? Will Apple reject the app if I use a custom modal for purchases on iOS 15.4 - 17.3 instead of the Apple-provided one on iOS 17.4+? I want to make sure my implementation complies with Apple’s guidelines while providing the best experience for users on older iOS versions. Thanks in advance for your help!
1
0
285
Mar ’25
Monthly Subscription is Changed to One-Time Purchase on Apple Store
We set up monthly subscription with a 1-month free trial. We tested it with Sandbox and TestFlight, and the subscription worked as expected. The app is now available on Apple Store, but the monthly subscription is changed to One-Time Charge on Apple Store. When we try to download our app, it asks One-Time Charge with the cost of the subscription fee before downloading the app. However, in our testing, the app was able to be installed without this One-Time Charge, and both free trial and subscription worked well. Does anyone have had the similar issue before? How would you suggest the fixing? Thanks in advance!
1
0
74
Mar ’25
Enterprise and Individual Purchases
Our app is in early stages of development. The app will include a portion of the content/functionality for free and will also have premium content (non-consumable). The intent is to offer purchase via 2 distinct pathways. for individuals: in-app one-time purchase for enterprise customers: bulk purchase for their employees who can subsequently gain access to the content using an invitation code within the app. Section 3.1.3(c) of the App Review Guidelines begins with "If your app is only sold directly by you to organizations or groups for their employees or students..." Is it permitted under the App Review Guidelines to provide in-app purchasing for individuals as well as a pathway for enterprise clients to purchase for their employees or students? Additionally, is it permissible within the app to indicate to an individual user that an enterprise method is available to purchase access as an organization?
1
0
119
Mar ’25
Can I not list in-app-purchase in some of the countries?
Hi! My app has a free feature and another feature require in-app-purchase to unlock. I am not listing the app in EU region due to digital service act. It is not a good idea to publish all my personal information on appstore. I just wonder if it is possible to still list my app on EU appstore but not the in-app-purchase. It will be great if the free feature still available to EU users. There will be a purchase button created using SwiftUI product view. In this case, users in EU will be very confused because the in-app-purchase will not be located. Not really sure if apple will allow my app to be listed and the in-app-purchase product view would be causing confusion to user. If anyone got any suggestion, please let me know!
0
0
77
Mar ’25
Old developer account still receiving payments after migration
Hi, I've migrated my app to another developer account more than half a year ago, but I'm still receiving a few transaction payments in the old developer account, which currently has no app. The payment date shown in the report is last month. I'm wondering how could this happen. Is it possible for users to initiate a transaction half a year ago and only successfully pay it now?
1
0
74
Mar ’25
In-App Subscription
Hi, I have a problem with StoreKit regarding in-app subscription purchases. When I upload the app to TestFlight and during the review process, it doesn’t work on a real device. However, it works fine on the simulator. I get the error: "Subscription unavailable" (see image). Does anyone know what might be causing this and how to fix it? Please help!
1
0
229
Mar ’25
To get the original_transaction_id for a specific period of time in bulk.
We are distributing an application using in-app-purchase with subscription. In order to expand customer support and more optimally timed marketing activities, We want to retrieve the billing status and number of billing users managed on the Apple side and regularly verify that the data we are aware of on the server side is up-to-date. Currently, the App Store Server API provides a way to retrieve status using individual original_transaction_id, but there seems to be no official way to retrieve original_transaction_id for a specific period at once. The same was also true for App Store Server Notifications. Is there a way to specify a period of time, the Apple ID of an app, etc., and obtain the original_transaction_id or transaction_id for a specific period of time?
0
1
232
Mar ’25
Issues with Testing Promotional Offers for Auto-Renewable Subscriptions (StoreKit 2)
We are in the process of implementing promotional offers for auto-renewable subscriptions in our app using StoreKit 2. For testing, we use a sandbox user alongside a new user on our platform. I can successfully purchase an Introductory Offer through the app. Once the user is eligible for a Promotional Offer (based on a previous purchase), we retrieve the Promotional Offer identifier and signature from our backend and display the offer. After initiating the purchase and having the user enter their Sandbox password, the transaction is added to the Payment Queue. However, it fails with the following error: Purchase failed error: invalidOfferSignature Additionally, the error returned is: "Purchase did not return a transaction: Error Domain=ASDServerErrorDomain Code=3903 "Unable to Purchase" UserInfo={NSLocalizedFailureReason=Unable to Purchase, client-environment-type=Sandbox, AMSServerErrorCode=3903, storefront-country-code=IND}" We are using StoreKit 2 APIs for this process. Has anyone encountered this issue when working with StoreKit 2, or found a solution to resolve it?
2
2
445
Mar ’25
How does Apple determine consumptionStatus for subscription refunds?
Hello, We are an app developer offering subscription-based services, and we want to better understand how Apple determines the consumptionStatus when processing refund requests for in-app subscriptions. Based on Apple’s documentation on subscription refund requests, we understand that the consumptionStatus value plays a key role in Apple’s refund decision-making process. However, the documentation does not provide a clear guideline on how much usage qualifies as consumptionStatus = 2 (partially used) vs. consumptionStatus = 3 (fully used). Our key questions: 1. Usage Threshold: Does Apple have a specific percentage of subscription duration (e.g., 20% of the subscription period) that determines whether a subscription is considered “fully used”? 2. Function-Based Usage: Does Apple prioritize certain types of user actions (e.g., unlocking premium content, engaging with subscription features) when evaluating consumptionStatus? 3. Best Practices: Are there recommended best practices to increase the credibility of our consumptionStatus = 3 submission to minimize unjustified refunds? 4. Refund Preference Impact: If we set refundPreference = 2 (deny refund), how much influence does it actually have on Apple’s decision? We aim to reduce unnecessary refunds while ensuring fairness to our users. Any official guidance or insights from other developers would be greatly appreciated! Thank you!
1
1
271
Mar ’25
In-App Purchase Grayed Out & Provisioning Profile Error
Hello, I’m facing an issue with enabling In-App Purchases (IAP) for my iOS app, and it’s causing provisioning errors during the build process. Issue: • In Apple Developer Portal → Certificates, Identifiers & Profiles, the In-App Purchase capability is checked but grayed out, so I can’t modify it. • In Xcode, under Signing & Capabilities, I don’t see In-App Purchase listed. • When trying to build, I get the following error: Provisioning profile “BillionMines_Dev_Profile” doesn’t include the com.apple.developer.in-app-purchase entitlement. • Automatic signing in Xcode fails with: Xcode failed to provision this target. What I Have Tried: 1. Verified that my App ID is explicitly defined (not a wildcard ID). 2. Regenerated and downloaded a new Provisioning Profile, ensuring it matches my app. 3. Confirmed that In-App Purchase is enabled in App Store Connect under Features. 4. Cleaned the build folder and restarted Xcode. 5. Manually added com.apple.developer.in-app-purchase to my .entitlements file. Questions: • Why is the In-App Purchase option grayed out in Certificates, Identifiers & Profiles? • How can I ensure my provisioning profile includes the com.apple.developer.in-app-purchase entitlement? • Are there additional steps required to fully activate In-App Purchases? Any help would be greatly appreciated! Thanks in advance.
2
0
603
Mar ’25