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

# Get transaction

> Retrieve a single transaction by its ID.

Returns a single transaction object.

## Path parameters

<ParamField path="transaction_id" type="string" required>
  The unique identifier of the transaction to retrieve.
</ParamField>

## Response

<ResponseField name="id" type="string">
  Unique identifier for the transaction.
</ResponseField>

<ResponseField name="account_id" type="string">
  The ID of the bank account this transaction belongs to.
</ResponseField>

<ResponseField name="amount" type="integer">
  The transaction amount in cents. Positive for credits (money in), negative for
  debits (money out).
</ResponseField>

<ResponseField name="occurred_at" type="string">
  [ISO 8601](/api-reference/timestamps) timestamp of when the transaction
  occurred.
</ResponseField>

<ResponseField name="source" type="object">
  Information about the origin of the transaction.

  <Expandable title="Source object">
    <ResponseField name="category" type="string">
      The type of transaction source. We will add additional values for this
      enum over time; your application should be able to handle such additions
      gracefully. Not every transaction source will have additional details.
    </ResponseField>

    <ResponseField name="account_transfer_intention" type="object">
      <Expandable title="Account Transfer Intention object">
        <ResponseField name="description" type="string">
          The description given to this internal transfer between accounts.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="ach_transfer_intention" type="object">
      <Expandable title="ACH Transfer Intention object">
        <ResponseField name="statement_descriptor" type="string">
          The statement descriptor for this ACH transfer.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="ach_transfer_return" type="object">
      <Expandable title="ACH Transfer Return object">
        <ResponseField name="trace_number" type="string">
          The ACH trace number.
        </ResponseField>

        <ResponseField name="raw_return_reason_code" type="string">
          The raw return reason code.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="acquiring_card_payment" type="object">
      A payment received from a patient or payer via credit card.
    </ResponseField>

    <ResponseField name="acquiring_card_payment_fee" type="object">
      A fee charged for processing a card payment.
    </ResponseField>

    <ResponseField name="acquiring_chargeback" type="object">
      A chargeback dispute initiated by the cardholder.
    </ResponseField>

    <ResponseField name="acquiring_chargeback_fee" type="object">
      A fee charged by the card processor for handling a chargeback dispute.
    </ResponseField>

    <ResponseField name="acquiring_chargeback_reversal" type="object">
      A reversal of a chargeback that was previously filed by the cardholder.
    </ResponseField>

    <ResponseField name="acquiring_refund" type="object">
      A refund issued to a patient or payer who paid via credit card.
    </ResponseField>

    <ResponseField name="acquiring_refund_fee" type="object">
      A fee charged by the card processor for handling a refund.
    </ResponseField>

    <ResponseField name="card_authorization" type="object">
      <Expandable title="Card Authorization object">
        <ResponseField name="merchant_category_code" type="string">
          The merchant category code (MCC).
        </ResponseField>

        <ResponseField name="merchant_country" type="string">
          The merchant's country.
        </ResponseField>

        <ResponseField name="presentment_amount" type="string">
          The amount in the presentment currency.
        </ResponseField>

        <ResponseField name="presentment_currency" type="string">
          The presentment currency.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="card_financial" type="object">
      <Expandable title="Card Financial object">
        <ResponseField name="merchant_category_code" type="string">
          The merchant category code (MCC).
        </ResponseField>

        <ResponseField name="merchant_country" type="string">
          The merchant's country.
        </ResponseField>

        <ResponseField name="presentment_amount" type="string">
          The amount in the presentment currency.
        </ResponseField>

        <ResponseField name="presentment_currency" type="string">
          The presentment currency.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="card_refund" type="object">
      <Expandable title="Card Refund object">
        <ResponseField name="merchant_category_code" type="string">
          The merchant category code (MCC).
        </ResponseField>

        <ResponseField name="merchant_country" type="string">
          The merchant's country.
        </ResponseField>

        <ResponseField name="presentment_amount" type="string">
          The amount in the presentment currency.
        </ResponseField>

        <ResponseField name="presentment_currency" type="string">
          The presentment currency.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="card_settlement" type="object">
      <Expandable title="Card Settlement object">
        <ResponseField name="merchant_category_code" type="string">
          The merchant category code (MCC).
        </ResponseField>

        <ResponseField name="merchant_country" type="string">
          The merchant's country.
        </ResponseField>

        <ResponseField name="presentment_amount" type="string">
          The amount in the presentment currency.
        </ResponseField>

        <ResponseField name="presentment_currency" type="string">
          The presentment currency.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="check_deposit_acceptance" type="object">
      <Expandable title="Check Deposit Acceptance object">
        <ResponseField name="account_number" type="string">
          The check issuer's account number.
        </ResponseField>

        <ResponseField name="routing_number" type="string">
          The check issuer's routing number.
        </ResponseField>

        <ResponseField name="serial_number" type="string | null">
          The check number.
        </ResponseField>

        <ResponseField name="auxiliary_on_us" type="string | null">
          The auxiliary on-us field from the check.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="check_deposit_return" type="object">
      <Expandable title="Check Deposit Return object">
        <ResponseField name="return_reason" type="string">
          The reason the check deposit was returned.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="inbound_ach_transfer" type="object">
      <Expandable title="Inbound ACH Transfer object">
        <ResponseField name="trace_number" type="string">
          The ACH trace number.
        </ResponseField>

        <ResponseField name="originator_company_name" type="string">
          The name of the originating company.
        </ResponseField>

        <ResponseField name="originator_company_id" type="string">
          The ID of the originating company.
        </ResponseField>

        <ResponseField name="originator_company_entry_description" type="string">
          The entry description set by the originator.
        </ResponseField>

        <ResponseField name="originator_company_descriptive_date" type="string | null">
          The descriptive date set by the originator.
        </ResponseField>

        <ResponseField name="originator_company_discretionary_data" type="string | null">
          Discretionary data set by the originator.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="inbound_check_adjustment" type="object">
      <Expandable title="Inbound Check Adjustment object">
        <ResponseField name="reason" type="string">
          The reason for the check adjustment.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="inbound_real_time_payments_transfer_confirmation" type="object">
      <Expandable title="Inbound Real-Time Payments Transfer Confirmation object">
        <ResponseField name="debtor_name" type="string">
          The name of the sender.
        </ResponseField>

        <ResponseField name="creditor_name" type="string">
          The name of the creditor.
        </ResponseField>

        <ResponseField name="transaction_identification" type="string">
          The RTP transaction ID.
        </ResponseField>

        <ResponseField name="unstructured_remittance_information" type="string | null">
          Free-form remittance information.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="inbound_wire_reversal" type="object">
      <Expandable title="Inbound Wire Reversal object">
        <ResponseField name="input_message_accountability_data" type="string">
          The Fedwire input message accountability data (IMAD).
        </ResponseField>

        <ResponseField name="return_reason_code" type="string | null">
          The return reason code.
        </ResponseField>

        <ResponseField name="return_reason_additional_information" type="string | null">
          Additional information about the return reason.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="inbound_wire_transfer" type="object">
      <Expandable title="Inbound Wire Transfer object">
        <ResponseField name="input_message_accountability_data" type="string | null">
          The Fedwire input message accountability data (IMAD).
        </ResponseField>

        <ResponseField name="debtor_name" type="string | null">
          The name of the sender.
        </ResponseField>

        <ResponseField name="debtor_address_line1" type="string | null">
          The sender's address.
        </ResponseField>

        <ResponseField name="creditor_name" type="string | null">
          The name of the creditor.
        </ResponseField>

        <ResponseField name="unstructured_remittance_information" type="string | null">
          Free-form remittance information.
        </ResponseField>

        <ResponseField name="end_to_end_identification" type="string | null">
          The end-to-end ID.
        </ResponseField>

        <ResponseField name="unique_end_to_end_transaction_reference" type="string | null">
          The unique end-to-end transaction reference (UETR).
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="lemma_customer_deposit_bonus" type="object">
      A deposit bonus credited by Lemma.
    </ResponseField>

    <ResponseField name="lemma_customer_fee" type="object">
      A fee charged by Lemma.
    </ResponseField>

    <ResponseField name="lemma_customer_subscription_fee" type="object">
      A recurring subscription fee charged by Lemma.
    </ResponseField>

    <ResponseField name="lemma_loan" type="object">
      A loan draw from or a payment toward a Lemma loan.
    </ResponseField>

    <ResponseField name="real_time_payments_transfer_acknowledgement" type="object">
      <Expandable title="Real-Time Payments Transfer Acknowledgement object">
        <ResponseField name="unstructured_remittance_information" type="string | null">
          Free-form remittance information.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="wire_transfer_intention" type="object">
      <Expandable title="Wire Transfer Intention object">
        <ResponseField name="message_to_recipient" type="string">
          The message to the recipient.
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="counterparty" type="object | null">
  The other party in the transaction, if known.

  <Expandable title="Counterparty object">
    <ResponseField name="type" type="string">
      The kind of account the counterparty is. One of `bank_account`,
      `external_account`, or `fixed_fee_loan`.
    </ResponseField>

    <ResponseField name="bank_account" type="object | null">
      <Expandable title="Bank account object">
        <ResponseField name="id" type="string">
          The Lemma bank account ID of the other account in the transfer.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="external_account" type="object | null">
      <Expandable title="External account object">
        <ResponseField name="id" type="string">
          The [saved recipient](/api-reference/saved-recipients) ID the money
          was sent to.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="fixed_fee_loan" type="object | null">
      <Expandable title="Fixed fee loan object">
        <ResponseField name="id" type="string">
          The Lemma fixed fee loan ID of the other account in the transfer.
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json 200 theme={null}
  {
    "id": "transaction_Wp5mRx3nKv8bTh2d",
    "account_id": "account_Rv4nBt8xKw2pMh6s",
    "amount": -325000,
    "occurred_at": "2026-03-12T16:45:00Z",
    "source": {
      "category": "ach_transfer_intention"
    },
    "counterparty": {
      "type": "external_account",
      "external_account": {
        "id": "external_account_Bx5nTm8hKw3pVd7c"
      }
    }
  }
  ```

  ```json 404 theme={null}
  {
    "statusCode": 404,
    "error": "Not found",
    "message": "Transaction not found"
  }
  ```
</ResponseExample>
