Обновление iEXExchanger 11.3 — PostgreSQL 18, диагностика системы и автоматизация работы с заявками

iEXExchanger
Обновление iEXExchanger 11.3 — PostgreSQL 18, диагностика системы и автоматизация работы с заявками

В версии iEXExchanger 11.3 мы сосредоточились на производительности, надёжности и удобстве ежедневной работы с обменником.

В релиз вошли поддержка PostgreSQL 18 и инструменты для переноса данных с MySQL, новый раздел диагностики системы, автоматическое распределение заявок между операторами, обновлённая работа с валютами, сетями, резервами, реквизитами и уведомлениями.

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

Ключевые изменения релиза

  • PostgreSQL 18. Новые проекты могут сразу работать с PostgreSQL 18. Для действующих проектов подготовлен отдельный перенос данных с MySQL с предварительными и итоговыми проверками.
  • Диагностика системы. В панели управления появился раздел, который проверяет основные функции обменника, показывает найденные проблемы и помогает определить, что необходимо исправить.
  • Распределение заявок между операторами. Добавлены режимы рекомендации и автоматического назначения с учётом доступности, прав и текущей нагрузки сотрудников.
  • Обновлённая работа с заявками. Улучшены список заявок, автоматическое обновление данных, чат, проверки личности и счёта, реквизиты по запросу, сроки оплаты и архив.
  • Валюты, сети и резервы. Архив валют объединён с общим списком, сети вынесены в отдельный раздел, а управление резервами и историей операций полностью обновлено.
  • Уведомления и шорткоды. Уведомления для валют и направлений объединены в одной системе. Шорткоды получили отдельный раздел, мультиязычность, поиск и быструю вставку в редакторы.
  • Безопасность. Усилена защита входа, сессий, заявок, платёжных действий, файлов, административных операций и публичных API-ключей.

PostgreSQL 18 и перенос данных с MySQL

Поддержка PostgreSQL 18. iEXExchanger адаптирован для работы с PostgreSQL 18. Обновлены структура базы данных, финансовые расчёты, поиск, фоновые процессы и обработка больших объёмов информации.

Новые установки. При установке нового проекта можно сразу использовать PostgreSQL 18. Для серверов на Debian с FASTPANEL подготовлен установщик, который проверяет окружение, устанавливает необходимые компоненты и предоставляет данные для подключения базы.

Перенос с MySQL. Для действующих проектов добавлен отдельный мастер миграции. Перед началом он проверяет подключения и исходные данные, затем создаёт структуру в PostgreSQL, переносит информацию и проверяет результат.

Безопасное переключение. iEXExchanger переключается на PostgreSQL только после успешного завершения переноса и всех проверок. Исходная база MySQL сохраняется и не изменяется.

Резервное копирование и восстановление. Для основной и дополнительных баз можно создавать отдельные профили. Система проверяет подключение и целостность файлов, сохраняет журнал операций и предотвращает восстановление данных в неподходящую базу.

Аудит базы данных. Добавлен отдельный инструмент для проверки сервера PostgreSQL, баз, таблиц, связей, индексов, последовательностей, статистики и заполненности данных. Аудит не изменяет содержимое базы.

Переход на PostgreSQL не запускается автоматически при установке версии 11.3. Действующие проекты могут продолжить работу с MySQL и выполнить перенос отдельно.

Диагностика системы

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

Система проверяет:

  • направления обмена, курсы и их актуальность;
  • экспорт курсов и интеграцию с BestChange;
  • расчёты калькулятора, комиссии и лимиты;
  • резервы и историю их изменений;
  • балансы пользователей;
  • мерчанты для приёма и выплаты средств;
  • обработку заявок;
  • настройки безопасности;
  • пользовательские соглашения;
  • партнёрскую программу и правила начисления вознаграждений.

Ход выполнения. Во время диагностики отображаются общий прогресс, текущий этап и подробный журнал событий.

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

История запусков. Результаты сохраняются в панели управления. После устранения проблем диагностику можно запустить повторно и проверить состояние системы.

Распределение заявок между операторами

В версии 11.3 добавлена система распределения заявок между сотрудниками. По умолчанию она выключена и не изменяет привычный порядок работы обменника.

Режим «Рекомендация». Система предлагает заявку подходящему оператору, но она остаётся доступной другим сотрудникам.

Режим «Автоматически». Заявка временно назначается выбранному оператору. Он может принять или отклонить её. При отказе или окончании времени ожидания система передаёт заявку следующему подходящему сотруднику.

