API для мониторинга адресов: как это работает и как его построить
Что делает API для мониторинга криптоадресов, как вебхуки доставляют события депозитов и выводов, и как обрабатывать подтверждения, повторные попытки и безопасность в продакшене.

API для мониторинга адресов отслеживает блокчейн-адреса за вас и сообщает вашему приложению, когда что-то происходит: поступает депозит, средства уходят, токен перемещается, транзакция подтверждается. Вместо того чтобы опрашивать узлы и самостоятельно декодировать сырые логи, вы регистрируете адрес, подписываетесь на события и получаете подписанный вебхук с деталями. Это руководство объясняет, как это работает, что проверить перед выбором или созданием такого API, и как справиться со сложными моментами: подтверждениями, повторными попытками, дубликатами и безопасностью.
Одна заметка насчет области применения. «Мониторинг адресов» в мире блокчейна означает две разные задачи. Первая — операционная: узнавать, когда деньги поступают на адрес, которым управляет ваше приложение, или покидают его, чтобы вы могли зачислить клиенту или выпустить заказ. Вторая — комплаенс: анализ поведения адресов во времени для выявления рискованной активности. Эта статья фокусируется на первой задаче, которая нужна большинству продуктовых команд, и объясняет, где начинается вторая.
TL;DR
- API для мониторинга адресов отслеживает выбранные блокчейн-адреса и отправляет события (входящие, исходящие, подтвержденные) на ваш сервер через вебхук, поэтому вам не нужно запускать узлы или опрашивать их.
- Хорошие события приходят уже декодированными: отправитель, получатель, токен, сумма и статус, а не сырые шестнадцатеричные логи.
- Обрабатывайте каждый вебхук как доставку «хотя бы один раз»: проверяйте подпись, удаляйте дубликаты по ID транзакции и зачисляйте средства только после выбранного вами уровня подтверждений.
- Операционный мониторинг (платежи) отличается от комплаенс-мониторинга (рисковые паттерны во времени); многим командам нужны оба, но из разных инструментов.
- Chaingateway предоставляет вам кошельки, переводы, декодированные данные и HMAC-подписанные вебхуки для Ethereum, Bitcoin, Tron, Solana, Polygon, BNB Chain и Arbitrum через один REST API.
Оглавление
- Что на самом деле делает API для мониторинга адресов
- Почему не просто запустить свои узлы и опрашивать их?
- Как работает мониторинг адресов на основе вебхуков
- Какие сети и типы адресов должна поддерживать система?
- Подтверждения, задержки и реорги: когда платеж считается реальным?
- Обработка повторных попыток и дублирующихся уведомлений
- Безопасность, аутентификация и лимиты запросов
- На что обратить внимание при выборе API для мониторинга адресов
- Наша перспектива: мониторинг — это продуктовая фича, а не задача по прокладке труб
- Попробуйте на своих адресах
- Минимальный чек-лист реализации
- FAQ
- Источники
Что на самом деле делает API для мониторинга адресов
Блокчейн — это публичный реестр, но он не звонит вам, когда что-то происходит. Ничто в протоколе не отправит сообщение в ваш бэкенд о том, что адрес 0xABC... получил 250 USDT. Кто-то должен читать новые блоки, фильтровать их по адресам, которые вас интересуют, декодировать результат в что-то осмысленное и уведомить вас. API для мониторинга адресов — это именно этот «кто-то», предлагаемый как сервис.
На практике API делает пять вещей:
- Регистрирует адреса. Вы добавляете адреса для отслеживания — обычно те, что сгенерировали для клиентов, счетов или внутренних кошельков.
- Считывает цепочку. Провайдер запускает ноды или индексеры для каждой сети и сканирует каждый новый блок.
- Сопоставляет активность. Находит переводы нативных монет и токенов, затрагивающие ваши отслеживаемые адреса.
- Декодирует данные. Необработанные транзакции и логи событий превращаются в читаемые поля: направление, символ токена, сумма с правильными десятичными знаками, комиссия, блок, статус.
- Доставляет события. Отправляет их на ваш эндпоинт, обычно в виде HTTPS POST вебхука, и позволяет запрашивать те же данные по требованию.
Что именно обнаруживается, зависит от цепочки. В Bitcoin это выходы (outputs), оплаченные на адрес. В Ethereum и других EVM-сетях — нативные переводы плюс токенные события, такие как логи Transfer ERC-20. В Tron охватываются TRX и токены TRC-20, через которые проходит большая доля платежного трафика стейблкоинов. На нашей странице API TRC20-адресов показано, как генерация и мониторинг адресов работают вместе в этой сети.
Операционный мониторинг против комплаенс-мониторинга
Эта фраза также встречается в мире комплаенса, и их не следует путать. Провайдеры с фокусом на комплаенс описывают мониторинг транзакций как постоянный анализ блокчейн-активности во времени, ищущий паттерны вроде структурирования, слоирования, аномальной скорости, использования миксеров, обхода санкций и активности спящих кошельков. Это разовая проверка кошелька, доведенная до логического конца: риск проявляется в поведении по множеству транзакций, и люди расследуют алерты.
API операционного мониторинга отвечает на более простой вопрос: «Пришел ли платеж, которого я жду, и является ли он финальным?». Если вы ведете регулируемый бизнес, вам, скорее всего, понадобятся оба слоя. Операционный слой питает ваш реестр и клиентский опыт. Комплаенс-слой — вашу команду рисков. Когда алерт требует глубокого разбора, например, прослеживания средств через несколько прыжков или подготовки отчета, пригодного для судебного процесса, этим занимаются специалисты по судебному аудиту подозрительных транзакций, а не то, для чего создан платежный вебхук.

