Search code examples
ios7in-app-purchasereceipt

What are the circumstances in ios7 where an app won't have a receipt on the device


From reading the Apple docs [1], an app gets an updated receipt when it is downloaded, updated, or in-app purchases are restored. Is there ever a case where it won't exist at all?

Some specific cases where it is not clear:

  • if a user installs an app in ios6 and then updates to ios7 will the receipt be missing?
  • if a user restores a backup are receipts included in the backup/restore?

The reason for the question is to understand how many of an app's users might see the login prompt when the app has to retrieve the receipt from the server. And related how many users might hit an issue as they are offline when this happens.

[1] WWDC 2013 Session 308: Unified Receipt on iOS7 and OSX (only available to registered developers)


Solution

  • Answering this question: Is there ever a case where it won't exist at all?

    From this bit of the same presentation, I would conclude that there is a case where it might not exist, I haven't been able to find however, a case where the receipt won't exist. (See below)

    enter image description here

    • For consumable purchases and non renewing subscriptions, the receipt for those purchases will only be issued at the time of purchase. It will not be present in subsequent receipts.

    If a user installs an app on iOS6 and then updates to iOS7 will the receipt be missing?

    • I used iExplorer to check this by finding an app I downloaded when I had iOS6 and seeing if the receipt is still there. It is:

    enter image description here

    If a user restores a backup..

    • If an app is restored from iCloud, the receipt is still present.
      • I deleted an app
      • Reinstalled it from iCloud
      • Checked it if the receipt is still there
    • If a device is restored completely, I speculate that the receipt will still be present as all apps are redownloaded from the store in the normal manner.