> ## Documentation Index
> Fetch the complete documentation index at: https://docs.reap.global/llms.txt
> Use this file to discover all available pages before exploring further.

# Get card transaction

> Retrieves card transaction details including merchant information, amounts, and lifecycle events. The response shape varies by transaction status.



## OpenAPI

````yaml /api-reference/openapi.json get /card-transactions/{id}
openapi: 3.1.0
info:
  title: Reap API
  version: 1.0.0
  description: Reap platform API
servers:
  - url: https://sandbox.api.reap.global
    description: Sandbox
  - url: https://prod.api.reap.global
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Accounts
  - name: Activities
  - name: Card Designs
  - name: Card Shipments
  - name: Card Transactions
  - name: Cards
  - name: Companies
  - name: Crypto Deposits
  - name: Policies
  - name: Simulation
  - name: Users
  - name: Virtual Asset Postings
  - name: Virtual Assets
  - name: Webhooks
paths:
  /card-transactions/{id}:
    get:
      tags:
        - Card Transactions
      summary: Get card transaction
      description: >-
        Retrieves card transaction details including merchant information,
        amounts, and lifecycle events. The response shape varies by transaction
        status.
      operationId: get_card-transactions
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Card transaction ID
            type: string
            format: uuid
        - name: Reap-Version
          in: header
          required: true
          schema:
            type: string
            enum:
              - '2025-02-14'
            description: API version (YYYY-MM-DD)
            example: '2025-02-14'
      responses:
        '200':
          description: >-
            Card transaction resource. The response shape varies by transaction
            status.
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/PendingCardTransaction'
                    title: Pending
                  - $ref: '#/components/schemas/ClearedCardTransaction'
                    title: Cleared
                  - $ref: '#/components/schemas/DeclinedCardTransaction'
                    title: Declined
                  - $ref: '#/components/schemas/VoidCardTransaction'
                    title: Void
        '404':
          description: Card transaction not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        const: CARD_TRANSACTION_NOT_FOUND
                      message:
                        type: string
                      detail:
                        anyOf:
                          - type: object
                            additionalProperties: {}
                          - type: 'null'
                    required:
                      - code
                      - message
                      - detail
                required:
                  - error
                title: CardTransactionNotFoundError
