---
title: "Get Payment Operations by Payment ID"
method: GET
path: "/payment/payments/{paymentId}/operations"
tags: ["Payments"]
---

# Get Payment Operations by Payment ID

`GET /payment/payments/{paymentId}/operations`

Find a payment operation from a given `paymentID`.

## Path parameters

- `paymentId` string, uuid, required

## Query parameters

- `includeLatency` boolean
- `includeLogs` boolean

## Response `200`

Success.

- object
  - `results` object[]
    - `id` string, uuid, required — Unique identifier of the Payment Operation in Payrails.
    - `createdAt` string, date-time — Exact date and time when the Payment Operation was created in Payrails. Possibly differs slightly from the date in the PSP.
    - `updatedAt` string, date-time — Exact date and time when the Payment Operation was updated in Payrails. Possibly differs slightly from the date in the PSP.
    - `paymentId` string, uuid — Unique identifier of the Payment that this Operation belongs to in Payrails.
    - `type` 'Authorize' | 'Preauthorize' | 'Capture' | 'Cancel' | 'Refund' | 'Credit' | 'SendNotification' | 'CaptureNotification' | 'RefundNotification' | 'CancelNotification' | 'AuthorizeNotification' | 'ChargebackNotification' | 'ChargebackReverseNotification' | 'Get' | 'Search' | 'GetToken' | 'Tokenize' | 'DisableToken' | 'Register' | 'Generate3DS' | 'Validate3DS' | 'PayerAuthInit' | 'PayerAuthCheckEnroll' | 'PayerAuthValidate' | 'RefundFailedNotification' | 'RefundReversedNotification' | 'CaptureFailedNotification' | 'ValidateRedirect' | 'RefundNotificationUpdated' — Operation Type that was executed in the Provider.
    - `reason` string — Reason why the operation was done.
    - `providerReference` string — Unique identifier of the Payment Operation in an external system. Some PSPs provide a specific ID for each update in the Payment, but most of them use the same as the original Payment.
    - `paymentStatus` string — The payment status just after the operation done.
    - `amount` object
      - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
      - `currency` string, required — ISO 3-letter currency code.
    - `result` 'Success' | 'Accepted' | 'Pending' | 'HTTPRedirectRequired' | 'FormRedirectRequired' | 'Unknown' | 'UnexpectedProviderResponse' | 'ProviderUnknownError' | 'ProviderConnectionError' | 'Timeout' | 'ProviderTimeout' | 'GenericRejection' | 'FraudRisk' | 'DuplicateOperation' | 'OperationNotAllowed' | 'InstrumentNotAllowed' | 'InvalidInstrument' | 'InsufficientBalance' | 'BlockedInstrument' | 'ExpiredInstrument' | 'ValidationError' | 'ParamsError' | 'ProviderConfigError' | 'InvalidSignature' | 'InternalServerError' | 'PayerCanceled' | 'AuthenticationError' | 'AuthenticationRequired' | 'LimitExceeded' | 'PaymentMethodNotSupported' | 'AuthorizationRevoked', required — Result of the Operation according to Payrails mapping from the provider response.
    - `responseCode` string — Original response code from the PSP, which Payrails interpreted for the result field.
    - `requiredActionDetails` object — In case a Provider requests an action to continue executing an Operation, this object contains the necessary information for it.
      - `redirectUrl` string — The URL that the Merchant should redirect the user to.
      - `redirectMethod` 'GET' | 'POST' — The HTTP method that should be used when redirecting to the `redirectUrl`.
      - `parameters` object — Map of parameters that are necessary for the redirection. In case the `redirectMethod` is `GET`, these parameters can be appended in the query string, but if it's `POST`, they should be sent via form.
    - `errorDetails` string — Error details from the provider.
    - `acquirerReference` string — Acquirer Reference Number (ARN) for the Payment Operation (only Refunds and Captures), which we receive from some of the Provider.
    - `workspaceId` string, uuid — Workspace ID that the workflow configuration belongs to.
    - `operationLogs` object[] — List of operation logs associated with this operation.
      - `id` string, uuid — Unique identifier of the Payment Operation Log in Payrails.
      - `createdAt` string, date-time — Exact date and time when the Payment Operation Log was created in Payrails. Possibly differs slightly from the date in the PSP.
      - `operationId` string, uuid — Unique identifier of the Payment Operation that this Log belongs to in Payrails.
      - `input` string — Original request object sent to the Provider.
      - `output` string — Original response object received from the Provider.
      - `workspaceId` string, uuid — Workspace ID that the workflow configuration belongs to.
    - `providerLatency` string — Latency of the operation on the provider side.
    - `totalLatency` string — Total latency of the operation.

## Other responses

- `400` — Bad Request.
- `401` — Unauthorized.
- `403` — Insufficient Scope.
- `404` — Not Found.
- `429` — Too Many Requests.

---

[API](https://skmtc.net/payrails/apis/payrails-api-reference.md) · [All operations](https://skmtc.net/payrails/apis/payrails-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/payrails/payrails-api-reference/versions/9dd2f0158582/schema)