Учёт нагрузки. При выборе оператора учитываются его готовность принимать заявки, права доступа, ограничения, текущая нагрузка и уже ожидающие предложения.

Индивидуальная ёмкость. Каждый оператор может указать, сколько заявок он готов обрабатывать одновременно.

Пауза и недоступность. Если сотрудник становится недоступен, непринятые предложения освобождаются и возвращаются в распределение.

Личная очередь. Оператор видит свою готовность, текущую нагрузку, новые предложения и состояние команды. История назначений и решений сохраняется для контроля.

Ручное назначение заявок и действующие права сотрудников продолжают работать без изменений.

Заявки и работа операторов

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

Автоматическое обновление. Изменения статусов, счётчиков и назначенных операторов появляются без ручной перезагрузки страницы. Система восстанавливает обновление после временной потери соединения или возвращения на вкладку.

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

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

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

Онлайн-чат в заявке. Улучшены загрузка и обновление сообщений, назначение ответственного, приоритеты, статусы, внутренние заметки и отметки прочтения. Устранены дубли, зависания и отображение устаревшей переписки. Для операторов подготовлен отдельный список диалогов с актуальными счётчиками.

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

Реквизиты по запросу и сроки оплаты

Единая система полей. Дополнительные и информационные поля реквизитов объединены в одном разделе. Ранее созданные данные сохраняются.

Автоматические значения. В поля можно подставлять Memo, имя получателя из мерчанта, название банка, внутренний номер заявки и публичный номер заявки. При необходимости оператор может указать собственное значение вручную.

Раздельные сроки. Время ожидания реквизитов и срок оплаты настраиваются отдельно. Можно задать общее значение либо разрешить оператору выбирать время для конкретной заявки.

Начало срока оплаты. Таймер можно запускать сразу после создания заявки или только после фактической выдачи реквизитов.

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

Работа оператора. В заявке отображается оставшееся время. Оператор может выдать реквизиты, добавить комментарий и дополнительные поля, а также заменить ранее отправленные данные в течение разрешённого периода.

Защита от повторных действий. Система предотвращает одновременную повторную выдачу реквизитов и не позволяет клиенту отметить просроченную заявку как оплаченную.

Валюты, сети и резервы

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

Массовые действия. Валюты можно одновременно включать, отключать, архивировать и восстанавливать. После восстановления валюта остаётся отключённой, чтобы администратор мог проверить её настройки перед публикацией.

Связанные направления. При изменении состояния валют система корректно обновляет связанные направления. Архивированные валюты больше не отображаются в разделах, где их нельзя использовать.

Сети валют. Для сетей появился отдельный раздел с поиском, фильтрами и адаптацией под мобильные устройства. Сети можно создавать, редактировать и удалять, выбирать для них валюты, обозначения и иконки.

Перенос валют между сетями. Обновлено окно переноса, улучшено отображение длинных названий и добавлена защита от конфликтов при одновременном редактировании.

Резервы для валют. Раздел получил новую адаптивную таблицу, массовую фиксацию, разблокировку и выборочное удаление записей.

История резервов. В истории понятнее отображаются тип операции, направление, причина изменения и суммы до и после операции. Раздел оптимизирован для большого количества записей.

Защита изменений. Если несколько администраторов одновременно редактируют один резерв, система предотвращает перезапись более актуальных данных.

Направления обмена, курсы и BestChange

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

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

BestChange API. Улучшено добавление сразу нескольких направлений. Длинные названия и большое количество выбранных значений теперь корректно отображаются в окнах и списках.

Производительность. Убраны лишние проверки и повторные обращения к базе данных при загрузке курсов.

Уведомления для клиентов

Единый раздел. Уведомления для валют и направлений объединены в одной системе.

Где показывать уведомление. Сообщение можно разместить в форме обмена или на странице оплаты заявки.

Формат отображения. Поддерживаются встроенные уведомления и всплывающие окна.

Условия публикации. Можно настроить важность, период действия, приоритет, отдельные цвета для светлой и тёмной темы и однократный показ в течение сессии.

Привязка. Уведомление можно связать с валютой или направлением и выбрать сторону обмена — «Отдаю» или «Получаю».

E-mail и Telegram

Надёжность доставки. Устранена повторная отправка одного события. Если один канал временно недоступен, остальные уведомления продолжают отправляться.

Язык получателя. Улучшен выбор языка сообщений для клиентов, операторов и администраторов.

Шаблоны Telegram. Для них добавлен отдельный редактор с предварительным просмотром, черновиками, публикацией и историей изменений.