components:
  schemas:
    PendingCardTransaction:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Card transaction identifier
        accountId:
          type: string
          format: uuid
          description: Account linked to the card
        cardId:
          type: string
          format: uuid
          description: Card used for this transaction
        channel:
          type: string
          enum:
            - ATM
            - POS
            - ECOMMERCE
            - VISA_DIRECT
          description: Transaction channel
          example: ATM
        digitalWallet:
          anyOf:
            - type: string
              enum:
                - APPLE_PAY
                - GOOGLE_PAY
                - MERCHANT_TOKEN
              example: APPLE_PAY
            - type: 'null'
          description: Digital wallet used, or null if physical card
        originalCurrency:
          type: string
          examples:
            - USD
            - HKD
            - EUR
          description: Original transaction currency (merchant local currency)
        currency:
          type: string
          examples:
            - USD
            - HKD
            - EUR
          description: Card currency
        merchant:
          $ref: '#/components/schemas/CardTransactionMerchant'
        events:
          type: array
          items:
            $ref: '#/components/schemas/TransactionEvent'
          description: >-
            Chronologically sorted lifecycle events (oldest first). Provides the
            full audit trail of what happened to this transaction.
        occurredAt:
          type: string
          examples:
            - '2024-01-15T10:30:00Z'
          description: ISO 8601 timestamp of when the transaction was initiated
        createdAt:
          type: string
          examples:
            - '2024-01-15T10:30:00Z'
          description: ISO 8601 timestamp of creation
        updatedAt:
          type: string
          examples:
            - '2024-01-15T10:35:00Z'
          description: ISO 8601 timestamp of last update
        status:
          type: string
          const: PENDING
        originalAmount:
          $ref: '#/components/schemas/AmountBreakdown'
          description: Amount in the original transaction currency
        amount:
          $ref: '#/components/schemas/AmountBreakdown'
          description: Amount charged to the cardholder
        conversionRate:
          type: number
          minimum: 0
          examples:
            - 1
            - 0.128205
            - 7.812
          description: Conversion rate from the original currency to the card currency
      required:
        - id
        - accountId
        - cardId
        - channel
        - digitalWallet
        - originalCurrency
        - currency
        - merchant
        - events
        - occurredAt
        - createdAt
        - updatedAt
        - status
        - originalAmount
        - amount
        - conversionRate
      description: Authorized transaction that hasn't settled yet
    ClearedCardTransaction:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Card transaction identifier
        accountId:
          type: string
          format: uuid
          description: Account linked to the card
        cardId:
          type: string
          format: uuid
          description: Card used for this transaction
        channel:
          type: string
          enum:
            - ATM
            - POS
            - ECOMMERCE
            - VISA_DIRECT
          description: Transaction channel
          example: ATM
        digitalWallet:
          anyOf:
            - type: string
              enum:
                - APPLE_PAY
                - GOOGLE_PAY
                - MERCHANT_TOKEN
              example: APPLE_PAY
            - type: 'null'
          description: Digital wallet used, or null if physical card
        originalCurrency:
          type: string
          examples:
            - USD
            - HKD
            - EUR
          description: Original transaction currency (merchant local currency)
        currency:
          type: string
          examples:
            - USD
            - HKD
            - EUR
          description: Card currency
        merchant:
          $ref: '#/components/schemas/CardTransactionMerchant'
        events:
          type: array
          items:
            $ref: '#/components/schemas/TransactionEvent'
          description: >-
            Chronologically sorted lifecycle events (oldest first). Provides the
            full audit trail of what happened to this transaction.
        occurredAt:
          type: string
          examples:
            - '2024-01-15T10:30:00Z'
          description: ISO 8601 timestamp of when the transaction was initiated
        createdAt:
          type: string
          examples:
            - '2024-01-15T10:30:00Z'
          description: ISO 8601 timestamp of creation
        updatedAt:
          type: string
          examples:
            - '2024-01-15T10:35:00Z'
          description: ISO 8601 timestamp of last update
        status:
          type: string
          const: CLEARED
        originalAmount:
          $ref: '#/components/schemas/ClearedAmountBreakdown'
          description: Amount in the original transaction currency
        amount:
          $ref: '#/components/schemas/ClearedAmountBreakdown'
          description: Amount charged to the cardholder
        conversionRate:
          type: number
          minimum: 0
          examples:
            - 1
            - 0.128205
            - 7.812
          description: Conversion rate from the original currency to the card currency
      required:
        - id
        - accountId
        - cardId
        - channel
        - digitalWallet
        - originalCurrency
        - currency
        - merchant
        - events
        - occurredAt
        - createdAt
        - updatedAt
        - status
        - originalAmount
        - amount
        - conversionRate
      description: Fully settled transaction
    DeclinedCardTransaction:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Card transaction identifier
        accountId:
          type: string
          format: uuid
          description: Account linked to the card
        cardId:
          type: string
          format: uuid
          description: Card used for this transaction
        channel:
          type: string
          enum:
            - ATM
            - POS
            - ECOMMERCE
            - VISA_DIRECT
          description: Transaction channel
          example: ATM
        digitalWallet:
          anyOf:
            - type: string
              enum:
                - APPLE_PAY
                - GOOGLE_PAY
                - MERCHANT_TOKEN
              example: APPLE_PAY
            - type: 'null'
          description: Digital wallet used, or null if physical card
        originalCurrency:
          type: string
          examples:
            - USD
            - HKD
            - EUR
          description: Original transaction currency (merchant local currency)
        currency:
          type: string
          examples:
            - USD
            - HKD
            - EUR
          description: Card currency
        merchant:
          $ref: '#/components/schemas/CardTransactionMerchant'
        events:
          type: array
          items:
            $ref: '#/components/schemas/TransactionEvent'
          description: >-
            Chronologically sorted lifecycle events (oldest first). Provides the
            full audit trail of what happened to this transaction.
        occurredAt:
          type: string
          examples:
            - '2024-01-15T10:30:00Z'
          description: ISO 8601 timestamp of when the transaction was initiated
        createdAt:
          type: string
          examples:
            - '2024-01-15T10:30:00Z'
          description: ISO 8601 timestamp of creation
        updatedAt:
          type: string
          examples:
            - '2024-01-15T10:35:00Z'
          description: ISO 8601 timestamp of last update
        status:
          type: string
          const: DECLINED
        originalAmount:
          type: number
          minimum: 0
          examples:
            - 100.5
            - 0
            - 1234.99
          description: Attempted transaction amount in the original currency
        declineReason:
          $ref: '#/components/schemas/DeclineReason'
        policy:
          anyOf:
            - $ref: '#/components/schemas/DeclinedPolicy'
              title: DeclinedPolicy
            - type: 'null'
          description: >-
            The policy that caused the decline, or null if the transaction was
            declined for another reason (e.g. insufficient funds).
      required:
        - id
        - accountId
        - cardId
        - channel
        - digitalWallet
        - originalCurrency
        - currency
        - merchant
        - events
        - occurredAt
        - createdAt
        - updatedAt
        - status
        - originalAmount
        - declineReason
        - policy
      description: Transaction that was declined during authorization
    VoidCardTransaction:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Card transaction identifier
        accountId:
          type: string
          format: uuid
          description: Account linked to the card
        cardId:
          type: string
          format: uuid
          description: Card used for this transaction
        channel:
          type: string
          enum:
            - ATM
            - POS
            - ECOMMERCE
            - VISA_DIRECT
          description: Transaction channel
          example: ATM
        digitalWallet:
          anyOf:
            - type: string
              enum:
                - APPLE_PAY
                - GOOGLE_PAY
                - MERCHANT_TOKEN
              example: APPLE_PAY
            - type: 'null'
          description: Digital wallet used, or null if physical card
        originalCurrency:
          type: string
          examples:
            - USD
            - HKD
            - EUR
          description: Original transaction currency (merchant local currency)
        currency:
          type: string
          examples:
            - USD
            - HKD
            - EUR
          description: Card currency
        merchant:
          $ref: '#/components/schemas/CardTransactionMerchant'
        events:
          type: array
          items:
            $ref: '#/components/schemas/TransactionEvent'
          description: >-
            Chronologically sorted lifecycle events (oldest first). Provides the
            full audit trail of what happened to this transaction.
        occurredAt:
          type: string
          examples:
            - '2024-01-15T10:30:00Z'
          description: ISO 8601 timestamp of when the transaction was initiated
        createdAt:
          type: string
          examples:
            - '2024-01-15T10:30:00Z'
          description: ISO 8601 timestamp of creation
        updatedAt:
          type: string
          examples:
            - '2024-01-15T10:35:00Z'
          description: ISO 8601 timestamp of last update
        status:
          type: string
          const: VOID
        originalAmount:
          $ref: '#/components/schemas/AmountBreakdown'
          description: Amount in the original transaction currency
        amount:
          $ref: '#/components/schemas/AmountBreakdown'
          description: Amount charged to the cardholder
      required:
        - id
        - accountId
        - cardId
        - channel
        - digitalWallet
        - originalCurrency
        - currency
        - merchant
        - events
        - occurredAt
        - createdAt
        - updatedAt
        - status
        - originalAmount
        - amount
      description: Fully reversed authorization or zero-amount verification
    CardTransactionMerchant:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Merchant identifier
        name:
          type: string
          description: Merchant name
        city:
          anyOf:
            - type: string
            - type: 'null'
          description: Merchant city
        country:
          type: string
          minLength: 2
          maxLength: 2
          examples:
            - US
            - GB
            - DE
          description: ISO 3166-1 alpha-2 country code
        mccCode:
          type: string
          examples:
            - '5411'
            - '5812'
          description: Merchant Category Code
        mccCategory:
          type: string
          examples:
            - Grocery Stores
            - Eating Places & Restaurants
          description: MCC category description
      required:
        - id
        - name
        - city
        - mccCode
        - mccCategory
      description: Merchant details
    TransactionEvent:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Event identifier
        type:
          type: string
          enum:
            - AUTHORIZATION
            - CLEARING
            - REVERSAL
            - REFUND
            - DECLINE
          description: Lifecycle event type
          example: AUTHORIZATION
        originalAmount:
          type: number
          minimum: 0
          examples:
            - 100.5
            - 0
            - 1234.99
          description: Event amount in the event-level original currency
        originalCurrency:
          type: string
          examples:
            - USD
            - HKD
            - EUR
          description: >-
            Per-event original currency. Usually equals the parent transaction
            `originalCurrency`, but can differ when the card network reports a
            presentment (typically a clearing) in the bill currency (USD)
            instead of the merchant local currency.
        amount:
          type: number
          minimum: 0
          examples:
            - 100.5
            - 0
            - 1234.99
          description: Event amount charged to the cardholder (card currency)
        occurredAt:
          type: string
          examples:
            - '2024-01-15T10:30:00Z'
          description: ISO 8601 timestamp of when the event occurred
        createdAt:
          type: string
          examples:
            - '2024-01-15T10:30:05Z'
          description: ISO 8601 timestamp of when the event was recorded
      required:
        - id
        - type
        - originalAmount
        - originalCurrency
        - amount
        - occurredAt
        - createdAt
      description: A single lifecycle event on the transaction
    AmountBreakdown:
      type: object
      properties:
        authorized:
          type: number
          minimum: 0
          examples:
            - 100.5
            - 0
            - 1234.99
          description: Original authorized amount before reversals
        reversed:
          type: number
          minimum: 0
          examples:
            - 100.5
            - 0
            - 1234.99
          description: Total amount reversed (credited back)
        current:
          type: number
          minimum: 0
          examples:
            - 100.5
            - 0
            - 1234.99
          description: Effective current amount (authorized - reversed, minimum 0)
      required:
        - authorized
        - reversed
        - current
      description: Amount breakdown showing authorized, reversed, and current values
    ClearedAmountBreakdown:
      type: object
      properties:
        cleared:
          type: number
          minimum: 0
          examples:
            - 100.5
            - 0
            - 1234.99
          description: Total settled amount
        refunded:
          type: number
          minimum: 0
          examples:
            - 100.5
            - 0
            - 1234.99
          description: Total amount refunded
        current:
          type: number
          minimum: 0
          examples:
            - 100.5
            - 0
            - 1234.99
          description: Effective current amount (cleared - refunded, minimum 0)
      required:
        - cleared
        - refunded
        - current
      description: Amount breakdown showing cleared, refunded, and current values
    DeclineReason:
      type: object
      properties:
        code:
          type: string
          enum:
            - INSUFFICIENT_BALANCE
            - INSUFFICIENT_MASTER_BALANCE
            - CARD_NOT_ACTIVE
            - CARD_NOT_ACTIVATED
            - CARD_EXPIRED
            - CARD_FROZEN
            - CARD_BLOCKED
            - CARD_REPORTED_LOST
            - CARD_REPORTED_STOLEN
            - ACCOUNT_NOT_ACTIVE
            - INCORRECT_PIN
            - INCORRECT_CVV
            - INVALID_CARD_DETAILS
            - CONTACTLESS_NOT_SUPPORTED
            - TERMINAL_ERROR
            - CASH_SERVICE_NOT_AVAILABLE
            - WITHDRAWALS_NOT_ALLOWED
            - ATM_WITHDRAWAL_LIMIT_EXCEEDED
            - ATM_WITHDRAWAL_FREQUENCY_EXCEEDED
            - MERCHANT_CARD_TYPE_MISMATCH
            - MERCHANT_CATEGORY_CODE_NOT_ALLOWED
            - TRANSACTION_TYPE_NOT_ALLOWED
            - MERCHANT_NOT_ALLOWED
            - CHANNEL_NOT_ALLOWED
            - TRANSACTION_AMOUNT_LIMIT_EXCEEDED
            - SPEND_LIMIT_EXCEEDED
            - AUTHORIZATION_COUNT_LIMIT_EXCEEDED
            - TRANSACTION_NOT_ALLOWED
            - NETWORK_DECLINE
            - SUSPECTED_FRAUD
            - INTERNAL_ERROR
          description: >-
            Machine-readable decline reason code. Intended for client
            application logic (routing the cardholder to a top-up screen,
            prompting for PIN re-entry, ...). Do not display this string to
            cardholders directly; use `message` instead, or render your own copy
            keyed off `code`.
          example: INSUFFICIENT_BALANCE
        message:
          type: string
          description: >-
            Cardholder-facing description of the decline reason. Safe to render
            directly in your UI as a sensible default.
      required:
        - code
        - message
      description: Reason the transaction was declined
    DeclinedPolicy:
      type: object
      properties:
        id:
          type: string
          description: >-
            ID of the policy that declined the transaction. A UUID for your
            policies; a stable identifier for platform policies.
        type:
          type: string
          enum:
            - MERCHANT_RESTRICTION
            - CHANNEL_RESTRICTION
            - TRANSACTION_AMOUNT_LIMIT
            - SPEND_LIMIT
            - AUTHORIZATION_COUNT_LIMIT
          example: MERCHANT_RESTRICTION
        scopeType:
          type: string
          enum:
            - PROJECT
            - USER
            - CARD
          description: The level the policy was attached to.
          example: PROJECT
        name:
          type: string
          minLength: 1
          maxLength: 128
          description: Human-readable label.
      required:
        - id
        - type
        - scopeType
        - name
      description: The policy that declined the transaction.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key as Bearer token

````