Почему не запустить свои ноды и опрашивать их?
Справедливый вопрос, и для некоторых команд ответ — сделать именно так. Вот что вы берете на себя в этом случае.
- Операция нод. Каждой цепочке нужна своя нода или хостинговый эндпоинт, с обновлениями, ростом хранилища и обеспечением аптайма. Семь сетей — семь разных настроек.
- Логика, специфичная для цепочки. Модель UTXO Bitcoin, логи Ethereum, ресурсная модель Tron и аккаунтная модель Solana — каждой нужен свой код парсинга.
- Декодирование. Суммы токенов приходят как целые числа, требующие правильных десятичных знаков. События контрактов нуждаются в ABI. Внутренние переводы и батч-транзакции легко упустить.
- Обработка реоргов. Недавние блоки могут быть заменены. Ваш сканер должен это заметить и скорректировать себя.
- Доставка. После обнаружения события вам все равно нужны очередь, повторные попытки и схема подписи для безопасной доставки в ваши сервисы.
API мониторинга сводит большую часть этого к одной интеграции. Компромисс заключается в зависимости от провайдера, поэтому оценивайте его по надежности, качеству данных и тому, насколько чисто он передает вам события. Для более широкого обзора альтернатив см. наше сравнение шести типов блокчейн-API и когда использовать каждый.
Как работает мониторинг адресов на основе вебхуков
Типичный процесс состоит из четырех шагов, и он одинаков, سواء вы строите его сами или покупаете.
1. Создайте или зарегистрируйте адрес
Для платежей самый чистый шаблон — один адрес на клиента, счет или заказ. Когда платеж поступает на уникальный адрес, вы знаете, кто заплатил, не спрашивая мемо или референс. С Chaingateway вы можете создавать кошельки через API и использовать полученные адреса напрямую. Если клиенты предоставляют свои адреса для вывода, сначала проверьте их. Наш бесплатный валидатор крипто-адресов охватывает форматы Tron, Ethereum и BSC и служит удобным справочником, пока вы создаете свои собственные проверки.
2. Подпишитесь на события
Вы сообщаете API, какие адреса и типы событий важны и куда их отправлять: на ваш HTTPS-эндпоинт. Подписки могут быть такими узкими, как один адрес и один токен, или такими широкими, как каждый адрес в вашем аккаунте. Подробности об этой модели на странице блокчейн-вебхуки и уведомления о событиях.
3. Получите декодированную полезную нагрузку
Полезная полезная нагрузка сообщает вам без дополнительных запросов:
- сеть и хеш транзакции
- адреса отправителя и получателя
- актив (нативная монета или контракт токена и символ)
- сумму в человекочитаемом виде
- номер блока и статус подтверждения
- временную метку и уникальный ID события или доставки
Это разница между «предварительно декодированными» данными и сырыми данными цепочки. С сырыми данными вы пишете парсер. С декодированными — читаете поле.
4. Подтвердите, проверьте и действуйте
Ваш сервер проверяет подпись, сохраняет событие, быстро возвращает ответ 2xx и обрабатывает бизнес-логику асинхронно. Все, что идет после этого, такое как зачисление на счет или отправка заказа, зависит от правил, которые вы установили для подтверждений.

