<!--
{
  "availability" : [
    "App Store Server API: 1.6.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AppStoreServerAPI",
  "identifier" : "/documentation/AppStoreServerAPI/Get-Refund-History",
  "metadataVersion" : "0.1.0",
  "role" : "Web Service Endpoint",
  "symbol" : {
    "kind" : "Web Service Endpoint",
    "modules" : [
      "App Store Server API"
    ],
    "preciseIdentifier" : "rest:app_store_server_api:get:v2-refund-lookup-{}"
  },
  "title" : "Get Refund History"
}
-->

# Get Refund History

Get a paginated list of all of a customer’s refunded in-app purchases for your app.

## Discussion

Call this endpoint to get the customer’s complete refund history for your app by providing the transaction identifier ([`transactionId`](/documentation/AppStoreServerAPI/transactionId)) for any of the customer’s in-app purchases. Each response ([`RefundHistoryResponse`](/documentation/AppStoreServerAPI/RefundHistoryResponse)) contains a maximum of 20 refunded transactions. If the [`hasMore`](/documentation/AppStoreServerAPI/hasMore) property in the response is `true`, call the endpoint again using the [`revision`](/documentation/AppStoreServerAPI/Get-Refund-History/revision) token from the response to get the next set of refunded transactions.

The response only includes App Store-approved refunds for any product type: consumable, non-consumable, auto-renewable subscriptions, and non-renewing subscriptions. For more information about product types, see [In-app purchase](https://developer.apple.com/in-app-purchase/).

The information in the response is the same as the information in one or more `REFUND` notifications (<doc://com.apple.documentation/documentation/AppStoreServerNotifications/notificationType>) from <doc://com.apple.documentation/documentation/AppStoreServerNotifications>. Use this API to retrieve any refund notifications you may have missed, such as during a server outage.

A successful response may have an empty `signedTransactions` array if the customer hasn’t received any App Store-approved refunds. To identify the date and reason code for a refund, see `revocationDate` and `revocationReason` in the [`JWSTransactionDecodedPayload`](/documentation/AppStoreServerAPI/JWSTransactionDecodedPayload).

The App Store Server API returns information based on the customer’s in-app purchase history regardless of whether the customer installs, removes, or reinstalls the app on their devices.

To get a customer’s full refund history for your app, start by calling the endpoint without any query parameters, as follows:

```javascript
GET https://api.storekit.apple.com/inApps/v2/refund/lookup/{anyTransactionId}
```

For subsequent requests, include the [`revision`](/documentation/AppStoreServerAPI/Get-Refund-History/revision) token from the previous [`RefundHistoryResponse`](/documentation/AppStoreServerAPI/RefundHistoryResponse).

```javascript
GET https://api.storekit.apple.com/inApps/v2/refund/lookup/{anyTransactionId}?revision={revision}
```

---

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)
