In-App Purchase

RSS for tag

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

In-App Purchase Documentation

Posts under In-App Purchase tag

621 Posts
Sort by:
Post marked as solved
1 Replies
55 Views
Hello, dear community! We are developing an NFTs marketplace where users can create, buy, and sell NFTs. Additionally, our app is intended to transfer and purchase our cryptocurrency like any other crypto wallet. When users create their own NFT using our app, they can set the price (in our cryptocurrency) of the asset they create. However, Apple's review team rejected our app submission due to in-app purchases that we don't have. . OUR ACTION PLAN: We are planning to develop "Packages" for buying our cryptocurrency, like gems in a game, to buy any other NFT within the app, but we are not sure if this strategy can help us pass the app review. . Do you know if we have to add any other configuration in the app store connect to attend the wallet functionality, to buy and transfer our cryptocurrency? Do you have any recommendations for passing the app review? Our app is designed to work like: Metamask (for buying our crypto currency and transfer). Coinbase (for buying our crypto currency). Jump.trade (for NFTs Marketplace and create NFTs). Bitso (for buying our crypto currency). NFT GO (for NFTs Marketplace and create NFTs). Thanks in advance! ❤️
Posted
by MarioE777.
Last updated
.
Post not yet marked as solved
3 Replies
81 Views
App Store kept rejecting my app because the Manage Subscriptions Page says Cannot Connect when it's run on a Sandbox account. I'm using the manageSubscriptionsSheet(isPresented:) API, and I don't know how to fix this. There are others dealing with the same issue and everything I found so far is saying it's iOS issue. I responded to the App Store saying it's an iOS issue and included the following links: Apple Developer Forums Apple Developer Forums Apple Support Communities Apple Support Communities They replied with the following generic message: During our review, we found that your app displayed an error message when we tapped on "manage subscription". While we cannot provide technical assistance with the reported issues, we have put together the following resources which discuss common issues seen in apps during review. To start, please see Testing a Release Build, which gives an overview of how to test your app to minimize the chances of issues occurring during review. You may also want to review Designing for Real-World Networks, as all apps are reviewed on-device and in an environment that replicates real-world use of your app. Is there a way to fix this? How should I respond back? Also, can I just take out the Manage Subscription functionality?
Posted
by Leoul.
Last updated
.
Post not yet marked as solved
0 Replies
40 Views
I've read several topics on cancelling subscriptions in sandbox environment, but it seems to me that it could not be applied to TestFlight. I can cancel sandbox subscriptions through Settings > App Store > Sandbox account But since TestFlight does not use sandbox account I cannot cancel a sub from there. Also, TF purchase does not appear in the list of regular subscriptions (Settings > Profile > Media & Purchases). So my question is: is there any way to manually cancel auto-renewable subscription bought in TestFlight build of the app?
Posted
by kaolin19.
Last updated
.
Post not yet marked as solved
0 Replies
24 Views
We've implemented subscriptions in our app, but a few users are reporting that the payment sheet isn't opening its keep loading, we also checked with them that the permission for in app purchases is allowed in device settings and in all other apps purchases working fine only facing issue in our app side. This issue isn't replicable on our end, and we're unable to debug it. Can you please assist us in resolving this?
Posted
by grintafy.
Last updated
.
Post not yet marked as solved
2 Replies
775 Views
The sample code provided in https://developer.apple.com/wwdc21/10114 doesn't appear to call finish() on unverified transactions, and I haven't been able to find any documentation regarding what to do with unfinished transactions. However, Apple has always emphasized the importance of finishing transactions, and since a transaction object is provided even with the unverified state, I'd love some guidance!
Posted
by gilby.
Last updated
.
Post not yet marked as solved
1 Replies
93 Views
Dear All, I have a paid app which has in-app purchases to unlock additional content. In my App Store screenshots and preview videos, I used to indicate which content was paid and which was free with labels superimposed over the screen captures. App store review guideline 2.3.2 supports doing this - in fact, it seems to require it: 2.3.2 If your app includes in-app purchases, make sure your app description, screenshots, and previews clearly indicate whether any featured items, levels, subscriptions, etc. require additional purchases. But App Review don't like it. Some years ago they complained about the labels on the screenshots, which I removed. Now they are complaining about the preview videos. They cite guideline 2.3.7, which says (in part, my emphasis): 2.3.7 ... Metadata such as app names, subtitles, screenshots, and previews should not include prices, terms, or descriptions that are not specific to the metadata type. ... So these guidelines seem to be contradictory. If I label a screenshot as "free" or "paid", they consider that to violate 2.3.7. (I'm not showing an actual "$1.23" price, just "free" or "paid".) But I need to indicate whether the content shown is "free" or "paid" in order to comply with 2.3.2. (And I want to label it as such, because I don't want users to misunderstand what is included with their initial purchase.) Has anyone else had this problem? I wonder if there is some particular wording that they require, e.g. "Requires in-app purchase" rather than "Paid". Or something rather than "free". There is a limit to how much text I can legibly add without obscuring the actual content, so I have tried to keep it brief. I did refer to 2.3.2 in my reply to App Review, but they haven't addressed that; they've accepted the update as a bug fix. Ultimately I'll just do what they want - it always seems easiest - but I do have real concern that my customers are worse off without these annotations.
Posted
by endecotp.
Last updated
.
Post not yet marked as solved
2 Replies
161 Views
Payment completed with error:Error Domain=ASDServerErrorDomain Code=3539,UserInfo={storefront-country-code=CHN,client-environment-type=Sanbox,AMSServerErrorCode=3539,NSLocalizedDescription=No information about in-app purchases is provided. Please try again later}
Posted
by linan.
Last updated
.
Post not yet marked as solved
0 Replies
175 Views
I created an offer code within the subscription in App Store Connect, and on the Flutter side, I want to send the code entered by the user to Apple and start the user's subscription. Can I do this on the flutter(client) side? Or do I need to connect it from the backend?
Posted Last updated
.
Post not yet marked as solved
0 Replies
40 Views
Hi Team, When offering services involving one-on-one consultations conducted outside the app (e.g., via phone calls or Zoom), is it required to implement Apple's in-app purchase system as a consumable for these services, or can we utilize a third-party payment method compliant with current App Store guidelines?
Posted Last updated
.
Post not yet marked as solved
3 Replies
103 Views
Hello. We used App Store Server Notifications V1 for purchase notifications. And we decided to switch to version 2. We got a problem. If we use v2 and make a test purchase, the callback will receive a call with an empty requestBody. If we use v1, then a call comes with data. If we use https://api.storekit-sandbox.itunes.apple.com/inApps/v1/notifications/test for simulate notification, when version 2 is enabled, callback receive call with correct requestBody. What could be the problem? Thank you.
Posted
by Sna2021.
Last updated
.
Post marked as solved
4 Replies
118 Views
My In-App purchases are actually JSON files which provide metadata for my app. I am required to provide a "screenshot" for each of these IAPs before they can be accepted. What is the common practice for screenshots when it is just a JSON file of structured data to be used within the app. Surely someone else has run into this issue by now. What are we supposed to do?
Posted
by AnthonyB.
Last updated
.
Post not yet marked as solved
0 Replies
63 Views
Hello, id like to know if there is a Fee for User to User Payments in an Application. The Application owner doesnt want to make any money from the purchases or through ads. So its basicly non profit.
Posted Last updated
.
Post not yet marked as solved
1 Replies
148 Views
Hi, I currently have an introductory offer set up in App Store Connect, which is in the 'Ready to Submit' state. When testing with the StoreKit configuration testing for Xcode, the introductory offer appears correctly, and I can successfully make and cancel purchases. However, when testing on a device without the StoreKit configuration, using a new sandbox account, the introductory offer does not appear, though the introductory price is visible for subscription. Could you advise on how to ensure the introductory offer is displayed in this scenario? Using Storekit 2
Posted Last updated
.
Post not yet marked as solved
0 Replies
77 Views
I have a production app (since Feb 2023) that has in-app subscriptions (working fine). Now I want to give offer codes to my new users so they can get free trials (2 months free trial + annual subscription). The offer code is set up like this: https://photos.app.goo.gl/V42fZWRpECnbUQsv6 I waited for 2 days for it to be available. When I redeem this code, it shows error "The code you entered could not be found". See https://photos.app.goo.gl/sGKvuw9thFFkoJWv5, https://photos.app.goo.gl/kctoWPbNu6k4JkZp6 Please help!
Posted Last updated
.
Post not yet marked as solved
1 Replies
136 Views
In the sandbox environment, when purchasing goods, I found that the payment pop-up window was very slow every time. It takes about 9 seconds. Is Apple’s server responding slowly? How to optimize speed? This is my code snippet. let payment: SKMutablePayment = SKMutablePayment(product: product) SKPaymentQueue.default().add(payment)
Posted Last updated
.
Post not yet marked as solved
0 Replies
65 Views
I would like to understand the restrictions that apple apply to apps that offer external payment methods for services that are not part of iOS app IAP system. There are companies that sell vouchers for PSN, Steam and XBOX that are not related to IAP purchases, and are used in consoles external to the iOS environment. But it seems that a payment app cannot offers such services inside iOS. Could someone give me an explanation why is that so? thanks in advacne,
Posted
by Minghini.
Last updated
.
Post not yet marked as solved
9 Replies
1.6k Views
Hi community: When I try to access subscription settings, after filling in my sandbox user's password, a message "cannot connect" appears, just like below. Does someone know about a workaround to cancel or reset the subscription from the iPhone? Thanks in advance
Posted
by JesusMG.
Last updated
.
Post not yet marked as solved
0 Replies
112 Views
Hi, I'm receiving an incorrect returning state from SKPaymentTransaction. I have a subscription plan that users can purchase and have access to new features in my app, but, for some reason, even if it's a new app account or new appstore account, when it reaches the SKPaymentTransaction.TransactionState, it always says that the state is SKPaymentTransactionStatePurchased. This code haven't been changed since 2018 and this error started about 1 week ago. This is the full code: - (void)createPaymentWithProduct:(SKProduct *)product { SKMutablePayment *payment = [SKMutablePayment paymentWithProduct:product]; payment.quantity = 1; [[SKPaymentQueue defaultQueue] addTransactionObserver:self]; [[SKPaymentQueue defaultQueue] addPayment:payment]; } - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions { for (SKPaymentTransaction *transaction in transactions) { switch (transaction.transactionState) { // Call the appropriate custom method for the transaction state. case SKPaymentTransactionStatePurchasing: [self purchasingTransaction:transaction]; break; case SKPaymentTransactionStateDeferred: [self failedTransaction:transaction]; break; case SKPaymentTransactionStateFailed: [self failedTransaction:transaction]; break; case SKPaymentTransactionStatePurchased: { //It reaches this case but never reaches Purchasing [self purchasedTransaction:transaction]; break; } case SKPaymentTransactionStateRestored: [self restoredTransaction:transaction]; break; default: // For debugging NSLog(@"Unexpected transaction state %@", @(transaction.transactionState)); [self failedTransaction:transaction]; break; } } } After the queue, it calls this functions that ask for the payment receipt, which returns me an error because it's not purchased, so it doesn't have a receipt. - (void)purchasedTransaction:(SKPaymentTransaction *)transaction { [self sendReceiptToServerForTransaction:transaction]; if (self.purchasedNotification) { self.purchasedNotification(); } }
Posted
by dmcshiki.
Last updated
.