<!--
{
  "availability" : [
    "App Store Receipts: 1.0.0 - 1.7.0"
  ],
  "documentType" : "symbol",
  "framework" : "AppStoreReceipts",
  "identifier" : "/documentation/AppStoreReceipts",
  "metadataVersion" : "0.1.0",
  "role" : "Web Service",
  "symbol" : {
    "kind" : "Web Service",
    "modules" : [
      "App Store Receipts"
    ],
    "preciseIdentifier" : "AppStoreReceipts"
  },
  "title" : "App Store Receipts"
}
-->

# App Store Receipts

Validate app and In-App Purchase receipts with the App Store.

## Overview> Important:
> The ``doc://com.apple.appstorereceipts/documentation/AppStoreReceipts/Verify-Receipt`` endpoint is deprecated. To validate receipts on your server, follow the steps in <doc://com.apple.appstorereceipts/documentation/AppStoreReceipts/validating-receipts-on-the-device> on your server.

Your server can access the [`verifyReceipt`](/documentation/AppStoreReceipts/Verify-Receipt) endpoint to validate app and in-app transaction receipts. Submit a receipt to the App Store with your [shared secret](https://developer.apple.com/help/app-store-connect/configure-in-app-purchase-settings/generate-a-shared-secret-to-verify-receipts) to receive a JSON response containing the app information and in-app purchase details in the fields that make up the receipt. Each field or combination of fields provides insight you can use to deliver service and content to the user, as you define.

In-app transactions that your app doesn’t mark as finished using <doc://com.apple.documentation/documentation/StoreKit/SKPaymentQueue/finishTransaction(_:)> or <doc://com.apple.documentation/documentation/StoreKit/Transaction/finish()> remain in the App Store receipt. Auto-renewable subscriptions, non-renewing subscriptions, and non-consumables remain in the receipt indefinitely, and appear in the customer transaction history when you call the <doc://com.apple.documentation/documentation/AppStoreServerAPI/Get-Transaction-History-V1> endpoint.

The [`responseBody.Latest_receipt_info`](/documentation/AppStoreReceipts/responseBody/Latest_receipt_info-data.dictionary) object for auto-renewable subscriptions can grow over time because the renewal transactions stay in the receipt indefinitely. To optimize performance, the App Store may truncate receipts in the sandbox environment to remove old transactions.

You can test validating receipts in the sandbox environment. For more information, see <doc://com.apple.documentation/documentation/StoreKit/testing-in-app-purchases-with-sandbox> and [Test in-app purchases](https://developer.apple.com/help/app-store-connect/test-in-app-purchases-main/test-in-app-purchases).

You can validate receipts from the App Store using server-side receipt validation or on-device validation. For more information about receipt validation options, see <doc://com.apple.documentation/documentation/StoreKit/choosing-a-receipt-validation-technique>.

> Related sessions from WWDC22:
> Session 110404: [Implement proactive in-app purchase restore](https://developer.apple.com/videos/play/wwdc2022/110404/).

## Topics

### Receipt data

[App Store receipt data types](/documentation/AppStoreReceipts/app-store-receipt-data-types)

Data types of objects that return in the receipt.

### Local receipt validation

[Validating receipts on the device](/documentation/AppStoreReceipts/validating-receipts-on-the-device)

Verify the contents of app receipts by decoding and parsing the receipt on the device.

### Deprecated

[`verifyReceipt`](/documentation/AppStoreReceipts/Verify-Receipt)

Send a receipt to the App Store for verification.

[`requestBody`](/documentation/AppStoreReceipts/requestBody)

The JSON contents you submit with the request to the App Store.

[`responseBody`](/documentation/AppStoreReceipts/responseBody)

The JSON data that returns in the response from the App Store.

[`error`](/documentation/AppStoreReceipts/error)

Error information that returns in the response body when a request isn’t successful.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)