---
title: "Void Transaction"
slug: "void-transaction"
updated: 2025-09-22T20:31:23Z
published: 2025-09-22T20:31:23Z
canonical: "developer.upgrade.com/void-transaction"
---
> ## Documentation Index
> Fetch the complete documentation index at: https://developer.upgrade.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Void Transaction
Post/v1/transactions/{transactionId}/void
In the event you need to void an already authorized transaction, such as when the customer is cancelling an item before it is fulfilled, or you are certain that an item is out of stock and cannot be fulfilled, you can submit a POST request to the void endpoint. You may fully or partially void a transaction by specifying an amount in the request, but it must be less than or equal to the remaining_amount available in the Transaction object.
When the void request is successfully processed, an updated Transaction object is returned in the response, with the `remaining_amount` updated to reflect the latest void event. Note that once an amount is voided, it is permanently deducted from the remaining_amount and you can no longer capture against the amount voided.
SecurityHTTPType bearer
Header parametersIdempotency-KeystringRequired
Idempotency key to prevent duplicate requests.
Path parameterstransactionIdstring (uuid) Required
Body parametersobject amountnumber (decimal)
Amount voided, captured, or refunded. Optional. If left blank, uses the full remaining amount.
Minimum0
currencystring
ISO 4217 currency code for this transaction. Required if amount is provided.
merchant_reference_idstring
Optional field for merchants to enter their own reference ID to aid in reconciliation.
Responses200
Successful response
Expand Allobject idstring (uuid)
The unique transaction_id generated when an authorization is submitted for an order.
original_amountnumber (decimal)
The original amount the transaction was authorized for.
remaining_amountnumber (decimal)
The remaining amount that can be captured.
captured_amountnumber (decimal)
The cumulative amount that has been successfully captured.
refunded_amountnumber (decimal)
The cumulative amount that has been successfully refunded.
authorization_expirationstring (date-time)
Once a transaction is authorized, the merchant has a limited number of days to capture on the remaining amount. RFC3339 format.
order_idstring (uuid)
The Flex Pay order that the transaction is authorized for.
createdstring (date-time)
Timestamp of when this transaction was first authorized. RFC3339 format.
currencystring
ISO 4217 currency code for the amount fields.
merchant_reference_idstring
Optional field for merchants to enter their own reference ID to aid in reconciliation.
statusstring
The current status of the transaction.
Valid values[
"AUTHORIZED",
"AUTHORIZED_FAILED",
"AUTHORIZATION_EXPIRED",
"CAPTURED",
"PARTIALLY_CAPTURED",
"REFUNDED",
"PARTIALLY_REFUNDED",
"VOIDED"
]
events Array of object (TransactionEventAto)
A list of transaction events. See TransactionEventAto object.
object idstring (uuid)
The unique event_id generated for the transaction event.
amountnumber (decimal)
The amount corresponding to the transaction event.
currencystring
ISO 4217 currency code for the amount field.
createdstring (date-time)
Timestamp of when this transaction event took place. RFC3339 format.
merchant_reference_idstring
Optional field for merchants to enter their own reference ID to aid in reconciliation.
typestring
The type of action that this event represents.
Valid values[
"AUTHORIZATION",
"VOID",
"CAPTURE",
"REFUND"
]
400
response for errors
object codeNamestring
The name of the error codes.
Valid values[
"INSUFFICIENT_FUNDS",
"OVER_CAPTURE_ERROR",
"OVER_REFUND_ERROR",
"OVER_VOID_ERROR",
"NO_AMOUNT_LEFT",
"LINE_EXPIRED_ERROR",
"AUTH_EXPIRED_ERROR",
"CURRENCY_MISMATCH_ERROR",
"TRANSACTION_NOT_FOUND",
"INCORRECT_ORDER_ID",
"INVALID_INPUT",
"NOT_READABLE_INPUT",
"IDEMPOTENCY_KEY_ALREADY_USED",
"MISSING_IDEMPOTENCY_KEY",
"UNEXPECTED_ERROR"
]
messagestring
401
Unauthorized (you don't have access)
403
Forbidden(you don't have the permission to perform this operation)
404
response for errors
object codeNamestring
The name of the error codes.
Valid values[
"INSUFFICIENT_FUNDS",
"OVER_CAPTURE_ERROR",
"OVER_REFUND_ERROR",
"OVER_VOID_ERROR",
"NO_AMOUNT_LEFT",
"LINE_EXPIRED_ERROR",
"AUTH_EXPIRED_ERROR",
"CURRENCY_MISMATCH_ERROR",
"TRANSACTION_NOT_FOUND",
"INCORRECT_ORDER_ID",
"INVALID_INPUT",
"NOT_READABLE_INPUT",
"IDEMPOTENCY_KEY_ALREADY_USED",
"MISSING_IDEMPOTENCY_KEY",
"UNEXPECTED_ERROR"
]
messagestring
500
response for errors
object codeNamestring
The name of the error codes.
Valid values[
"INSUFFICIENT_FUNDS",
"OVER_CAPTURE_ERROR",
"OVER_REFUND_ERROR",
"OVER_VOID_ERROR",
"NO_AMOUNT_LEFT",
"LINE_EXPIRED_ERROR",
"AUTH_EXPIRED_ERROR",
"CURRENCY_MISMATCH_ERROR",
"TRANSACTION_NOT_FOUND",
"INCORRECT_ORDER_ID",
"INVALID_INPUT",
"NOT_READABLE_INPUT",
"IDEMPOTENCY_KEY_ALREADY_USED",
"MISSING_IDEMPOTENCY_KEY",
"UNEXPECTED_ERROR"
]
messagestring