---
title: "Retrieve a transaction"
method: GET
path: "/v2.1/merchants/{merchant_code}/transactions"
tags: ["Transactions"]
---

# Retrieve a transaction

`GET /v2.1/merchants/{merchant_code}/transactions`

Retrieves the full details of an identified transaction. The transaction resource is identified by a query parameter and *one* of following parameters is required:
- `id`
- `transaction_code`
- `foreign_transaction_id`
- `client_transaction_id`

## Path parameters

- `merchant_code` string, required

## Query parameters

- `id` string
- `transaction_code` string
- `foreign_transaction_id` string
- `client_transaction_id` string

## Response `200`

Returns the requested transaction resource.

- TransactionFull — Additional transaction fields used by history and detailed views.
  - `id` string — Unique ID of the transaction.
  - `transaction_code` string — Transaction code returned by the acquirer/processing entity after processing the transaction.
  - `amount` number, float — Total amount of the transaction.
  - `currency` 'BGN' | 'BRL' | 'CHF' | 'CLP' | 'COP' | 'CZK' | 'DKK' | 'EUR' | 'GBP' | 'HRK' | 'HUF' | 'NOK' | 'PLN' | 'RON' | 'SEK' | 'USD' — Three-letter [ISO4217](https://en.wikipedia.org/wiki/ISO_4217) code of the currency for the amount. Currently supported currency values are enumerated above.
  - `timestamp` string, date-time — Date and time of the creation of the transaction. Response format expressed according to [ISO8601](https://en.wikipedia.org/wiki/ISO_8601) code.
  - `status` 'SUCCESSFUL' | 'CANCELLED' | 'FAILED' | 'PENDING' | 'REFUNDED' — Current status of the transaction. - `PENDING`: The transaction has been created but its final outcome is not known yet. - `SUCCESSFUL`: The transaction completed successfully. - `CANCELLED`: The transaction was cancelled or otherwise reversed before completion. - `FAILED`: The transaction attempt did not complete successfully. - `REFUNDED`: The transaction was refunded in full or in part.
  - `payment_type` 'CASH' | 'POS' | 'ECOM' | 'RECURRING' | 'BITCOIN' | 'BALANCE' | 'MOTO' | 'BOLETO' | 'DIRECT_DEBIT' | 'APM' | 'UNKNOWN' — Payment type used for the transaction.
  - `installments_count` integer — Current number of the installment for deferred payments.
  - `merchant_code` string — Unique code of the registered merchant to whom the payment is made.
  - `vat_amount` number, float — Amount of the applicable VAT (out of the total transaction amount).
  - `tip_amount` number, float — Amount of the tip (out of the total transaction amount).
  - `entry_mode` 'BOLETO' | 'SOFORT' | 'IDEAL' | 'BANCONTACT' | 'EPS' | 'MYBANK' | 'SATISPAY' | 'BLIK' | 'P24' | 'GIROPAY' | 'PIX' | 'QR_CODE_PIX' | 'APPLE_PAY' | 'GOOGLE_PAY' | 'PAYPAL' | 'TWINT' | 'NONE' | 'CHIP' | 'MANUAL_ENTRY' | 'CUSTOMER_ENTRY' | 'MAGSTRIPE_FALLBACK' | 'MAGSTRIPE' | 'DIRECT_DEBIT' | 'CONTACTLESS' | 'MOTO' | 'CONTACTLESS_MAGSTRIPE' | 'N/A' — Entry mode of the payment details.
  - `auth_code` string — Authorization code for the transaction sent by the payment card issuer or bank. Applicable only to card payments.
  - `product_summary` string — Short description of the payment. The value is taken from the `description` property of the related checkout resource.
  - `payouts_total` integer — Total number of payouts to the registered user specified in the `user` property.
  - `payouts_received` integer — Number of payouts that are made to the registered user specified in the `user` property.
  - `payout_plan` 'SINGLE_PAYMENT' | 'TRUE_INSTALLMENT' | 'ACCELERATED_INSTALLMENT' — Payout plan of the registered user at the time when the transaction was made.
  - `foreign_transaction_id` string — External/foreign transaction id (passed by clients).
  - `client_transaction_id` string — Client transaction id.
  - `username` string, email — Email address of the registered user (merchant) to whom the payment is made.
  - `fee_amount` number — Transaction SumUp total fee amount.
  - `lat` number, float — Latitude value from the coordinates of the payment location (as received from the payment terminal reader).
  - `lon` number, float — Longitude value from the coordinates of the payment location (as received from the payment terminal reader).
  - `horizontal_accuracy` number, float — Indication of the precision of the geographical position received from the payment terminal.
  - `merchant_id` integer — SumUp merchant internal Id.
  - `device_info` Device — Details of the device used to create the transaction.
    - `name` string — Device name.
    - `system_name` string — Device OS.
    - `model` string — Device model.
    - `system_version` string — Device OS version.
    - `uuid` string — Device UUID.
  - `simple_payment_type` 'CASH' | 'CC_SIGNATURE' | 'ELV' | 'ELV_WITHOUT_SIGNATURE' | 'CC_CUSTOMER_ENTERED' | 'MANUAL_ENTRY' | 'EMV' | 'RECURRING' | 'BALANCE' | 'MOTO' | 'BOLETO' | 'APM' | 'BITCOIN' | 'CARD' — Simple name of the payment type.
  - `verification_method` 'none' | 'signature' | 'offline PIN' | 'online PIN' | 'offline PIN + signature' | 'na' — Verification method used for the transaction.
  - `card` CardResponse — Details of the payment card.
    - `last_4_digits` string — Last 4 digits of the payment card number.
    - `type` 'ALELO' | 'AMEX' | 'CONECS' | 'CUP' | 'DINERS' | 'DISCOVER' | 'EFTPOS' | 'ELO' | 'ELV' | 'GIROCARD' | 'HIPERCARD' | 'INTERAC' | 'JCB' | 'MAESTRO' | 'MASTERCARD' | 'PLUXEE' | 'SWILE' | 'TICKET' | 'VISA' | 'VISA_ELECTRON' | 'VISA_VPAY' | 'VPAY' | 'VR' | 'UNKNOWN' — Issuing card network of the payment card used for the transaction.
  - `elv_account` ElvCardAccount — Details of the ELV card account associated with the transaction.
    - `sort_code` string — ELV card sort code.
    - `last_4_digits` string — ELV card account number last 4 digits.
    - `sequence_no` integer — ELV card sequence number.
    - `iban` string — ELV IBAN.
  - `local_time` string, date-time — Local date and time of the creation of the transaction.
  - `payout_date` string, date — The date of the payout.
  - `payout_type` 'BANK_ACCOUNT' | 'PREPAID_CARD' — Payout type for the transaction.
  - `process_as` 'CREDIT' | 'DEBIT' — Debit/Credit.
  - `products` Product[] — List of products from the merchant's catalogue for which the transaction serves as a payment.
    - `name` string — Product name.
    - `price_label` string — Product description.
    - `price` number — Product price.
    - `vat_rate` number — VAT percentage.
    - `single_vat_amount` number — VAT amount for a single product.
    - `price_with_vat` number — Product price incl. VAT.
    - `vat_amount` number — VAT amount.
    - `quantity` integer — Product quantity.
    - `total_price` number — Quantity x product price.
    - `total_with_vat` number — Total price incl. VAT.
  - `vat_rates` object[] — List of VAT rates applicable to the transaction.
    - `rate` number — VAT rate.
    - `net` number — NET amount of products having this VAT rate applied.
    - `vat` number — VAT amount of this rate applied.
    - `gross` number — Gross amount of products having this VAT rate applied.
  - `transaction_events` TransactionEvent[] — Detailed list of events related to the transaction.
    - `id` integer — Unique ID of the transaction event.
    - `event_type` 'PAYOUT' | 'CHARGE_BACK' | 'REFUND' | 'PAYOUT_DEDUCTION' — Type of the transaction event.
    - `status` 'FAILED' | 'PAID_OUT' | 'PENDING' | 'RECONCILED' | 'REFUNDED' | 'SCHEDULED' | 'SUCCESSFUL' — Status of the transaction event. Not every value is used for every event type. - `PENDING`: The event has been created but is not final yet. Used for events that are still being processed and whose final outcome is not known yet. - `SCHEDULED`: The event is planned for a future payout cycle but has not been executed yet. This applies to payout events before money is actually sent out. - `RECONCILED`: The underlying payment has been matched with settlement data and is ready to continue through payout processing, but the funds have not been paid out yet. This applies to payout events. - `PAID_OUT`: The payout event has been completed and the funds were included in a merchant payout. - `REFUNDED`: A refund event has been accepted and recorded in the refund flow. This is the status returned for refund events once the transaction amount is being or has been returned to the payer. - `SUCCESSFUL`: The event completed successfully. Use this as the generic terminal success status for event types that do not expose a more specific business outcome such as `PAID_OUT` or `REFUNDED`. - `FAILED`: The event could not be completed. Typical examples are a payout that could not be executed or an event that was rejected during processing.
    - `amount` number — Amount of the event.
    - `due_date` string, date — Date when the transaction event is due to occur.
    - `date` string, date — Date when the transaction event occurred.
    - `installment_number` integer — Consecutive number of the installment that is paid. Applicable only payout events, i.e. `event_type = PAYOUT`.
    - `timestamp` string, date-time — Date and time of the transaction event.
  - `simple_status` 'SUCCESSFUL' | 'PAID_OUT' | 'CANCEL_FAILED' | 'CANCELLED' | 'CHARGEBACK' | 'FAILED' | 'REFUND_FAILED' | 'REFUNDED' | 'NON_COLLECTION' | 'PENDING' — High-level status of the transaction from the merchant's perspective. - `PENDING`: The payment has been initiated and is still being processed. A final outcome is not available yet. - `SUCCESSFUL`: The payment was completed successfully. - `PAID_OUT`: The payment was completed successfully and the funds have already been included in a payout to the merchant. - `FAILED`: The payment did not complete successfully. - `CANCELLED`: The payment was cancelled or reversed and is no longer payable or payable to the merchant. - `CANCEL_FAILED`: An attempt to cancel or reverse the payment was not completed successfully. - `REFUNDED`: The payment was refunded in full or in part. - `REFUND_FAILED`: An attempt to refund the payment was not completed successfully. - `CHARGEBACK`: The payment was subject to a chargeback. - `NON_COLLECTION`: The amount could not be collected from the merchant after a chargeback or related adjustment.
  - `links` Link[] — List of hyperlinks for accessing related resources.
    - `rel` string — Specifies the relation to the current resource.
    - `href` string, uri — URL for accessing the related resource.
    - `type` string — Specifies the media type of the related resource.
    - `min_amount` number, float — Minimum allowed amount for the refund.
    - `max_amount` number, float — Maximum allowed amount for the refund.
  - `events` Event[] — Compact list of events related to the transaction.
    - `id` integer — Unique ID of the transaction event.
    - `transaction_id` string — Unique ID of the transaction.
    - `type` 'PAYOUT' | 'CHARGE_BACK' | 'REFUND' | 'PAYOUT_DEDUCTION' — Type of the transaction event.
    - `status` 'FAILED' | 'PAID_OUT' | 'PENDING' | 'RECONCILED' | 'REFUNDED' | 'SCHEDULED' | 'SUCCESSFUL' — Status of the transaction event. Not every value is used for every event type. - `PENDING`: The event has been created but is not final yet. Used for events that are still being processed and whose final outcome is not known yet. - `SCHEDULED`: The event is planned for a future payout cycle but has not been executed yet. This applies to payout events before money is actually sent out. - `RECONCILED`: The underlying payment has been matched with settlement data and is ready to continue through payout processing, but the funds have not been paid out yet. This applies to payout events. - `PAID_OUT`: The payout event has been completed and the funds were included in a merchant payout. - `REFUNDED`: A refund event has been accepted and recorded in the refund flow. This is the status returned for refund events once the transaction amount is being or has been returned to the payer. - `SUCCESSFUL`: The event completed successfully. Use this as the generic terminal success status for event types that do not expose a more specific business outcome such as `PAID_OUT` or `REFUNDED`. - `FAILED`: The event could not be completed. Typical examples are a payout that could not be executed or an event that was rejected during processing.
    - `amount` number, float — Amount of the event.
    - `timestamp` string, date-time — Date and time of the transaction event.
    - `fee_amount` number, float — Amount of the fee related to the event.
    - `installment_number` integer — Consecutive number of the installment.
    - `deducted_amount` number, float — Amount deducted for the event.
    - `deducted_fee_amount` number, float — Amount of the fee deducted for the event.
  - `location` object — Details of the payment location as received from the payment terminal.
    - `lat` number, float — Latitude value from the coordinates of the payment location (as received from the payment terminal reader).
    - `lon` number, float — Longitude value from the coordinates of the payment location (as received from the payment terminal reader).
    - `horizontal_accuracy` number, float — Indication of the precision of the geographical position received from the payment terminal.
  - `tax_enabled` boolean — Indicates whether tax deduction is enabled for the transaction.

## Other responses

- `401` — The request is not authorized.
- `404` — The requested resource does not exist.

---

[API](https://skmtc.net/sumup/apis/sumup-rest-api.md) · [All operations](https://skmtc.net/sumup/apis/sumup-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sumup/sumup-rest-api/revisions/f50e1dc97523/schema)
