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

# Crypto Deposit Travel Rule

> Handling crypto deposits that need sender information before credit.

Stabyl may hold a confirmed crypto deposit until Travel Rule information is
submitted. The deposit is visible in wallet transaction reads, but funds are not
available while the transaction has `status: "hold"` and
`required_action.type: "travel_rule"`.

## Detecting The Action

Read wallet transactions as usual:

```bash theme={null}
curl https://api-staging.stabyl.com/v1/partner/wallets/transactions \
  -H "X-Api-Key: $STABYL_API_KEY"
```

When `required_action` is present, send a POST request to the `submission_url` with the required fields.

```json theme={null}
{
  "required_action": {
    "type": "travel_rule",
    "status": "required",
    "submission_url": "/wallets/crypto/deposits/019bd2d1-4e10-77ab-88d4-93f43d6a6df2/travel-rule"
  }
}
```

## Collected Fields

| Field               | Description                               |
| ------------------- | ----------------------------------------- |
| `sender_originator` | Legal name or business name of the sender |
| `sender_country`    | Sender country as ISO alpha-3 code        |
| `purpose`           | Purpose of the transfer                   |

Allowed `purpose` values are `personal_transfer`, `business_payment`,
`goods_or_services`, `investment_or_savings`, and `other`.

The requirements response includes those purpose values as field `options`, so
clients can render the select control directly from the API response.

## Status Changes

After the user submits the form, `required_action.status` becomes `submitted`.
The deposit remains unavailable until Stabyl completes clearance and credits the
wallet. Once credited, `required_action` is omitted from transaction responses.
