Как отслеживать переводы от заданной суммы

Настройка минимальной суммы для одного актива в Monitoring: базовые единицы, включающая граница и проверка на искусственных данных.

Обновлено:

В Monitoring можно учитывать переводы от заданной суммы: для адреса выбранного проекта настройте «Минимальная сумма» в «Расширенных фильтрах». Порог задаётся целым числом в минимальных единицах выбранного актива. Условие включающее: перевод с суммой, равной порогу, подходит, а меньший — нет.

Начните с одного актива в одной сети. Например, задача может состоять в отслеживании входящих переводов определённого токена на ваш адрес. Это правило суммы перевода, а не цена в долларах, сумма всех поступлений за день или настройка сообщений внешнего провайдера.

Подготовьте актив и единицы

Выберите проект с доступной услугой «Мониторинг», публичный адрес и право изменять его настройки. Убедитесь, что нужная сеть доступна для рабочего наблюдения. Для добавления публичного адреса не нужны приватный ключ и фраза восстановления.

Зафиксируйте точный актив и число его десятичных разрядов. Названия токена недостаточно: сеть и идентификатор должны совпадать с выбранным способом наблюдения. Если принимаете USDT, не считайте разные сети или похожие токены одним активом. Выбор объяснён в статье «Чем отличаются сеть и токен».

Человеческую сумму нужно перевести в базовые единицы: умножить её на десять в степени числа десятичных разрядов актива. Не используйте округлённый долларовый эквивалент. Для актива с шестью разрядами порог 10 единиц записывается как 10000000. Это пример масштаба, а не универсальный порог для всех монет.

Шаг 1. Откройте добавление адреса

Откройте «Мониторинг», выберите проект и раздел «Адреса». Нажмите «Добавить адреса». На вкладке «Вручную» выберите сеть и введите публичный адрес. Дождитесь результата проверки формата; принадлежность адреса и готовность подключения проверяйте отдельно.

В блоке использования адреса выберите «Один ассет». Для основной монеты сети поле «Актив» оставьте пустым, а для токена укажите поддерживаемый идентификатор выбранной сети. Для описанного примера оставьте «Входящие» включёнными. Если нужны исходящие, отдельно проверьте их поддержку и настройку направления.

Для первого правила не выбирайте сразу все активы: один числовой порог в разных минимальных единицах не означает одинаковую экономическую сумму. Настройка конкретной пары сети и актива позволяет проверить расчёт без смешения масштабов.

Шаг 2. Задайте минимальную сумму

Разверните «Расширенные фильтры». В поле «Минимальная сумма» с подсказкой «Базовые единицы сети» введите рассчитанное целое число, например 10000000 для описанного выше масштаба. Этому значению соответствует параметр min_amount.

Не вводите здесь десятичную дробь, обозначение монеты, знак валюты или разделители тысяч. Пустое значение означает, что отдельный минимум суммы не задан. Само число не переводится автоматически из долларов и не подстраивается под курс.

«Минимум подтверждений» — другое условие. Не меняйте его, чтобы компенсировать ошибку в сумме. Порог проверяется для отдельного учитываемого перевода: несколько меньших поступлений не складываются автоматически в один подходящий платёж.

Шаг 3. Сохраните и проверьте правило

Нажмите «Добавить адрес» и выполните показанную проверку защиты, если кабинет её требует. После сохранения откройте адрес, найдите правило нужного проекта и проверьте актив, направление и записанный минимум. Убедитесь, что подключение активно; успешный ввод числа сам по себе этого не доказывает.

Если один адрес используется в нескольких проектах, проверяйте именно выбранное правило. Другой проект может иметь иной порог и получать другие события. Наличие перевода в другом проекте не означает, что ваш минимум проигнорирован.

Шаг 4. Проверьте границу без реального перевода

Для порога 10000000 ожидаемые результаты в минимальных единицах такие:

Сумма перевода Проверка суммы
9999999 Меньше порога, не подходит
10000000 Равна порогу, подходит
10000001 Выше порога, подходит

Проверьте эти случаи на подготовленных искусственных данных в локальной проверке своей интеграции. У всех примеров должны совпадать сеть, актив, адрес и направление; иначе проверяется уже другое условие. Отправлять криптовалюту для проверки арифметики фильтра не требуется. Такая проверка границы не подтверждает доставку уведомления выбранному получателю — маршрут уведомлений проверяется отдельно.

Если результат отличается от ожидаемого

Сначала сравните минимальные единицы и масштаб, затем актив, направление, проект и активность правила. Проверьте фактическую сумму перевода, а не текущую оценку в валюте отображения. Для разбора записи пригодится TXID. Сам факт события Monitoring не подтверждает оплату заказа: для этого нужна связь с инвойсом и проверка его состояния.