<!--
{
  "availability" : [
    "iOS: 17.4.0 -",
    "iPadOS: 17.4.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "FinanceKit",
  "identifier" : "/documentation/FinanceKit/Transaction",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "FinanceKit"
    ],
    "preciseIdentifier" : "s:10FinanceKit11TransactionV"
  },
  "title" : "Transaction"
}
-->

# Transaction

A structure that represents a transaction relating to a specific financial account.

```
struct Transaction
```

## Overview

This can include transactions such as a deposit to or a withdrawn from bank account, a credit card transaction.

## Topics

### Instance Properties

[`let accountID: UUID`](/documentation/FinanceKit/Transaction/accountID)

The account ID the transaction belongs to.

[`let creditDebitIndicator: CreditDebitIndicator`](/documentation/FinanceKit/Transaction/creditDebitIndicator)

An indicator that describes if the transaction is a credit or a debit.

[`let foreignCurrencyAmount: CurrencyAmount?`](/documentation/FinanceKit/Transaction/foreignCurrencyAmount)

The total amount of the transaction, if it was carried out in a foreign currency.

[`let foreignCurrencyExchangeRate: Decimal?`](/documentation/FinanceKit/Transaction/foreignCurrencyExchangeRate)

The currency exchange rate, if the transaction was carried out in a foreign currency.

[`let id: UUID`](/documentation/FinanceKit/Transaction/id)

A unique internal ID.

[`let merchantCategoryCode: MerchantCategoryCode?`](/documentation/FinanceKit/Transaction/merchantCategoryCode)

The ISO 18245 category code for the transaction.

[`let merchantName: String?`](/documentation/FinanceKit/Transaction/merchantName)

The name of the merchant, if present.

[`let originalTransactionDescription: String`](/documentation/FinanceKit/Transaction/originalTransactionDescription)

The unmodified description of the transaction.

[`let postedDate: Date?`](/documentation/FinanceKit/Transaction/postedDate)

The date and time that the transaction was posted to the account.

[`let status: TransactionStatus`](/documentation/FinanceKit/Transaction/status)

The status of the transaction, if available.

[`let transactionAmount: CurrencyAmount`](/documentation/FinanceKit/Transaction/transactionAmount)

The total amount of the transaction.

[`let transactionDate: Date`](/documentation/FinanceKit/Transaction/transactionDate)

The time the transaction took place, if available.

[`let transactionDescription: String`](/documentation/FinanceKit/Transaction/transactionDescription)

A description of the transaction.

[`let transactionType: TransactionType`](/documentation/FinanceKit/Transaction/transactionType)

The type of the transaction.

## Relationships

### Conforms To

[`Equatable`](/documentation/Swift/Equatable)

[`Identifiable`](/documentation/Swift/Identifiable)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`Sendable`](/documentation/Swift/Sendable)

[`Decodable`](/documentation/Swift/Decodable)

[`Encodable`](/documentation/Swift/Encodable)

---

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)