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

# Transaction monitoring

> Automatically evaluate transactions against configurable rules to detect suspicious activity, trigger compliance alerts, and halt high-risk operations in real time.

Corsa's transaction monitoring engine evaluates every transaction against your active rules in real time. When a rule matches, it can create a compliance alert, halt the transaction, or both — giving your team automated coverage across deposits, withdrawals, transfers, and on-chain activity.

***

## How it works

1. You define **rules** with conditions that describe suspicious patterns (e.g., "withdrawal over \$10,000 from a high-risk customer").
2. Each incoming transaction is evaluated against all **active** rules — automatically after ingestion, or [synchronously during ingestion](/transaction-monitoring/halting-transactions#synchronous-evaluation-inline-on-ingest) if you set `evaluateSynchronously` on the transaction.
3. When a rule matches, the configured **actions** fire — creating an alert, halting the transaction, or both.
4. Your compliance team triages the resulting alerts in the [Alerts](/case-management/alerts) queue.

***

## Rule lifecycle

Every rule follows a three-stage lifecycle:

| Status       | Meaning                                                                       |
| ------------ | ----------------------------------------------------------------------------- |
| **Draft**    | The rule is being authored or tested. It does not evaluate live transactions. |
| **Active**   | The rule runs against every incoming transaction in real time.                |
| **Disabled** | The rule is paused. It can be re-activated at any time.                       |

You can transition rules between states at any point: **Draft** → **Active** → **Disabled** → **Active**.

***

## Two ways to create rules

<CardGroup cols={2}>
  <Card title="Start from a template" icon="copy" href="/transaction-monitoring/rule-templates">
    Browse Corsa's library of pre-built templates for common compliance scenarios and copy one into your workspace as a draft.
  </Card>

  <Card title="Build from scratch" icon="wrench" href="/transaction-monitoring/building-rules">
    Use the no-code Rule Builder to define custom conditions, configure alert priority, and test before activating.
  </Card>
</CardGroup>

***

## Two ways to interact

You can manage rules through the **Corsa dashboard** (no-code Rule Builder) or programmatically through the **REST API** and **SDKs**.

| Approach      | Best for                                                                           |
| ------------- | ---------------------------------------------------------------------------------- |
| **Dashboard** | Compliance analysts building and testing rules visually.                           |
| **API / SDK** | Engineering teams automating rule management, CI/CD pipelines, or bulk operations. |

See the [Rules & Evaluation API](/transaction-monitoring/rules-api) for endpoint details.

***

## Explore this section

<CardGroup cols={2}>
  <Card title="Rule templates" icon="book-open" href="/transaction-monitoring/rule-templates">
    Browse and copy pre-built rules for common compliance scenarios.
  </Card>

  <Card title="Building rules" icon="pen-ruler" href="/transaction-monitoring/building-rules">
    Walk through the Rule Builder wizard step by step.
  </Card>

  <Card title="Conditions reference" icon="code" href="/transaction-monitoring/conditions-reference">
    Operators, entities, aggregations, time windows, and actions.
  </Card>

  <Card title="Testing rules" icon="flask-vial" href="/transaction-monitoring/testing-rules">
    Validate rules against historical transactions before going live.
  </Card>

  <Card title="Rules & Evaluation API" icon="square-terminal" href="/transaction-monitoring/rules-api">
    Manage rules and evaluate transactions programmatically.
  </Card>

  <Card title="Halting transactions" icon="hand" href="/transaction-monitoring/halting-transactions">
    Block high-risk transactions synchronously during ingestion.
  </Card>
</CardGroup>
