Skip to main content
Reverse a previously processed transaction and return a payload that includes details of the resulting transaction.

Arguments

reverseTransactionInput
required
mutation reverseTransaction($reverseTransactionInput: ReverseTransactionInput!) {
  reverseTransaction(reverseTransactionInput: $reverseTransactionInput) {
    reverseTransactionResponse {
      cardDetails {
        paymentBrand
        last4
      }
      networkResponseDetails {
        processorResponseCode
        networkResponseCode
      }
      timestampUtc
      transactionId
      paymentId
      duration
      activityDate
      isDuplicateRequest
      tokenDetails {
        tokenizedPan
        token
      }
    }
    errors {
      ... on InternalServiceError {
        message
        dateTimeUtc
        errorDateTime
        transactionId
        processorResponseCode
      }
      ... on RuleInViolationError {
        message
        advice
        explanationOfRule
        ruleName
        processorResponseCode
        dateTimeUtc
        errorDateTime
        transactionId
      }
      ... on SyntaxOnNetworkResponseError {
        message
        attemptedNetwork
        processorResponseCode
        dateTimeUtc
        errorDateTime
        transactionId
      }
      ... on TimeoutOnNetworkResponseError {
        message
        waitTime
        attemptedNetwork
        processorResponseCode
        dateTimeUtc
        errorDateTime
        transactionId
      }
      ... on ValidationFailureError {
        message
        transactionId
        dateTimeUtc
        errorDateTime
        processorResponseCode
        fieldPath
        fieldName
        valueInError
      }
      ... on PriorTransactionNotFoundError {
        message
        unknownTransactionId
        processorResponseCode
        dateTimeUtc
        errorDateTime
        transactionId
      }
    }
  }
}

Response

Returns a ReverseTransactionPayload
{
  "data": {
    "reverseTransaction": {
      "reverseTransactionResponse": ReverseTransactionResponse,
      "errors": [
        InternalServiceError
      ]
    }
  }
}
Run in Playground