История шаблонов. Предыдущую версию шаблона можно просмотреть и восстановить.

Коды подтверждения. Устранена отправка некорректного кода 000000. При каждом подтверждении создаётся индивидуальный шестизначный код, в том числе при повторной отправке.

Письма по заявкам. Пустые реквизиты и незаполненные дополнительные поля больше не создают пустые блоки в письмах о создании и завершении обмена.

Шорткоды

Единый раздел. Шорткоды разделены на вкладки «Общие» и «Для объектов».

Привязка к объектам. Шорткод можно использовать во всех поддерживаемых шаблонах или связать с конкретной заявкой, пользователем либо направлением обмена.

Типы значений. Поддерживаются обычный текст, форматированный текст и числа. Значение можно указать вручную или получить из данных выбранного объекта.

Мультиязычность. Название, описание и значение настраиваются отдельно для каждого языка. Старые одноязычные шорткоды продолжат работать.

Вставка в редакторы. Кнопка «Мои шорткоды» позволяет найти нужное значение, посмотреть пример и вставить код в текущую позицию курсора.

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

Партнёрская программа и выплаты

Индивидуальный процент в заявке. Оператор может оставить стандартный процент партнёрской программы или указать отдельное значение для конкретной заявки.

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

Заявки на выплату бонусов. Раздел получил новый адаптивный интерфейс, сводные показатели, группировку по датам, карточки выплат и журнал изменений.

Обработка выплат. Выплату можно подтвердить или отклонить непосредственно в карточке. При отказе необходимо указать причину.

Изображения и медиатека

Media Manager. Добавлен единый инструмент для загрузки, выбора, перемещения и повторного использования изображений и других файлов.

Обработка изображений. Обновлена загрузка файлов для проверки личности, фотографий карт, логотипов, баннеров, новостей, реквизитов и других разделов.

Безопасная замена. Старый файл заменяется только после успешного сохранения нового. Существующие публичные ссылки на изображения продолжат работать.

Административная панель

Фильтр по операторам. Выбор сотрудников перенесён в общую систему фильтров. Можно выбрать одного или нескольких операторов и использовать условие во всех разделах списка заявок.

Глобальный поиск. Исправлены быстрые команды, повторяющиеся результаты и ошибка при пустом запросе.

Навигационное меню. Исправлена ошибка, из-за которой скрытые пункты меню раскрывались при переходе между разделами.

Безопасность

Требования к паролям. При регистрации, восстановлении доступа и смене пароля используются одинаковые правила. Пароль должен содержать не менее 12 символов, заглавные и строчные буквы, цифры и специальные символы.

Защита от подбора. Ответы системы больше не позволяют определить, зарегистрирован ли указанный e-mail. Также устранена возможность заблокировать администратора большим количеством внешних попыток входа.

CAPTCHA. Проверка выполняется до авторизации и блокирует вход при отсутствии или неправильном подтверждении.

Клиентские и административные сессии. Улучшен контроль IP-адреса, устройства и изменения группы адресов. После успешной авторизации сессия безопасно обновляется.

Права сотрудников. Пересмотрен доступ к заявкам, аналитике, файлам, страницам, новостям, промокодам, бонусам, уведомлениям и системным настройкам.

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

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

Публичные API-ключи. Добавлены отдельные права, срок действия, ограничения по IP-адресам и частоте запросов, контроль дневного и месячного использования, а также безопасный отзыв и замена ключа.

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

Повторные операции. Повторное уведомление от платёжной системы больше не приводит к повторной обработке одной транзакции.

Доверенные источники. Браузерные запросы, подключения в реальном времени и статистика посещений принимаются только от разрешённых источников с учётом прокси-серверов, балансировщиков и CDN.

Конфиденциальные страницы. Сторонняя аналитика и запись действий отключаются на страницах входа, восстановления доступа, подтверждения, заявки и оплаты.

Другие исправления

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

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

Адрес панели управления. В адресе сохраняется регистр символов. Служебные и запрещённые значения по-прежнему блокируются.

Платёжные реквизиты. Улучшена проверка обязательных полей и номера счёта.

Точность расчётов. Улучшено хранение сумм и выполнение расчётов комиссий, лимитов, прибыли и партнёрских начислений.

Параллельные операции. Усилена защита от повторных действий, конфликтов при автоматических выплатах и одновременном изменении данных.

В версию iEXExchanger 11.3 также вошли дополнительные внутренние оптимизации, обновлённые переводы и автоматические проверки, направленные на повышение производительности, безопасности и стабильности платформы.