# Transaction Search

The block for finding an existing transaction. Configure which transaction types it searches (Sales Order, Cash Sale, Invoice, Estimate, etc.), which fields the user can search against, and which fields appear in the results.

It runs in one of two modes:

* **Load** — when the user picks a result, the full transaction (with line items) is published to the page so other blocks like Transaction Record can render it.
* **Filter** — lighter mode that just sets filter state for a downstream Transaction List, without loading a single transaction.

## Available in

* Page modules
* Dashboard modules
* Reports modules
* Order Form modules

## When to use

* Customer-service workflows where the agent needs to look up a past order.
* Order History pages where users browse their own past transactions.
* Edit-existing-order flows on Order Form pages (load an existing order back into the form).
* Reports pages where a user picks a date range or transaction type for the report below.

## Settings

| Setting       | Description                                                                                                      |
| ------------- | ---------------------------------------------------------------------------------------------------------------- |
| **Configure** | Opens the configuration modal — title, default record types, button labels, displayed fields, searchable fields. |

The configuration modal supports:

* **Title** — heading shown above the search.
* **Default Record Types** — which transaction types are searched by default (e.g. *salesorder, cashsale, invoice*).
* **Default Transaction** — pre-load a specific transaction by ID when the page opens (handy for *edit existing order* flows).
* **Search Button Label / Clear Button Label / Change Button Label** — text on the action buttons.
* **Display Fields** — fields shown in the result row.
* **Searchable Fields** — fields the search query checks.

The block also has a top-level **Mode** prop (Load or Filter) that's set when the workflow is built.

## How it works

1. The user chooses a transaction type (or accepts the defaults), enters a search term, and clicks Search.
2. Matching transactions appear in a card layout.
3. The user picks a result.
4. **Load mode** — the transaction's header fields and line items are loaded into the page's session state. Transaction Record (and any other reading block) renders the data.
5. **Filter mode** — the picked criteria flow as filter state to a downstream Transaction List block.

## Examples

**Customer-service order lookup.** Transaction Search in Load mode at the top of a Page module, with Transaction Record below it. Agent finds an order by ID; the record loads.

**Order edit.** Transaction Search in Load mode on an Order Form page, used at the start of an "edit existing order" flow.

**Report filter.** Transaction Search in Filter mode on a Reports page, driving a Report Widget that re-queries when the filter changes.

## Related

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Transaction Record</strong></td><td>The detail block that renders the transaction Transaction Search loads.</td><td><a href="/pages/of84ubYT3satrYOeSfPK">/pages/of84ubYT3satrYOeSfPK</a></td></tr><tr><td><strong>Transaction List</strong></td><td>The list block that responds to Filter-mode search criteria.</td><td><a href="/pages/0HBWjwooyav8Uibdnaus">/pages/0HBWjwooyav8Uibdnaus</a></td></tr><tr><td><strong>Transaction List Filter</strong></td><td>Standalone filter controls that pair with Transaction List.</td><td><a href="/pages/1qdFnI1BuBf3ocBi0hqu">/pages/1qdFnI1BuBf3ocBi0hqu</a></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.in8sync.com/client-admin-guide/active-workflows/getting-started/transaction-components/transaction-search.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
