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

# QuickBooks Find Deposits

> Finds bank deposits in QuickBooks Online by date, amount, check number, bank account or missing Received From. Read-only.

Searches the connected QuickBooks Online company for bank deposits in a date range and returns each deposit with its lines. Display name **"QuickBooks Find Deposits"**. Off by default. Read-only.

The usual job: a user uploads a deposit slip or check log, the agent extracts each check, and this tool finds the matching deposit lines so [QuickBooks Update Deposit Received From](/docs/tools/quickbooks_update_deposit_received_from) can tag them with the client who paid.

## Authentication and enablement

Enable the tool on the agent and connect a **QuickBooks Online** integration (OAuth). The access token and company (`realm_id`) are injected from the connection.

## Inputs

* `date_from`, `date_to`: **required**, `YYYY-MM-DD`, at most 366 days apart. Search by the deposit date, not the date printed on each check: checks are often written days or weeks before they are deposited. When only check dates are known, search from the earliest check date to the date of the log.
* `amounts`: up to 100 amounts. Keeps deposits whose total, or any single line, equals one of them to the cent. Several checks deposited together usually post as one bank deposit for their sum, so pass every check amount and the deposit total in a single call; a deposit matched by its total is marked `total_matches_filter`.
* `check_number`: keeps deposits with a line whose check number matches, ignoring punctuation (`267-987821` matches `267987821`). Numbers of four or more digits are also searched in line descriptions, the deposit's doc number and its memo.
* `deposit_to_account_id`: the QuickBooks Account id of the bank account, from QuickBooks Lookup with `entity_type: Account`.
* `only_missing_received_from`: keeps only deposits with at least one editable line whose Received From is empty.
* `max_results`: deposits returned after filtering, default 50, max 200.

## Output

`deposits[]`, each with `deposit_id`, `txn_date`, `total_amount`, `deposit_to_account`, `doc_number`, `memo` and `lines[]`. Each line carries `line_id`, `amount`, `description`, `check_number`, `received_from` (`value`, `name`, `type`), `account`, `linked_to_payment`, `editable`, and `matches_filter` when it satisfied the `amounts` / `check_number` filters. `editable` means Update Deposit Received From can set its payer.

Also returned: `scanned_count`, `matched_count`, `returned_count` and `truncated`.

## Limits and side effects

* One QuickBooks query per call, however many amounts are passed: `SELECT * FROM Deposit WHERE TxnDate >= … AND TxnDate <= … MAXRESULTS 1000`. Amount, check number, account and Received From filters run on the returned page, because QuickBooks only filters deposits reliably by date.
* `truncated: true` means the date range held 1,000 or more deposits, or more matches than `max_results`. Narrow the range and search again.
* Each call is one metered Intuit read (CorePlus). It changes nothing in QuickBooks.
* Deposits still waiting in the QuickBooks bank feed ("For Review") are not exposed by the Intuit API, so this tool cannot see them until they are added in QuickBooks.

## Expected errors

* `date_from must be YYYY-MM-DD`, `date_to (…) is before date_from`, `date range is longer than 366 days`, `check_number must contain digits`, `deposit_to_account_id must be a numeric QuickBooks id`: validation, before any call.
* `access_token is required…`: no QuickBooks connection is bound to the agent.
* `quickbooks deposit query failed: quickbooks api error (HTTP …)`: QuickBooks' own fault, passed through verbatim (for example an expired connection).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.