# TransactionDetail

Request parameters for starting a transaction or refunding a transaction.


```swift
public struct TransactionDetail: @unchecked Sendable {

  public let amount: String

  public let referenceNumber: String

  public let transactionID: String

  public let posInformation: TyroTapToPaySDK.POSInformation

  public init(
    amount: String,
    referenceNumber: String,
    transactionID: String,
    posInformation: TyroTapToPaySDK.POSInformation
  )
}
```

## Parameters


```json
{
  "type": "object",
  "properties": {
    "amount": {
      "type": "String",
      "description": "The transaction amount in cents e.g. '1325' = $13.25"
    },
    "referenceNumber": {
      "type": "String",
      "description": "The identifier for the transaction and MUST be unique."
    },
    "transactionID": {
      "type": "String",
      "description": "The transaction ID, only set if the payment type is a refund."
    },
    "posInformation": {
      "type": "PosInformation",
      "description": "Information about the POS."
    }
  },
  "required": [
    "amount",
    "referenceNumber",
    "transactionID",
    "posInformation"
  ]
}
```