Skip to main content
Этот гайд проведёт через полный цикл интеграции: получить API-ключ, подписать запрос, создать депозит и поймать webhook об оплате. Все примеры используют реальную схему подписи, проверенную против серверного гарда.
Базовый адрес в примерах — https://wallet.your-exchange.com. Замените его на base URL вашего инстанса (см. Окружения). Идентификатор ключа api_id в примерах — pk_live_a1b2c3d4, формат orderIdorder_1042.
1

Получите API-ключ

В личном кабинете создайте API-ключ для сайта. Вы получите пару:
  • api_id — публичный идентификатор ключа (уходит в заголовке X-Api-Id);
  • api_secret — секрет для подписи (показывается один раз, по сети не передаётся).
Там же задайте callback_url (куда слать webhooks) и, при необходимости, белый список IP.
Сохраните api_secret в защищённом хранилище сразу. Повторно его показать нельзя — только перевыпустить (rotate), что сделает старый секрет недействительным.
2

Соберите подпись

Каждый запрос подписывается HMAC-SHA256. Сообщение для подписи — X-Timestamp + "." + raw_request_body, ключ — ваш api_secret. Результат — строчный hex. Для запросов без тела (GET) тело — пустая строка, то есть сообщение принимает вид "<timestamp>." (timestamp, затем точка).
Подробнее (Python, PHP, разбор ошибок подписи) — Аутентификация.
3

Создайте депозит

Вызовите POST /v1/public/deposits. В ответ придёт uuid депозита, адрес на оплату (address) и, для memo-сетей, memo.
Ответ (пример)
orderId и expectedAmount опциональны. Без orderId платформа сгенерирует уникальный. Если expectedAmount опущен — ожидаемой суммой становится минимум актива (minDeposit); чтобы принять любую сумму, передайте expectedAmount: "0". Точный набор полей запроса и ответа — на странице Депозиты.
4

Покажите адрес клиенту

Отобразите data.addressdata.memo, если он не null). Клиент отправляет крипту на этот адрес. Для memo-сетей оплата без указания memo не будет привязана к депозиту — выводите memo явно и заметно.
5

Поймайте оплату

Webhook (рекомендуется). Когда депозит подтверждён, платформа отправит на ваш callback_url событие deposit.finalized. Заголовок X-Signature webhook’а подписан вашим callback_secret — обязательно проверьте подпись. См. Webhooks.Polling (запасной вариант). Опросите статус депозита: GET /v1/public/deposits/{uuid} или GET /v1/public/deposits/by-order-id/{orderId}. Поле status дойдёт до paid, paid_over или wrong_amount. См. Статусы депозитов.
cURL — проверка статуса (GET, тело пустое)
Для GET-запроса тело пустое, поэтому подписывается строка "<timestamp>." — timestamp, затем точка.

Дальше

Отправить выплату

Валюты и сети

Webhooks

Коды ошибок