---
title: OrderTransaction - GraphQL Admin
description: >-
The `OrderTransaction` object represents a payment transaction that's
associated with an order. An order
transaction is a specific action or event that happens within the context of
an order, such as a customer paying
for a purchase or receiving a refund, or other payment-related activity.
Use the `OrderTransaction` object to capture the complete lifecycle of a
payment, from initial
authorization to final settlement, including refunds and currency exchanges.
Common use cases for using the
`OrderTransaction` object include:
- Processing new payments for orders
- Managing payment authorizations and captures
- Processing refunds for returned items
- Tracking payment status and errors
- Managing multi-currency transactions
- Handling payment gateway integrations
Each `OrderTransaction` object has a
[`kind`](https://shopify.dev/docs/api/admin-graphql/latest/enums/OrderTransactionKind)
that defines the type of transaction and a
[`status`](https://shopify.dev/docs/api/admin-graphql/latest/enums/OrderTransactionStatus)
that indicates the current state of the transaction. The object stores
detailed information about payment
methods, gateway processing, and settlement details.
Learn more about [payment
processing](https://help.shopify.com/manual/payments)
and [payment gateway
integrations](https://www.shopify.com/ca/payment-gateways).
api_version: 2026-01
api_name: admin
type: object
api_type: graphql
source_url:
html: 'https://shopify.dev/docs/api/admin-graphql/latest/objects/OrderTransaction'
md: >-
https://shopify.dev/docs/api/admin-graphql/latest/objects/OrderTransaction.md
---
# OrderTransaction
object
Requires `read_orders` access scope or `read_marketplace_orders` access scope.
The `OrderTransaction` object represents a payment transaction that's associated with an order. An order transaction is a specific action or event that happens within the context of an order, such as a customer paying for a purchase or receiving a refund, or other payment-related activity.
Use the `OrderTransaction` object to capture the complete lifecycle of a payment, from initial authorization to final settlement, including refunds and currency exchanges. Common use cases for using the `OrderTransaction` object include:
* Processing new payments for orders
* Managing payment authorizations and captures
* Processing refunds for returned items
* Tracking payment status and errors
* Managing multi-currency transactions
* Handling payment gateway integrations
Each `OrderTransaction` object has a [`kind`](https://shopify.dev/docs/api/admin-graphql/latest/enums/OrderTransactionKind) that defines the type of transaction and a [`status`](https://shopify.dev/docs/api/admin-graphql/latest/enums/OrderTransactionStatus) that indicates the current state of the transaction. The object stores detailed information about payment methods, gateway processing, and settlement details.
Learn more about [payment processing](https://help.shopify.com/manual/payments) and [payment gateway integrations](https://www.shopify.com/ca/payment-gateways).
## Fields
* accountNumber
[String](https://shopify.dev/docs/api/admin-graphql/latest/scalars/String)
The masked account number associated with the payment method.
* amountRoundingSet
[MoneyBag](https://shopify.dev/docs/api/admin-graphql/latest/objects/MoneyBag)
The rounding adjustment applied on the cash amount in shop and presentment currencies.
* amountSet
[MoneyBag!](https://shopify.dev/docs/api/admin-graphql/latest/objects/MoneyBag)
non-null
The amount and currency of the transaction in shop and presentment currencies.
* authorizationExpiresAt
[DateTime](https://shopify.dev/docs/api/admin-graphql/latest/scalars/DateTime)
The time when the authorization expires. This field is available only to stores on a Shopify Plus plan.
* createdAt
[DateTime!](https://shopify.dev/docs/api/admin-graphql/latest/scalars/DateTime)
non-null
Date and time when the transaction was created.
* currencyExchangeAdjustment
[CurrencyExchangeAdjustment](https://shopify.dev/docs/api/admin-graphql/latest/objects/CurrencyExchangeAdjustment)
An adjustment on the transaction showing the amount lost or gained due to fluctuations in the currency exchange rate.
* device
[PointOfSaleDevice](https://shopify.dev/docs/api/admin-graphql/latest/objects/PointOfSaleDevice)
The Shopify Point of Sale device used to process the transaction.
* errorCode
[OrderTransactionErrorCode](https://shopify.dev/docs/api/admin-graphql/latest/enums/OrderTransactionErrorCode)
A standardized error code, independent of the payment provider.
* fees
[\[TransactionFee!\]!](https://shopify.dev/docs/api/admin-graphql/latest/objects/TransactionFee)
non-null
The transaction fees charged on the order transaction. Only present for Shopify Payments transactions.
* formattedGateway
[String](https://shopify.dev/docs/api/admin-graphql/latest/scalars/String)
The human-readable payment gateway name used to process the transaction.
* gateway
[String](https://shopify.dev/docs/api/admin-graphql/latest/scalars/String)
The payment gateway used to process the transaction.
* id
[ID!](https://shopify.dev/docs/api/admin-graphql/latest/scalars/ID)
non-null
A globally-unique ID.
* kind
[OrderTransactionKind!](https://shopify.dev/docs/api/admin-graphql/latest/enums/OrderTransactionKind)
non-null
The kind of transaction.
* location
[Location](https://shopify.dev/docs/api/admin-graphql/latest/objects/Location)
The physical location where the transaction was processed.
* manuallyCapturable
[Boolean!](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Boolean)
non-null
Whether the transaction can be manually captured.
* manualPaymentGateway
[Boolean!](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Boolean)
non-null
Whether the transaction is processed by manual payment gateway.
* maximumRefundableV2
[MoneyV2](https://shopify.dev/docs/api/admin-graphql/latest/objects/MoneyV2)
Specifies the available amount with currency to refund on the gateway. This value is only available for transactions of type `SuggestedRefund`.
* multiCapturable
[Boolean!](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Boolean)
non-null
Whether the transaction can be captured multiple times.
* order
[Order](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order)
The associated order.
* parentTransaction
[OrderTransaction](https://shopify.dev/docs/api/admin-graphql/latest/objects/OrderTransaction)
The associated parent transaction, for example the authorization of a capture.
* paymentDetails
[PaymentDetails](https://shopify.dev/docs/api/admin-graphql/latest/unions/PaymentDetails)
The payment details for the transaction.
* paymentIcon
[Image](https://shopify.dev/docs/api/admin-graphql/latest/objects/Image)
The payment icon to display for the transaction.
* maxWidth
[Int](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Int)
Deprecated
### Arguments
* maxHeight
[Int](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Int)
Deprecated
* crop
[CropRegion](https://shopify.dev/docs/api/admin-graphql/latest/enums/CropRegion)
Deprecated
* scale
[Int](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Int)
DeprecatedDefault:1
***
* paymentId
[String](https://shopify.dev/docs/api/admin-graphql/latest/scalars/String)
The payment ID associated with the transaction.
* processedAt
[DateTime](https://shopify.dev/docs/api/admin-graphql/latest/scalars/DateTime)
Date and time when the transaction was processed.
* receiptJson
[JSON](https://shopify.dev/docs/api/admin-graphql/latest/scalars/JSON)
The transaction receipt that the payment gateway attaches to the transaction.
***
**Note:** \\ This field is \gateway-specific\ and \not a stable contract\. Its structure and contents can vary by payment gateway and may change without notice. Apps \shouldn\'t parse or rely on this field for business logic\; prefer typed fields on \\Order\Transaction\\ and related objects.
***
* settlementCurrency
[CurrencyCode](https://shopify.dev/docs/api/admin-graphql/latest/enums/CurrencyCode)
The settlement currency.
* settlementCurrencyRate
[Decimal](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Decimal)
The rate used when converting the transaction amount to settlement currency.
* shopifyPaymentsSet
[ShopifyPaymentsTransactionSet](https://shopify.dev/docs/api/admin-graphql/latest/objects/ShopifyPaymentsTransactionSet)
Contains all Shopify Payments information related to an order transaction. This field is available only to stores on a Shopify Plus plan.
* status
[OrderTransactionStatus!](https://shopify.dev/docs/api/admin-graphql/latest/enums/OrderTransactionStatus)
non-null
The status of this transaction.
* test
[Boolean!](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Boolean)
non-null
Whether the transaction is a test transaction.
* totalUnsettledSet
[MoneyBag](https://shopify.dev/docs/api/admin-graphql/latest/objects/MoneyBag)
Specifies the available amount with currency to capture on the gateway in shop and presentment currencies. Only available when an amount is capturable or manually mark as paid.
* user
[StaffMember](https://shopify.dev/docs/api/admin-graphql/latest/objects/StaffMember)
Staff member who was logged into the Shopify POS device when the transaction was processed.
### Deprecated fields
* amount
[Money!](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Money)
non-nullDeprecated
* amountV2
[MoneyV2!](https://shopify.dev/docs/api/admin-graphql/latest/objects/MoneyV2)
non-nullDeprecated
* authorizationCode
[String](https://shopify.dev/docs/api/admin-graphql/latest/scalars/String)
Deprecated
* maximumRefundable
[Money](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Money)
Deprecated
* paymentMethod
[PaymentMethods](https://shopify.dev/docs/api/admin-graphql/latest/enums/PaymentMethods)
Deprecated
* totalUnsettled
[Money](https://shopify.dev/docs/api/admin-graphql/latest/scalars/Money)
Deprecated
* totalUnsettledV2
[MoneyV2](https://shopify.dev/docs/api/admin-graphql/latest/objects/MoneyV2)
Deprecated
***
## Map
### Fields and connections with this object
* [CashTrackingSession.cashTransactions](https://shopify.dev/docs/api/admin-graphql/latest/objects/CashTrackingSession#field-CashTrackingSession.fields.cashTransactions)
* [Order.transactions](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order#field-Order.fields.transactions)
* [OrderPaymentStatus.transactions](https://shopify.dev/docs/api/admin-graphql/latest/objects/OrderPaymentStatus#field-OrderPaymentStatus.fields.transactions)
* [OrderTransaction.parentTransaction](https://shopify.dev/docs/api/admin-graphql/latest/objects/OrderTransaction#field-OrderTransaction.fields.parentTransaction)
* [OrderTransactionConnection.nodes](https://shopify.dev/docs/api/admin-graphql/latest/connections/OrderTransactionConnection#returns-nodes)
* [OrderTransactionEdge.node](https://shopify.dev/docs/api/admin-graphql/latest/objects/OrderTransactionEdge#field-OrderTransactionEdge.fields.node)
* [Refund.transactions](https://shopify.dev/docs/api/admin-graphql/latest/objects/Refund#field-Refund.fields.transactions)
* [Return.transactions](https://shopify.dev/docs/api/admin-graphql/latest/objects/Return#field-Return.fields.transactions)
* [SubscriptionBillingAttempt.transactions](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionBillingAttempt#field-SubscriptionBillingAttempt.fields.transactions)
* [SuggestedOrderTransaction.parentTransaction](https://shopify.dev/docs/api/admin-graphql/latest/objects/SuggestedOrderTransaction#field-SuggestedOrderTransaction.fields.parentTransaction)
### Possible type in
* [StoreCreditAccountTransactionOrigin](https://shopify.dev/docs/api/admin-graphql/latest/unions/StoreCreditAccountTransactionOrigin)
***
## Mutations
* [orderCapture](https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderCapture)
mutation
Captures payment for an authorized transaction on an order. Use this mutation to claim the money that was previously reserved by an authorization transaction.
The `orderCapture` mutation can be used in the following scenarios:
* To capture the full amount of an authorized transaction
* To capture a partial payment by specifying an amount less than the total order amount
* To perform multiple captures on the same order, as long as the order transaction is [multi-capturable](https://shopify.dev/docs/api/admin-graphql/latest/objects/ordertransaction#field-OrderTransaction.fields.multiCapturable)
***
**Note:** Multi-capture functionality is only available to stores on a \Shopify Plus plan\. For multi-currency orders, the \\currency\\ field is required and should match the presentment currency from the order.
***
After capturing a payment, you can:
* View the transaction details including status, amount, and processing information.
* Track the captured amount in both shop and presentment currencies.
* Monitor the transaction's settlement status.
Learn more about [order transactions](https://shopify.dev/docs/api/admin-graphql/latest/objects/OrderTransaction).
* input
[OrderCaptureInput!](https://shopify.dev/docs/api/admin-graphql/latest/input-objects/OrderCaptureInput)
required
### Arguments
The input for the mutation.
***
* [transactionVoid](https://shopify.dev/docs/api/admin-graphql/latest/mutations/transactionVoid)
mutation
Trigger the voiding of an uncaptured authorization transaction.
* parentTransactionId
[ID!](https://shopify.dev/docs/api/admin-graphql/latest/scalars/ID)
required
### Arguments
An uncaptured authorization transaction.
***
***
## OrderTransaction Mutations
### Mutated by
* [orderCapture](https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderCapture)
* [transactionVoid](https://shopify.dev/docs/api/admin-graphql/latest/mutations/transactionVoid)
***
## Interfaces
* [Node](https://shopify.dev/docs/api/admin-graphql/latest/interfaces/Node)
interface
***
## OrderTransaction Implements
### Implements
* [Node](https://shopify.dev/docs/api/admin-graphql/latest/interfaces/Node)