> For the complete documentation index, see [llms.txt](https://docs.musepay.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.musepay.io/reference/api-reference/kyt-api/transaction-check.md).

# Transaction Check

{% hint style="warning" %}
Every request must contain [common parameters](/reference/api-reference/common-parameters.md).
{% endhint %}

Submits an on-chain transaction for asynchronous KYT risk screening.

<mark style="color:green;">`POST`</mark> `/v1/kyt/transaction-check`

## Request body

| Name                 | Type   | Required | Description                                                                                                    |
| -------------------- | ------ | -------- | -------------------------------------------------------------------------------------------------------------- |
| request\_id          | String | Yes      | Unique request identifier within your partner account. Reuse it only when retrying the same screening request. |
| chain                | String | Yes      | Blockchain network identifier, such as `TRX`.                                                                  |
| currency             | String | Yes      | Asset identifier on the specified network, such as `USDT`.                                                     |
| txn\_hash            | String | Yes      | Transaction hash. Must be 8–128 characters and contain only letters, numbers, underscores, or hyphens.         |
| destination\_address | String | No       | Destination address of the transaction. When supplied, it must be a valid blockchain address.                  |

## Request example

```json
{
  "request_id": "kyt-tx-202609100001",
  "chain": "TRX",
  "currency": "USDT",
  "txn_hash": "97a17b73d21d7bcc476d6053e7044b21948c49fd65d10f78d38c4536229c80a6",
  "destination_address": "TELGzjHK7bpMN6fHwkvZbVkraDf3C9uTFG"
}
```

## Response body

| Name         | Type    | Description                                                                                                                                        |
| ------------ | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| request\_id  | String  | The request identifier supplied by the partner.                                                                                                    |
| order\_no    | String  | MusePay order number for this screening request. Store it for subsequent result queries.                                                           |
| status       | Number  | Current [order status](/reference/enums/order-status.md). The initial response is normally `22` (Processing).                                      |
| risk\_level  | String  | Risk level returned by the screening provider. Returned if a completed result is replayed for the same `request_id`.                               |
| hit          | Boolean | Whether one or more risk rules were hit. Returned with a completed result.                                                                         |
| hit\_rules   | Array   | Risk rules hit by the transaction. Returned with a completed result.                                                                               |
| actions      | Array   | Actions produced by the risk engine. Returned with a completed result.                                                                             |
| result\_data | Object  | Structured risk metrics. Uses the [`result_data`](/reference/api-reference/kyt-api/query.md#result_data) structure and is returned when available. |

### `hit_rules`

| Name           | Type   | Description                                              |
| -------------- | ------ | -------------------------------------------------------- |
| rule\_code     | String | Code of the matched risk rule.                           |
| decision\_code | String | Decision code produced by the rule.                      |
| salience       | Number | Rule priority or salience.                               |
| result\_data   | Object | Provider-specific data associated with the matched rule. |

### `actions`

| Name         | Type   | Description                                                 |
| ------------ | ------ | ----------------------------------------------------------- |
| action\_code | String | Code of the action produced by the risk engine.             |
| carry\_param | String | Additional parameter carried by the action, when available. |

```json
{
  "code": "200",
  "message": "success",
  "data": {
    "request_id": "kyt-tx-202609100001",
    "order_no": "FEE202609100001",
    "status": 22
  }
}
```

{% hint style="info" %}
Poll [Query KYT Result](/reference/api-reference/kyt-api/query.md) until the status becomes `99` (Success), `44` (Failed), or `88` (Closed).
{% endhint %}