Какие сети и типы адресов должна поддерживать система?
Прежде чем принять обязательства, перечислите, с чем столкнется ваш продукт в следующем году, а не только сегодня. Оплата, начинающаяся с USDT в одной сети, часто через месяцы требует другой.
Проверьте покрытие:
- Нативные монеты и токены. Bitcoin, ETH, TRX, SOL, активы сети MATIC и BNB-chain, а также стандарты токенов, такие как ERC-20, BEP-20 и TRC-20.
- NFT. Если вы выпускаете или принимаете коллекционные предметы или билеты, вам также нужны события передачи в стиле ERC-721.
- Форматы адресов. У Bitcoin несколько форматов; цепи EVM используют один формат в разных сетях, что может привести к ошибкам, когда клиент отправляет в неправильной сети. Ваше приложение должно указывать ожидаемую сеть рядом с каждым адресом депозита.
- Исходящая активность. Многие инструменты отслеживают только депозиты. Если вы отправляете выплаты, вам нужен тот же декодированный вид исходящих транзакций и их статус.
Chaingateway охватывает Ethereum, Bitcoin, Tron, Solana, Polygon, BNB Chain и Arbitrum за единым блокчейн API, включая основные стандарты токенов и переводы NFT. Одна интеграция, одна форма полезной нагрузки, одна схема подписи.
Подтверждения, задержки и реорганизации: когда платёж считается реальным?
Первое уведомление — не окончательный вердикт. Транзакцию можно увидеть в мемпуле, она может быть включена в блок, а позже достичь уровня финальности, который вы сочтёте безопасным. Блокчейны здесь сильно отличаются: время блока, соглашения о подтверждениях и модели финальности неодинаковы в Bitcoin, Ethereum, Tron или Solana, поэтому ваши пороги должны устанавливаться отдельно для каждой сети и для каждой суммы.
Практическая политика выглядит так:
| Этап | Что это означает | Что должно делать ваше приложение |
|---|---|---|
| Обнаружено | Транзакция видна, но ещё не в блоке | Показывать «оплата ожидает»; не выпускать товары |
| Включено | Оно в блоке, с небольшим числом подтверждений | Зачислить ожидающий баланс для небольших сумм, если ваш риск это позволяет |
| Подтверждено | Достигнута выбранная вами глубина подтверждений | Зачислить на счёт, выпустить заказ |
| Неуспешно или отброшено | Была заменена, отменена или так и не замайнена | Откатить состояние ожидания и уведомить клиента |
Два правила помогут избежать проблем. Во-первых, масштабируйте требование к подтверждениям в зависимости от суммы на кону: небольшая подписка может допускать более низкий порог, чем крупный вывод средств. Во-вторых, делайте машину состояний явной в вашей базе данных. «Ожидает», «подтверждено» и «неуспешно» должны быть сохранёнными состояниями, а не выводимыми.
Также ожидайте, что события могут приходить с задержкой или не по порядку. Уведомление о подтверждении может дойти до вас раньше, чем медленный обработчик закончит обрабатывать уведомление об обнаружении. Используйте хеш транзакции и статус как источник правды, а не порядок прибытия.
Обработка повторных попыток и дублирующихся уведомлений
Доставка вебхуков по своей природе гарантирует «хотя бы один раз». Если ваш сервер не ответил вовремя или вернул ошибку, отправитель повторяет попытку, и иногда ваш первый ответ был получен, но подтверждение потерялось. Результат — дубликаты. Проектируйте с учётом этого с первого дня.
- Делайте обработчики идемпотентными. Храните уникальный ключ для каждого события, например, хеш транзакции плюс индекс лога или ID доставки, с ограничением уникальности в базе данных. Если ключ существует, возвращайте успех и ничего не делайте.
- Отвечайте быстро. Записывайте сырое событие в очередь или таблицу, возвращайте 200, а затем обрабатывайте. Медленные обработчики вызывают таймауты, которые вызывают повторы, которые вызывают дубликаты.
- Сверяйтесь. Вебхуки могут быть пропущены во время вашего собственного простоя. Запускайте периодическую задачу, которая запрашивает у API недавние транзакции по вашим активным адресам и сравнивает их с вашими записями. Это превращает потерянное событие из инцидента в отложенное исправление.
- Логируйте всё. Храните сырую полезную нагрузку, заголовок подписи и результат вашей обработки. Когда клиент скажет, что заплатил, вы захотите иметь доказательства за минуту, а не за час.
- Настройте алерты на тишину. Если адрес, который обычно получает трафик, не производит событий необычно долго, проверьте конвейер.
Безопасность, аутентификация и лимиты запросов
Эндпоинт, который зачисляет деньги по запросу, — это мишень. Относитесь к нему как к таковой.
Проверяйте каждый вебхук
Любой, кто найдет ваш URL, может отправить поддельное сообщение «оплата получена». Требовать подпись. Chaingateway подписывает запросы с помощью HMAC, поэтому ваш сервер может пересчитать подпись по телу запроса с общим секретом и отклонить всё, что не совпадает. Сравнивайте подписи с помощью функции постоянного времени и проверяйте их на сыром теле запроса до того, как какой-либо JSON-парсинг изменит его.
Защитите свои API-ключи
Храните ключи в менеджере секретов или переменных окружения, никогда — в клиентском коде или репозиториях. Используйте отдельные ключи для каждой среды и ротируйте их по расписанию и после любых изменений в штате. Мы собрали больше подобных привычек в наших шести советах по безопасности при использовании блокчейн-API.
Укрепляйте эндпоинт
- Обслуживайте его только по HTTPS.
- Используйте трудногадаемый путь, а если ваш провайдер публикует диапазоны исходных IP-адресов, разрешайте только их.
- Отклоняйте слишком большие тела запросов и неожиданные типы контента.
- Никогда не доверяйте суммам или адресам в вебхуке, которые вы не сопоставили со своими записями: адрес должен быть одним из выданных вами, а сумма должна иметь смысл для заказа.
Планируйте с учетом лимитов частоты запросов
Когда вы запрашиваете данные для сверки или пакетного поиска адресов, вы столкнетесь с лимитами запросов у любого провайдера. Кэшируйте то, что не меняется, объединяйте в пакеты там, где API это позволяет, используйте экспоненциальный бэк-офф при ответах с троттлингом и распределяйте запланированные задания, а не запускайте их все в начале часа. Знайте лимиты вашего тарифа до запуска, а не во время первого скачка трафика.
На что обратить внимание при выборе API для мониторинга адресов
Используйте этот чек-лист при сравнении провайдеров или принятии решения о самостоятельной разработке.
| Критерий | Почему это важно | Вопрос для уточнения |
|---|---|---|
| Покрытие сетей | Избегает второй интеграции при расширении | Входят ли все нужные мне сети и стандарты токенов в один API? |
| Декодированные данные | Уменьшает код парсеров и баги | Включают ли события токен, сумму, направление и статус? |
| Гарантии доставки | Определяет вашу работу по идемпотентности | Как обрабатываются повторные попытки, и есть ли ID доставки? |
| Подписи | Предотвращает поддельные платежи | Подписан ли каждый вебхук и как я могу его проверить? |
| Помощь с комиссиями и газом | Исходящие переводы проваливаются без правильной комиссии | Оценивает ли API газ и комиссии автоматически? |
| Инструменты для кошельков | Экономит на склеивании сервисов | Могу ли я создавать кошельки и отправлять переводы из того же API? |
| Модель ценообразования | Предсказуемость при масштабировании | Привязано ли ценообразование к уровням использования, которые я могу прогнозировать? |
Также полезно задать прямой вопрос: вам нужен только продукт для мониторинга или полный цикл «создать кошелек, получить, отправить, свериться»? Многие платежные проекты начинают только с мониторинга и в итоге хотят остальное. Наш обзор вариантов использования блокчейн-API показывает, как части склоняются к объединению, а статья об электронной коммерции разбирает пример оформления заказа.
Наша перспектива: мониторинг — это продуктовая фича, а не задача по прокладке труб
Мы общаемся со множеством команд, которые планируют «просто сканировать цепочку» сами. Первая версия работает за неделю. Проблемы начинаются в третьем месяце: реорг зачисляет платеж, который исчезает, токен с необычными десятичными знаками показывает неверную сумма, нода отстает в час пик, а поддержка гонится за клиентом, который клянется, что заплатил.
Именно поэтому мы построили Chaingateway вокруг опыта разработчика на всем цикле. Вы создаете кошелек, подписываетесь на его активность, получаете предварительно декодированные события, подписанные с помощью HMAC, и отправляете переводы с оценкой газа, выполненной за вас. Одни и те же формы запросов работают в Ethereum, Bitcoin, Tron, Solana, Polygon, BNB Chain и Arbitrum, поэтому добавление сети — это изменение конфигурации, а не новый проект, и вам никогда не нужно запускать ноду.
Наш совет: определите политику подтверждений рано, напишите идемпотентные обработчики до первого живого платежа и выполняйте сверку по расписанию. Эти три привычки важнее, чем выбор провайдера. API мониторинга должен облегчать их, а не заменять необходимость в них.
— Bitblade
Попробуйте на своих адресах
Если вы создаете платежи, депозиты или функции кошелька, вы можете увидеть, как мониторинг вписывается в полную интеграцию с Chaingateway. Вебхуки, создание кошельков, переводы токенов и NFT, декодированные данные транзакций и оценка газа поступают из одного REST API. Планы разделены по уровню использования и функциям: Plus — €49 в месяц (или €490 в год), Pro — €99 в месяц (€990 в год), Premium — €249 в месяц (€2 490 в год) и Enterprise — €499 в месяц (€4 990 в год). Вы начинаете с бесплатной пробной версии, а на странице цен представлены актуальные детали планов. Чтобы увидеть, как события попадают в ваше приложение, прочитайте о вебхуках Chaingateway.
Минимальный чек-лист реализации
Прежде чем ваш первый живой платеж, пройдитесь по этому списку.
- Создавайте один адрес на счет или клиента и показывайте ожидаемую сеть рядом с ним.
- Подпишите эти адреса на входящие и исходящие события.
- Предоставьте HTTPS-эндпоинт, который проверяет HMAC-подпись на теле запроса в исходном виде.
- Сохраняйте каждое событие с уникальным ключом и игнорируйте повторы.
- Переводите платежи через сохраненные состояния: ожидание, подтверждено, ошибка.
- Установите пороги подтверждений для каждой сети и для каждой суммы.
- Запланируйте задачу сверки с историей транзакций API.
- Настройте оповещения о неудачной доставке, длительных паузах и ошибках подписи.
- Протестируйте с небольшими реальными суммами в каждой поддерживаемой сети и токене, включая депозит в неверную сеть, чтобы заранее знать ответ вашей поддержки.
Источники
Рекомендуем
Часто задаваемые вопросы
Это сервис, который отслеживает блокчейн-адреса и сообщает об активности на них вашему приложению, обычно через вебхуки и конечную точку запроса. Вы получаете декодированные события, такие как входящий перевод токена или подтвержденный вывод, не запуская ноды самостоятельно.
Нет. Операционный мониторинг адресов сообщает вашему приложению, что платеж поступил или ушел. Комплаенс-мониторинг транзакций анализирует поведение во времени для выявления рисковых паттернов, и люди расследуют алерты. Регулируемые бизнесы часто используют оба.
Это зависит от сети и риска суммы, поэтому единого числа не существует. Установите порог для каждой цепочки, повышайте его для крупных сумм и храните состояния «ожидание» и «подтверждено» как отдельные в вашей базе данных.
Присвойте каждому событию уникальный ключ, например, хеш транзакции с индексом лога или ID доставки, и обеспечьте его уникальность через ограничение. Если ваш обработчик видит ключ, который уже сохранен, он возвращает успех и ничего больше не делает.
Да, если API мультичейн. Chaingateway охватывает Ethereum, Bitcoin, Tron, Solana, Polygon, BNB Chain и Arbitrum через один REST API, поэтому форма полезной нагрузки и схема подписи остаются неизменными.
Готовы собрать это сами? Получите свой API-ключ — 7-дневный пробный период, без карты — или посмотрите API блокчейна для полного справочника по эндпоинтам.