В обновлении переработали получение курсов и добавили переключение между несколькими источниками через формулы. Расширили возможности плагинов, улучшили точность расчётов и партнёрские начисления. В админ-панели появились новые фильтры, быстрое редактирование резервов и подробная шкала времени выполнения заявки.
Источники курсов и резервирование
Новые источники. Добавили OKX, CurrencyAPI и CoinGecko. Обновили обработку курсов существующих бирж, платёжных сервисов и национальных банков.
Больше валют. Для CoinMarketCap переработали выбор валют и получение необходимых пар без прежнего ограничения несколькими основными валютами. FloatRates расширили до полного доступного набора валют.
Резервирование через формулы. Теперь можно объединить несколько источников, задать порядок переключения и при необходимости установить допустимый возраст каждого курса. Готовая формула подключается к направлениям привычным способом.
Как настроить резервные курсы
Первый вариант — переключение по доступности курса.
Укажите основной источник и резервные в нужном порядке:
[priority_rate] [BINANCE_BTC_USDT], [BYBIT_BTC_USDT], [OKX_BTC_USDT], [KUCOIN_BTC_USDT] [/priority_rate]
Пока курс Binance доступен и проходит общие проверки системы, используется он. Если курс отключён, отсутствует, содержит ошибку или непригодное значение, система проверяет Bybit, затем OKX и KuCoin. Отдельные сроки свежести в этой формуле не задаются.
Например: Binance недоступен → Bybit работает → используется Bybit.
Второй вариант — переключение с индивидуальным сроком свежести.
Для каждого источника дополнительно укажите допустимый возраст курса в секундах:
[priority_rate] [fresh_rate]120,[BINANCE_BTC_USDT][/fresh_rate], [fresh_rate]180,[BYBIT_BTC_USDT][/fresh_rate], [fresh_rate]240,[OKX_BTC_USDT][/fresh_rate], [fresh_rate]300,[KUCOIN_BTC_USDT][/fresh_rate] [/priority_rate]
Здесь Binance подходит, пока его курс обновлён менее двух минут назад, Bybit — менее трёх, OKX — менее четырёх, KuCoin — менее пяти.
Источник пропускается и при ошибке, и при превышении своего срока свежести, даже если сохранённая цена положительная.
Например: Binance не обновлялся три минуты → Bybit возвращает ошибку → OKX обновлён 30 секунд назад → используется OKX.
В обоих вариантах выбирается первый подходящий источник по порядку. После восстановления основного источника система вернётся к нему при очередном пересчёте, если его курс снова проходит проверки.
В админ-панели отображаются выбранный источник и причины пропуска остальных вариантов. Список можно расширять дополнительными источниками. Если подходящих курсов не осталось, направление временно недоступно для расчёта.
Важно: замените коды в примерах на коды ваших курсов из админ-панели.
Другие изменения курсов
BestChange. Добавили выбор позиции с условиями допуска и ограничениями доходности.
Улучшили повторные запросы, параллельную загрузку и обработку ограничений API. Исправили ошибки импорта, дублирование пар, обработку прямых и обратных курсов и сбой при работе под ionCube.
Расширения и платёжные плагины
Продолжили развитие системы плагинов: собственный модуль можно передать другому клиенту и установить одним ZIP-архивом через админ-панель.
Установка без обязательной подписи. Сохраняются проверки структуры, совместимости, разрешений и целостности пакета. Сведения о подписи и официальном издателе отображаются отдельно.
Мерчанты и выплаты. Плагины подключаются к существующей платёжной системе и настраиваются в привычных разделах админки. Один пакет может поддерживать приём платежей, выплаты или оба варианта.
Обновления и откат. Добавили обнаружение новых версий, хранение предыдущих выпусков и возврат к ним с восстановлением настроек.
Обновили каталог, предпросмотр установки и обозначения издателей. Исправили загрузку каталога, если рядом с папками новых версий остались старые архивы.
Точность расчётов обмена
Доработали всю цепочку расчёта — от калькулятора на сайте до сумм в карточке заявки.
Исправили применение персональных условий владельца заявки, прямого и обратного курса, дополнительных комиссий и отрицательных поправок. Устранили потерю точности при преждевременном округлении и обработке очень маленьких значений. Точность расчётов согласовали с настройками админ-панели, включая значения выше 18 знаков.
Сравнение курсов. В окне сравнения сохранённого и текущего курса теперь показаны отклонение в процентах, разница в валюте и две подписанные полосы.
Детали суммы. Исходная сумма, комиссии и бонусы отображаются отдельными строками, итог выделен, дополнительные пояснения раскрываются по необходимости.
При недоступном курсе или некорректном ответе система показывает понятное сообщение вместо ошибочного расчёта с нулевой суммой.
Партнёрская система
Исправили сохранение и применение персональных условий: процентов, фиксированных бонусов, минимальных и максимальных сумм.
Расчёты и отображение согласовали с валютой системного баланса и её альтернативными обозначениями. Исторические начисления сохраняют свою валюту, а небольшие суммы отображаются точнее.
Доработали удержание и освобождение бонусов, повторный пересчёт и восстановление после временных ошибок курса. Устранили дубли при одновременных действиях, исправили историю начислений, счётчики клиентов и аналитику переходов.
Фильтры во всей админ-панели
Полностью обновили окно «Добавить фильтр»:
- Разделы «Доступные» и «На панели» со счётчиками.
- Поиск по названиям и описаниям.
- Изменение порядка перетаскиванием и с клавиатуры.
- Добавление нескольких фильтров без закрытия окна.
- Сохранение введённых значений и защита обязательных полей от удаления.
Упростили настройку сортировки, сохранив несколько условий и управление их порядком. Обновили отступы и подписи, проверили отображение на телефонах, в светлой и тёмной темах.
Управление резервами
Редактирование из списка валют. Нажатие на сумму резерва открывает форму, где можно увеличить, уменьшить или полностью заменить его значение. Если резерв ещё не создан, система создаст его с нулевой суммой и откроет редактирование.
Для общих резервов изменения учитываются во всех связанных валютах. Предусмотрены предупреждения о связях и обновлении из файла.
История резервов. Операции сгруппированы по датам, нагляднее показаны изменения и значения «Было → Стало». Исправили отображение длинных сумм и небольших изменений.
Сведения о мерчантах, выплатах, полученных и отправленных суммах вынесли в отдельные колонки списка валют. Их можно включить через настройки таблицы.
Работа с заявками
Время выполнения. Метка «Выполнено за» открывает подробное окно: начало и завершение заявки, точная длительность и шкала переходов между статусами. Для многодневных заявок отображаются даты, на телефоне шкала становится вертикальной.
Чат с клиентом. Окно можно перемещать и растягивать за края и углы. Размер и положение запоминаются. Убрали затемнение фона и блокировку прокрутки страницы, сохранив привычный дизайн сообщений.
Автоматическая выплата. Действие выделено в отдельный блок, а окно подтверждения яснее объясняет, какую операцию запускает оператор.
Уведомления, теги и баннеры
Теги. Улучшили подстановку данных в письмах, уведомлениях, клиентских страницах и Telegram. Исправили переносы строк, специальные символы, переводы, запасной текст и форматирование ссылок. Усилили разграничение доступа и исключили повторную обработку тегов внутри подставленных данных.
Баннеры. Добавили настройку «Скрыть название и описание». Текст скрывается, но место под ним сохраняется, поэтому кнопки остаются на прежней высоте. Предпросмотр учитывает выбранный режим.
Убрали неработавшие общие настройки баннеров, сохранив текущее поведение переключения.
Другие улучшения
- Ускорили открытие настроек мерчантов и выплат.
- Исправили смешивание списков сетей у разных аккаунтов одного сервиса.
- Добавили обработку ошибок отдельных шлюзов, чтобы они не мешали открытию всей формы.
- Обновили оформление поля альтернативных кодов валют на странице «Баланс системы».
- Улучшили отображение окон и точных сумм на узких экранах.