> ## 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 a check deposit

> Retrieve a single check deposit by its ID.

Returns the details of a check deposited into a Lemma account, including its current status, hold information, and MICR data. Use this endpoint to poll a check's status after discovering it via the [List entity mail](/api-reference/list-entity-mail) endpoint.

## Path parameters

<ParamField path="check_deposit_id" type="string" required>
  The ID of the check deposit, prefixed with `check_deposit_`.
</ParamField>

## Response

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

<ResponseField name="amount" type="integer">
  The check amount in cents.
</ResponseField>

<ResponseField name="status" type="string">
  The processing status of the check. One of `pending`, `submitted`, `returned`,
  or `rejected`.
</ResponseField>

<ResponseField name="transaction_id" type="string | null">
  The ID for the transaction created by the check deposit. Null if no
  transaction has been created yet.
</ResponseField>

<ResponseField name="inbound_mail_item_id" type="string | null">
  The mail item this check was found in. Null if the check was not received via
  lockbox mail.
</ResponseField>

<ResponseField name="hold" type="object | null">
  Fund hold details. Present when deposited funds are held before becoming
  available. Null if there is no hold.

  <Expandable title="Hold object">
    <ResponseField name="status" type="string">
      The hold status. One of `held` or `complete`.
    </ResponseField>

    <ResponseField name="automatically_releases_at" type="string">
      [ISO 8601](/api-reference/timestamps) timestamp of when the hold will
      automatically release.
    </ResponseField>

    <ResponseField name="released_at" type="string | null">
      [ISO 8601](/api-reference/timestamps) timestamp of when the hold was
      released. Null if the hold has not been released yet.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="return" type="object | null">
  Return details, if the check deposit was returned.

  <Expandable title="Return object">
    <ResponseField name="returned_at" type="string">
      [ISO 8601](/api-reference/timestamps) timestamp of when the check deposit
      was returned.
    </ResponseField>

    <ResponseField name="reason" type="string | null">
      Why the check deposit was returned.
    </ResponseField>

    <ResponseField name="return_transaction_id" type="string | null">
      The transaction created when the check deposit was returned.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="micr" type="object | null">
  Fields read from the check's [MICR
  line](https://en.wikipedia.org/wiki/Magnetic_ink_character_recognition). Null
  when we have not submitted the check for deposit.

  <Expandable title="MICR object">
    <ResponseField name="routing_number" type="string">
      The routing number printed on the check.
    </ResponseField>

    <ResponseField name="account_number" type="string">
      The account number printed on the check.
    </ResponseField>

    <ResponseField name="auxiliary_on_us" type="string | null">
      An additional identifier from the MICR line. Business checks typically
      encode the check number here rather than in `serial_number`.
    </ResponseField>

    <ResponseField name="serial_number" type="string | null">
      The check number. For business checks, this may be null — look at
      `auxiliary_on_us` instead.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json 200 theme={null}
  {
    "id": "check_deposit_Tm6bXn9hRw3pFk7c",
    "amount": 100000,
    "status": "submitted",
    "transaction_id": "transaction_Ab5cDx3nKv8bTh2d",
    "inbound_mail_item_id": "inbound_mail_item_Kv7nWp3hTx9cBd5m",
    "hold": {
      "status": "held",
      "automatically_releases_at": "2026-03-19T14:00:00Z",
      "released_at": null
    },
    "return": null,
    "micr": {
      "routing_number": "021000021",
      "account_number": "9876543210",
      "auxiliary_on_us": null,
      "serial_number": "00012345"
    }
  }
  ```

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