# Обмены

Кроссчейн обмен - это обмен одного актива на другой.

Для проведения обмена актива необходимо убедить что эта услуга доступна в выбранных вами сетях. Для этого запросите [список доступных монет](#95445bae-0a11-4a88-8c6c-84323c840424), найдите нужную вам монету, у нее будет список сетей `networks`, убедитесь что у сети актива, который вы хотите обменять флаг `allowCrosschainSwapFrom` раняется `true`, а у сети актива, который хотите получить `allowCrosschainSwapTo` равняется `true`.

Например:\
У вас есть **ETH** в сети **Ethereum**, в списте доступных монет вы должны найти монету **ETH**, далее у нее в списке `networks` найти сеть `ethereum` у нее должно быть `"allowCrosschainSwapFrom": true`

```json
{
  "success": true,
  "response": [
    ...
    {
      "currency": "ETH",
      ...
      "networks": [
        ...
        {
          "name": "ethereum",
          ...
          "allowCrosschainSwapFrom": true,
          ...
        }
        ...
      ]
    },
    ...
  ]
}

```

Вы хотети обменять его в **USDT** в сети **Tron**, в списте доступных монет вы должны найти монету **USDT**, далее у нее в списке `networks` найти сеть `tron` у нее должно быть `"allowCrosschainSwapTo": true`

```json
{
  "success": true,
  "response": [
    ...
    {
      "currency": "USDT",
      ...
      "networks": [
        ...
        {
          "name": "tron",
          ...
          "allowCrosschainSwapTo": true,
          ...
        }
        ...
      ]
    },
    ...
  ]
}

```

Узнайте [допустимый лимит](#8a0a5146-91bc-46f3-9b23-4afe6cbeca07) для суммы операции. Обратите внимание, что суммы лимитов указаны в **USD**, курсы таких стейблкойнов как **USDT**, **BUSD** etc не значительно отличаются от курса **USD**, а если вы хотите обменять другую монету, то вам надо будет получить курс к **USD** чтоб убедиться что ваша сумма удовлетворяет указанным лимитам.

Запросите [превью комиссии](#a620e864-114e-4a45-9a44-3a0522a6d7dc) чтобы получить `token`, его надо будет указать при [запросе создания операции](#b017e259-d4e7-41f7-ad60-d536fac2f14f) как `feeToken`.

Операция не исполняется сразу после запроса, необходимо подождать 1-3 минуты. Вы можете самостоятельно [узнать статус исполнения операции](#1566d2f4-6218-4235-9d15-29c0de888e55), а можете указать URL для получения [вебхука](#webhooks) в поле `webhookUrl` при создании.

Доступные статусы

| **Статус** | **Описание**                 |
| ---------- | ---------------------------- |
| CREATED    | Запрос зарегистрирован       |
| PENDING    | Обрабатывается               |
| ERROR      | Ошибка в процессе исполнения |
| REJECTED   | Запрос отклонен              |
| PROCESSED  | Успех                        |

## Схема взаимодействия с API

{% @mermaid/diagram content="sequenceDiagram
Merchant ->> Onchainpay: Запрос токена комиссии
Onchainpay ->> Merchant: Токен комиссии
Merchant ->> Onchainpay: Создание операции
Onchainpay ->> Merchant: Тело операции

```
Note over Onchainpay: Обработка операции

Onchainpay -->> Merchant: Вебхук с результатом операции" %}
```


---

# 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.onchainpay.io/ru/api-reference/09crosschain_swaps.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.
