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

# QuickBooks: Search Purchases

Search and list purchases in QuickBooks Online. Supports SQL-like queries for filtering (WHERE), sorting (ORDER BY), and pagination. Returns an array of purchase transactions matching your criteria. Ideal for: expense reports, transaction lookups, audit trails, data exports.

![QuickBooks: Search Purchases logo](https://ai-icon.b3.fun/logo/quickbooks)
Catalog action Integrations pipedream:quickbooks

Search and list purchases in QuickBooks Online. Supports SQL-like queries for filtering (WHERE), sorting (ORDER BY), and pagination. Returns an array of purchase transactions matching your criteria. Ideal for: expense reports, transaction lookups, audit trails, data exports.


## At a Glance

| Field | Value |
| --- | --- |
| Action ID | `quickbooks-search-purchases` |
| Category | Integrations |
| Connector | `pipedream:quickbooks` |
| Requires gas | No |
| Funds movement | None declared |
| Tags | `pipedream`, `integration`, `oauth`, `quickbooks`, `accounting`, `bookkeeping`, `expense`, `finance`, `search`, `query` |

## Payload Schema

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `whereClause` | `string` | No | SQL-like WHERE clause for filtering \(e.g., "TxnDate &gt; '2024-01-01'" or "TotalAmt &gt; 1000"\) |
| `orderClause` | `string` | No | SQL-like ORDER BY clause \(e.g., "TxnDate DESC" or "TotalAmt ASC"\) |
| `maxResults` | `string` | No | Maximum number of results to return \(e.g., "50"\). Default is all results. |
| `startPosition` | `string` | No | Starting position for pagination \(e.g., "1" for first page, "51" for second page with maxResults=50\) |

## Result Schema

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `success` | `boolean` | Yes | Whether the search was successful |
| `data` | `object` | No | QuickBooks Query API response |
| `exports` | `object` | No | Pipedream exports \(if any\) |

## Examples

**Workflow node**

```json
{
  "type": "quickbooks-search-purchases",
  "payload": {
    "whereClause": "example-whereClause",
    "orderClause": "example-orderClause",
    "maxResults": "example-maxResults",
    "startPosition": "example-startPosition"
  },
  "children": [],
  "connector": {
    "type": "pipedream:quickbooks",
    "id": "conn_pipedream_quickbooks"
  }
}
```
  **Test with API**

```bash
curl -X POST "https://api.b3os.org/v1/actions/quickbooks-search-purchases/test" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "inputs": {
    "whereClause": "example-whereClause",
    "orderClause": "example-orderClause",
    "maxResults": "example-maxResults",
    "startPosition": "example-startPosition"
  }
}'
```

**Use expressions for dynamic values**

Payload fields can use workflow expressions such as `{{$trigger.body.amount}}`, `{{$nodes.fetch.result.price}}`, and `{{$props.asset}}` when the value should come from a trigger, prior node, or reusable workflow prop.