Requires write_orders access scope. Also: The user must have capture_payments_for_orders permission.

Captures payment for an authorized transaction on an order. An order can only be captured if it has a successful authorization transaction. Capturing an order will claim the money reserved by the authorization. orderCapture can be used to capture multiple times as long as the OrderTransaction is multi-capturable. To capture a partial payment, the included amount value should be less than the total order amount. Multi-capture is available only to stores on a Shopify Plus plan.


The input for the mutation.


Was this section helpful?

The created capture transaction.

The list of errors that occurred from executing the mutation.


Was this section helpful?
Hide code
Mutation reference
Copy
mutation orderCapture($input: OrderCaptureInput!) {
  orderCapture(input: $input) {
    transaction {
      # OrderTransaction fields
    }
    userErrors {
      field
      message
    }
  }
}
Hide code
Input
Copy
{
  "input": {
    "amount": "100.57",
    "currency": "AED",
    "id": "gid://shopify/<objectName>/10079785100",
    "parentTransactionId": "gid://shopify/<objectName>/10079785100"
  }
}
input OrderCaptureInput {
  amount: Money!
  currency: CurrencyCode
  id: ID!
  parentTransactionId: ID!
}