---
title: AppTransaction
framework: storekit
role: symbol
role_heading: Structure
path: storekit/apptransaction
---

# AppTransaction

Information that represents the customer’s purchase of the app, cryptographically signed by the App Store.

## Declaration

```swift
struct AppTransaction
```

## Mentioned in

Choosing a receipt validation technique Supporting business model changes by using the app transaction Validating receipts with the App Store

## Overview

Overview note: Session 10007:  What’s new with in-app purchase

## Topics

### Getting the signed app transaction

- [shared](storekit/apptransaction/shared.md)

### Getting the app transaction identifier

- [appTransactionID](storekit/apptransaction/apptransactionid.md)

### Getting the environment

- [environment](storekit/apptransaction/environment.md)
- [AppStore.Environment](storekit/appstore/environment.md)

### Getting app and version information

- [bundleID](storekit/apptransaction/bundleid.md)
- [appVersion](storekit/apptransaction/appversion.md)
- [originalAppVersion](storekit/apptransaction/originalappversion.md)
- [appID](storekit/apptransaction/appid.md)
- [appVersionID](storekit/apptransaction/appversionid.md)

### Getting the original platform

- [originalPlatform](storekit/apptransaction/originalplatform.md)
- [AppStore.Platform](storekit/appstore/platform.md)

### Getting purchase dates

- [originalPurchaseDate](storekit/apptransaction/originalpurchasedate.md)
- [preorderDate](storekit/apptransaction/preorderdate.md)

### Verifying the app transaction

- [deviceVerification](storekit/apptransaction/deviceverification.md)
- [deviceVerificationNonce](storekit/apptransaction/deviceverificationnonce.md)
- [signedDate](storekit/apptransaction/signeddate.md)

### Getting app transaction information in JSON format

- [jsonRepresentation](storekit/apptransaction/jsonrepresentation.md)

### Getting app transaction from the server

- [refresh()](storekit/apptransaction/refresh().md)

### Deprecated

- [originalPlatformStringRepresentation](storekit/apptransaction/originalplatformstringrepresentation.md)

### Structures

- [AppTransaction.AppTransactions](storekit/apptransaction/apptransactions.md)
- [AppTransaction.StoreType](storekit/apptransaction/storetype-swift.struct.md)

### Instance Properties

- [revocationDate](storekit/apptransaction/revocationdate.md)
- [storeType](storekit/apptransaction/storetype-swift.property.md)
- [storeTypeStringRepresentation](storekit/apptransaction/storetypestringrepresentation.md)

### Type Properties

- [all](storekit/apptransaction/all.md)

## Relationships

### Conforms To

- [Copyable](swift/copyable.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### App transaction

- [Supporting business model changes by using the app transaction](storekit/supporting-business-model-changes-by-using-the-app-transaction.md)
