Search results for

“restore purchases”

22,110 results found

Post

Replies

Boosts

Views

Activity

Reply to Why do we need receipt validation for IAP?
It is essential because there are a massive amount of users out there trying to purchase IAPs with invalid receipts. So this is not a theoretical issue, it is a real problem. For example **** broken devices are often already modified to automatically send a, let's call it a recycled iTunes receipt. In practice, many users of **** broken devices are not even aware that their devices are doing this by default. So even when they try to restore IAPs that they really bought before, their device would often use a bogus receipt instead by default.Also this is not solely about piracy, you are talking about subscriptions. And when you decode a receipt it also contains the information for which time frame the user purchased the subscription, and also whether the subscription has already been terminated by the user via Apple's iTunes support (think about restoring purchases for instance).And no, these issues are not soley limited to **** broken devices. There are also tools out there
Topic: App & System Services SubTopic: StoreKit Tags:
Mar ’18
Reply to Severe App Store bug: IAP Restore no longer working in live version
rich, 43462062 is the most recent one. The original report's incident tracking number is 34278255. Delighted to see that 43462062 has been reopened. The problem occurs with every user, to the best of my knowledge. Once someone gets a new device and needs to restore purchases, there seems no chance it will work. Signing in and out, rebooting, resetting, reinstalling... gone through all that with many customers. One hint I found is that the bug may come from the transition to Swift. My app is still Objective-C only. This Githup repository exhibits a similar bug that one developer claims could be solved by transitioning to Swift 3: https://github.com/bizz84/SwiftyStoreKit/issues/175Yes, Receipt Validation via RMStore + OpenSSL is probably a solution to restore purchases. However, the use of cryptography, especially OpenSSL, comes with excessive risk exposure to hefty fines and penalties, as Apple warns us resource-constrained developers in iTunes Connect. As a bootstrapped one-man operation I l
Topic: App & System Services SubTopic: StoreKit Tags:
Feb ’19
Reply to In-app purchase fail to get receipts and macos says application damaged
The Finder is presenting this message after a macOS StoreKit app calls exit (173) a second time. The macOS StoreKit app is being run in the sandbox. The app on launch detects that the appStoreReceiptURL is nil and calls exit (173). The Finder detects this exit result and issue a request to the App Store to write a receipt to the app. This causes the app to present an authentication dialog in which you enter the test user account and password. Normally, the appStoreReceipt is refreshed in the app, but not in this failure case - such that the Finder presents the alert to the effect that the app is damaged. For the longest time it was recommended that on launch, the macOS StoreKit app check for the presence of the appStoreReceipt. If not present the app calls exist (173). This is no longer recommended as it rises the Authentication dialog which can be confusing to a user. Instead the advise now is to have the app continue along with the assumption that the user has no access to first time in-app purchase
Topic: App & System Services SubTopic: StoreKit Tags:
Jun ’22
Reply to Purchases not always works
Roger,It's difficult to debug an issue given only a user level description of the problem. However, I can make some guesses. You indicated thatWith appleID-A i am on a iPad and buy the in-app purchase 'full-version'. Done, the app unlocks the full version as expected. With the same appleID-A I am also on an iPhone. I press the restore purchases but does not workThe likely reason why this happens is that the finishTransaction call was not made to complete the transaction in the iPad purchase. If the finishTransaction call is not made, the transaction remains incomplete and will not be restored when the restoreCompletedTransaction call is made. Another question - on the iPhone, was appleID-A defined as the iTunes/App Store user setting when the restoreCompletedTransaction call was made, or did you enter the id. My reason for asking is that if the addTransactionObserver call was initiated, it should have found the incompleteTransaction and processed it. The observer can only p
Topic: App & System Services SubTopic: StoreKit Tags:
Dec ’16
Reply to Restore button for self hosted content
You can handle 'restore' any way you want but you must provide a method whereby a user can recover their purchases on a new device that they purchase or on their current device after they delete (or restore from backup) any device that has your app.The normal way of restoring is to implement restoreCompletedTransactions and handle the restore exactly the same way you handled the original purchase except with a state 'restored' rather than 'purchased'.
Topic: App & System Services SubTopic: StoreKit Tags:
Jul ’17
Should in-app purchase restore be implemented when it is not useful for auto-renewable subscriptions?
I'm implementing an app that let users subscribe for extra storage to upload content. This is a monthly subscription and it is implemented as an auto-renewable subscription. An in-app purchase receipt will be used only once to confirm the purchase is successful and to get details like expiry date. Then the database is updated continuously with server-to-server notifications. However the app got rejected since Restore is not implemented. I simply added a restore button along with its functionality. But I don't know what to do when the restore is successful. For the scenario in this app how does transaction restoring can be useful?
0
0
574
Nov ’20
Reply to Restore purchase gives all users for free
If a purchase is available to restore then StoreKit calls updatedTransactions with a case of .restored. Whether or not there is a purchase to restore StoreKit calls paymentQueueRestoreCompletedTransactionsFinished to signal it is completed.Move your code that grants the purchase from paymentQueueRestoreCompletedTransactionsFinished to updatedTransactions.
Topic: App & System Services SubTopic: StoreKit Tags:
May ’17
Can in-app purchase be restored across Mac and iOS App Stores?
Hi,I have a app that is available on both Mac and iOS App Stores. I want to create an in-app purchase for additional features, but I would want the user to buy it on one of the devices and have it restorable on others, so they don't have to purchase the same IAP on both Mac and iOS. I know that this is easy to do between iPhone and iPads, even between different appIDs, but not sure if it applies to the Mac as well. Can someone clarify?I have looked and haven't found a straight answer to this.
0
0
328
Mar ’16
Restorations of non-consumable purchases suddenly failing in an old app
Hi there,I've got an app which has been on sale for 5 years or so. It has a single non-consumable IAP to unlock the full app.In the last week I've had a couple of reports from people that restoring their purchase on a new device doesn't work. I've checked that they've actually made the correct purchase in the past, and that they're logged in with the same account they made the purchase with.The system has worked fine for several years (and a few million purchases), so it seems like something might have changed on Apple's end in the last few days. Does anyone know if there's a recent change that could cause this?Unfortunately I don't have details of error codes - the app (stupidly) just reports a generic error to the customer.Any help would be much appreciated!Thanks,Rob.
6
0
1.1k
Feb ’17
Reply to Appropriate in-app Type for Live Stream View
Hi,Thanks, I think we are closing on to a solution. Some related clarifcations:So if I store the purchases in the localStorage in one device with iCloud enabled on two or more devices, the purchases will reflect on all the devices, right?In case the user reinstalls the app on one or more devices the purchase data (NRS or cosumable) will be lost if the person has not logged in earlier to copy the rights, as our server will not have details of the purchase (could this happen if the user after a NRS or consumable purchase, immediately does an app reinstall?). For example a user has 2 devices A and B and has bought one Pass which got copied to both devices through localStorage and iCloud. Now the user does a reinstall on device B. So device A has a record of Pass purchase, and device B has no Passes after reinstall. So how will the sync happen between the 2 devices, will contents of A be copied to B automatically after reinstall? If 2 is an issue will it be sa
Topic: App & System Services SubTopic: StoreKit Tags:
Nov ’16
Reply to Universal Purchase Questions (Mac and iOS)
Seeking for the same infos, and one more :My two apps use one freemium IAP to unlock full features and renewable subscriptions for some contents.Merging subscriptions IAPsThe two freemium IAP are different, and the Mac version cost more. They will stay distincts in a possible merge scenario.But the subscriptions are the same and shared between Mac and iOS. At the time being, I had to have two products for each subscription, one for each Store with different product ID. Its currently up to our licence server processing to do the merging and allow content access for both versions whenever one environment does a purchase.It's completely unclear to me how and when to merge the two subscription products. If the Mac version vanishes by using the iOS bundle, what will happen to current purchases, both one time freemium and subscription. How will the users get the licences they paid for in the former (current) Mac version ? Specifically, will a merged app doing a restore purchase get all the purchases
Feb ’20
In-App purchases fail in Production in macOS
Since yesterday customers are charged for in-app purchases in macOS but app receipt does not indicate that.When they try restoring purchases, iTunes receipt validation service response indicates that there were no in-app purchases made. Reproduced that in production.Something is seriously wrong. Bug report 31368166.Please lodge your bug reports.
1
0
627
Mar ’17
Reply to How should I react to SKErrors with error code 0 on subscription starts?
Hi everyone! I've got the same error (SKError.Code.unknown, i.e. 0) and underlying message. It appears when a client tries to purchase the same product second time. It looks like this case shouldn't happen, because if all set correct, client shouldn't generate purchase second time. But I guess, it is easy to reproduce it having second device for the same appleId and initiating second purchase. Ways to reproduce: Client chooses product item AppStore shows message that such product has been purchased and is still active SKPaymentTransactionObserver gets error: SKError.Code.unknown with underlying message (as noticed in initial message of this thread) So, client knows what happened and transaction observer too. It is helpful for transaction observer as we can disable spinner on product items screen (for example), but what about other cases when we get such .unknown error code and other underlying messages? Should we show Unknown message happened to a client or just react on it
Topic: App & System Services SubTopic: StoreKit Tags:
Dec ’20
Reply to Why do we need receipt validation for IAP?
It is essential because there are a massive amount of users out there trying to purchase IAPs with invalid receipts. So this is not a theoretical issue, it is a real problem. For example **** broken devices are often already modified to automatically send a, let's call it a recycled iTunes receipt. In practice, many users of **** broken devices are not even aware that their devices are doing this by default. So even when they try to restore IAPs that they really bought before, their device would often use a bogus receipt instead by default.Also this is not solely about piracy, you are talking about subscriptions. And when you decode a receipt it also contains the information for which time frame the user purchased the subscription, and also whether the subscription has already been terminated by the user via Apple's iTunes support (think about restoring purchases for instance).And no, these issues are not soley limited to **** broken devices. There are also tools out there
Topic: App & System Services SubTopic: StoreKit Tags:
Replies
Boosts
Views
Activity
Mar ’18
Reply to Severe App Store bug: IAP Restore no longer working in live version
rich, 43462062 is the most recent one. The original report's incident tracking number is 34278255. Delighted to see that 43462062 has been reopened. The problem occurs with every user, to the best of my knowledge. Once someone gets a new device and needs to restore purchases, there seems no chance it will work. Signing in and out, rebooting, resetting, reinstalling... gone through all that with many customers. One hint I found is that the bug may come from the transition to Swift. My app is still Objective-C only. This Githup repository exhibits a similar bug that one developer claims could be solved by transitioning to Swift 3: https://github.com/bizz84/SwiftyStoreKit/issues/175Yes, Receipt Validation via RMStore + OpenSSL is probably a solution to restore purchases. However, the use of cryptography, especially OpenSSL, comes with excessive risk exposure to hefty fines and penalties, as Apple warns us resource-constrained developers in iTunes Connect. As a bootstrapped one-man operation I l
Topic: App & System Services SubTopic: StoreKit Tags:
Replies
Boosts
Views
Activity
Feb ’19
Reply to In-app purchase fail to get receipts and macos says application damaged
The Finder is presenting this message after a macOS StoreKit app calls exit (173) a second time. The macOS StoreKit app is being run in the sandbox. The app on launch detects that the appStoreReceiptURL is nil and calls exit (173). The Finder detects this exit result and issue a request to the App Store to write a receipt to the app. This causes the app to present an authentication dialog in which you enter the test user account and password. Normally, the appStoreReceipt is refreshed in the app, but not in this failure case - such that the Finder presents the alert to the effect that the app is damaged. For the longest time it was recommended that on launch, the macOS StoreKit app check for the presence of the appStoreReceipt. If not present the app calls exist (173). This is no longer recommended as it rises the Authentication dialog which can be confusing to a user. Instead the advise now is to have the app continue along with the assumption that the user has no access to first time in-app purchase
Topic: App & System Services SubTopic: StoreKit Tags:
Replies
Boosts
Views
Activity
Jun ’22
When I restore updatedTransactions observe not called In In app purchase swift 4
Hello Team,Have a great day.Actually, I already purchase one item and now I restore that item but when I clicked on restore updatedTransactions observe not called so I can't restore my item. so please help me with this issue.Thanks in advance.
Replies
3
Boosts
0
Views
1.2k
Activity
Jul ’19
Reply to Purchases not always works
Roger,It's difficult to debug an issue given only a user level description of the problem. However, I can make some guesses. You indicated thatWith appleID-A i am on a iPad and buy the in-app purchase 'full-version'. Done, the app unlocks the full version as expected. With the same appleID-A I am also on an iPhone. I press the restore purchases but does not workThe likely reason why this happens is that the finishTransaction call was not made to complete the transaction in the iPad purchase. If the finishTransaction call is not made, the transaction remains incomplete and will not be restored when the restoreCompletedTransaction call is made. Another question - on the iPhone, was appleID-A defined as the iTunes/App Store user setting when the restoreCompletedTransaction call was made, or did you enter the id. My reason for asking is that if the addTransactionObserver call was initiated, it should have found the incompleteTransaction and processed it. The observer can only p
Topic: App & System Services SubTopic: StoreKit Tags:
Replies
Boosts
Views
Activity
Dec ’16
Reply to Restore button for self hosted content
You can handle 'restore' any way you want but you must provide a method whereby a user can recover their purchases on a new device that they purchase or on their current device after they delete (or restore from backup) any device that has your app.The normal way of restoring is to implement restoreCompletedTransactions and handle the restore exactly the same way you handled the original purchase except with a state 'restored' rather than 'purchased'.
Topic: App & System Services SubTopic: StoreKit Tags:
Replies
Boosts
Views
Activity
Jul ’17
Should in-app purchase restore be implemented when it is not useful for auto-renewable subscriptions?
I'm implementing an app that let users subscribe for extra storage to upload content. This is a monthly subscription and it is implemented as an auto-renewable subscription. An in-app purchase receipt will be used only once to confirm the purchase is successful and to get details like expiry date. Then the database is updated continuously with server-to-server notifications. However the app got rejected since Restore is not implemented. I simply added a restore button along with its functionality. But I don't know what to do when the restore is successful. For the scenario in this app how does transaction restoring can be useful?
Replies
0
Boosts
0
Views
574
Activity
Nov ’20
Reply to Restore purchase gives all users for free
If a purchase is available to restore then StoreKit calls updatedTransactions with a case of .restored. Whether or not there is a purchase to restore StoreKit calls paymentQueueRestoreCompletedTransactionsFinished to signal it is completed.Move your code that grants the purchase from paymentQueueRestoreCompletedTransactionsFinished to updatedTransactions.
Topic: App & System Services SubTopic: StoreKit Tags:
Replies
Boosts
Views
Activity
May ’17
Can in-app purchase be restored across Mac and iOS App Stores?
Hi,I have a app that is available on both Mac and iOS App Stores. I want to create an in-app purchase for additional features, but I would want the user to buy it on one of the devices and have it restorable on others, so they don't have to purchase the same IAP on both Mac and iOS. I know that this is easy to do between iPhone and iPads, even between different appIDs, but not sure if it applies to the Mac as well. Can someone clarify?I have looked and haven't found a straight answer to this.
Replies
0
Boosts
0
Views
328
Activity
Mar ’16
Reply to App store receipt URL not found on watchOS independent app targeting watchOS7+
Meanwhile I had to add this workaround for broken product purchase/restore on the watch: do the purchase or restore on the iPhone that syncs up the purchases to iCloud and later on the restore on the watch also fetches the purchases from the iCloud and uses those I cannot migrate to StoreKit 2, as I have WatchOS 7 and iOS 14 as a baseline.
Topic: App & System Services SubTopic: StoreKit Tags:
Replies
Boosts
Views
Activity
Nov ’22
Restorations of non-consumable purchases suddenly failing in an old app
Hi there,I've got an app which has been on sale for 5 years or so. It has a single non-consumable IAP to unlock the full app.In the last week I've had a couple of reports from people that restoring their purchase on a new device doesn't work. I've checked that they've actually made the correct purchase in the past, and that they're logged in with the same account they made the purchase with.The system has worked fine for several years (and a few million purchases), so it seems like something might have changed on Apple's end in the last few days. Does anyone know if there's a recent change that could cause this?Unfortunately I don't have details of error codes - the app (stupidly) just reports a generic error to the customer.Any help would be much appreciated!Thanks,Rob.
Replies
6
Boosts
0
Views
1.1k
Activity
Feb ’17
Reply to Appropriate in-app Type for Live Stream View
Hi,Thanks, I think we are closing on to a solution. Some related clarifcations:So if I store the purchases in the localStorage in one device with iCloud enabled on two or more devices, the purchases will reflect on all the devices, right?In case the user reinstalls the app on one or more devices the purchase data (NRS or cosumable) will be lost if the person has not logged in earlier to copy the rights, as our server will not have details of the purchase (could this happen if the user after a NRS or consumable purchase, immediately does an app reinstall?). For example a user has 2 devices A and B and has bought one Pass which got copied to both devices through localStorage and iCloud. Now the user does a reinstall on device B. So device A has a record of Pass purchase, and device B has no Passes after reinstall. So how will the sync happen between the 2 devices, will contents of A be copied to B automatically after reinstall? If 2 is an issue will it be sa
Topic: App & System Services SubTopic: StoreKit Tags:
Replies
Boosts
Views
Activity
Nov ’16
Reply to Universal Purchase Questions (Mac and iOS)
Seeking for the same infos, and one more :My two apps use one freemium IAP to unlock full features and renewable subscriptions for some contents.Merging subscriptions IAPsThe two freemium IAP are different, and the Mac version cost more. They will stay distincts in a possible merge scenario.But the subscriptions are the same and shared between Mac and iOS. At the time being, I had to have two products for each subscription, one for each Store with different product ID. Its currently up to our licence server processing to do the merging and allow content access for both versions whenever one environment does a purchase.It's completely unclear to me how and when to merge the two subscription products. If the Mac version vanishes by using the iOS bundle, what will happen to current purchases, both one time freemium and subscription. How will the users get the licences they paid for in the former (current) Mac version ? Specifically, will a merged app doing a restore purchase get all the purchases
Replies
Boosts
Views
Activity
Feb ’20
In-App purchases fail in Production in macOS
Since yesterday customers are charged for in-app purchases in macOS but app receipt does not indicate that.When they try restoring purchases, iTunes receipt validation service response indicates that there were no in-app purchases made. Reproduced that in production.Something is seriously wrong. Bug report 31368166.Please lodge your bug reports.
Replies
1
Boosts
0
Views
627
Activity
Mar ’17
Reply to How should I react to SKErrors with error code 0 on subscription starts?
Hi everyone! I've got the same error (SKError.Code.unknown, i.e. 0) and underlying message. It appears when a client tries to purchase the same product second time. It looks like this case shouldn't happen, because if all set correct, client shouldn't generate purchase second time. But I guess, it is easy to reproduce it having second device for the same appleId and initiating second purchase. Ways to reproduce: Client chooses product item AppStore shows message that such product has been purchased and is still active SKPaymentTransactionObserver gets error: SKError.Code.unknown with underlying message (as noticed in initial message of this thread) So, client knows what happened and transaction observer too. It is helpful for transaction observer as we can disable spinner on product items screen (for example), but what about other cases when we get such .unknown error code and other underlying messages? Should we show Unknown message happened to a client or just react on it
Topic: App & System Services SubTopic: StoreKit Tags:
Replies
Boosts
Views
Activity
Dec ’20