Для обменных и платёжных команд

Учёт взаиморасчётов, который живёт в рабочем чате

Оператор пишет сделку одной строкой там, где и так разговаривает с клиентом. Система считает, показывает предпросмотр, проводит по журналу и сама дописывает строку в отчётную таблицу. Ни тетради, ни сводки руками, ни спора «а сколько мы на этом заработали».

14валют и 248 команд из коробки
170+пар валют без тезера
720автотестов на каждую сборку
0правок задним числом: только сторно
Как это выглядит

Одна строка в чате — и сделка посчитана

Оператор не выходит из переписки с клиентом и не заполняет форм.

Оператор
/пе 52400-1%/0.89216
Бот · предпросмотр
Заявка 50 558 466 · приём евро
Получаем52 400.00 EUR
Удержание 1%524.00 EUR
Курс0.89216
Отдаём58 146.52 USDT
✅ Провести
Изменить
Отмена
Бот · после проводки
Проведено. Баланс клиента «Орион»
EUR+51 876.00
USDT−58 146.52
  1. Пишут как считаютКомиссия, платёжка и промежуточные суммы — прямо в строке: 52400-1%/0.89216, 2057000/157.24+1.2%+100. Курс можно не писать — подставится биржевой со снимком страницы, который не стыдно переслать клиенту.
  2. Сначала предпросмотрПока не нажата «Провести», в деньгах не изменилось ничего. Ошиблись — поправили ответом на то же сообщение.
  3. Потом журналПроводка идёт двумя записями в разных валютах, одной транзакцией. Повторная доставка сообщения из Telegram не проведёт её дважды.
  4. И сразу отчётСтрока уходит в таблицу: дата, номер, клиент, оператор, обе стороны сделки, контрагент, курс, профит и маржа.
Что меняется

Там, где раньше был Excel и память старшего

Как обычноКак здесь
Сделку считают в калькуляторе, записывают в таблицу вечером — если вспомнят Сделка посчитана и записана в момент разговора, задним числом её никто не трогает
Баланс клиента — число в ячейке, которое можно поправить Баланс — сумма проводок. Правка возможна, но она тоже проводка, с автором и причиной
Ошиблись — стёрли строку, и в прошлом стало на сделку меньше Ошиблись — сторно обратным знаком. История остаётся, итог сходится
Профит считают в конце месяца и спорят, чей он Профит и маржа считаются в строке сделки, разрез по людям — каждый день
Кто с каким клиентом работает — знает старший У каждой команды свои клиенты, кошельки, чаты и балансы; чужое не видно
Возможности

Что система умеет сегодня

Всё перечисленное работает в бою, а не в планах.

Сделки

Любая пара валют

  • 14 валют, 248 команд: приём, выдача, оплата счёта
  • Пары без тезера — больше 170 сочетаний
  • Ставка, платёжка и расчёт по шагам в одной строке
  • Биржевой курс подставляется сам, со снимком для клиента
  • Новая валюта заводится в админке — команды появляются сами
Деньги

Журнал, а не табличка

  • Проводки неизменяемы, откат — встречная транзакция
  • Суммы в точной арифметике, без округлений «в плавающей точке»
  • Повтор сообщения или двойное нажатие не проводят дважды
  • Отрицательные балансы разрешены и видны
  • Каждая правка руками — с автором, причиной и аудитом
Наличные

Выдачи и точки

  • Распоряжение на выдачу: сумма, кто выдаёт, точка
  • Занос с удержанием: клиент забирает частями
  • Остаток по заявке виден, пока не выдан полностью
  • Готовые памятки клиенту про приём и выдачу денег
Крипта

Приход и проверка кошелька

  • Адреса для пополнения — общие и на клиента
  • Приход подтверждается по хешу, ссылке или скриншоту
  • Остаток кошелька спрашивается у сети напрямую
  • AML-проверка адреса или перевода с отчётом для клиента
  • Ссылка на обозреватель — посмотреть глазами, бесплатно
Отчётность

Таблица, которую ведёт бот

  • Строка на сделку: обе стороны, контрагент, курс, профит, маржа
  • Сводка по периодам: оборот, профит, маржа, средний чек
  • Разрезы: дни, операторы, контрагенты, клиенты, валюты
  • Профит по людям день за днём
  • Выгрузка CSV и PDF-отчёт за период
Люди

Команды и доступ

  • Команда — изолированный контур: свои клиенты, кошельки, чаты
  • Роли: оператор, старший, администратор команды
  • Приложение в Telegram: баланс, журнал, проводка, выгрузка
  • Веб-админка для настроек и разбора спорных случаев
  • Права проверяются на сервере, а не в приложении
Защита

Там, где обычно уводят деньги

  • Адрес кошелька меняет только лид и только с кодом из приложения
  • Запись об адресе подписана: подмена в базе видна
  • Тревога в отдельный чат при смене адреса и расхождении баланса
  • Двухфакторный вход, журнал действий администраторов
Мелочи, которые решают

Сделано по жалобам операторов

  • Скриншот от клиента читается: адрес и сумма достаются с картинки — если подключено распознавание
  • Точка и запятая равнозначны, 4кк — четыре миллиона
  • Расчёт по биржевому кроссу с показом, как он получен
  • Справочная по командам внутри бота — спросить словами
  • Инструкция с примерами на отдельной странице
Надёжность

Что под капотом

  • 720 автотестов, часть — с настоящей базой
  • Ежедневные бэкапы с контрольной суммой и проверкой восстановления
  • Ответы в Telegram идут очередью с повтором: сеть моргнула — не потерялось
  • Деньги и сообщения разведены: сначала проводка, потом ответ
Отчётность

Сводка, которую не нужно вести

Так выглядит лист сделок: каждую строку дописывает бот в момент проводки. Цифры на примере условные.

ДатаНомерКлиентОператорПринялиОтдалиПрофитМаржа
12.0350 558 466ОрионМарат52 400 EUR58 146.52 USDT412.180.71%
12.0350 558 471СапфирИнга1 944 000 RUB22 191.78 USDT178.400.80%
12.0350 558 473ОрионМарат10 000 USD10 220 USDT220.002.15%
За день810.580.94%
Сводка за день, неделю, месяц Разрез по операторам Разрез по контрагентам Топ клиентов по профиту Профит по людям день за днём Убыточные сделки отдельно Сторно не ломает итог
Кому что достаётся

Три разных рабочих места

Оператору

Строка в чате вместо формы. Предпросмотр до проводки, правка ответом, подсказка при опечатке. Баланс клиента и история — в приложении, не выходя из Telegram.

Старшему

Видно все команды и всех клиентов: можно войти в команду и провести за оператора, разобрать спорную сделку, откатить ошибку. Каждое действие — в журнале.

Владельцу

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

Как начать

Запуск занимает день, а не квартал

1. От вас

  • Свой бот в Telegram и рабочие чаты
  • Список валют и ставок
  • Кто операторы, кто старшие
  • Адреса кошельков и точки выдачи

2. От нас

  • Поднимаем контур и подключаем бота
  • Заводим команды, валюты, людей
  • Переносим историю из вашей таблицы
  • Инструкция и шпаргалка для операторов

3. Дальше

  • Обновления и новые валюты без простоя
  • Ежедневные бэкапы, выгрузка данных по запросу
  • Поддержка в рабочем чате
  • Доработки под ваш порядок работы
Условия

Доступ по подписке

Система остаётся на нашей стороне: сервер, обновления и дежурство — наша забота, вам достаётся бот и приложение, которые просто работают.

Что входит

  • Отдельный контур вашей компании и настройка под ваш порядок работы
  • Обновления и новые возможности без доплат и без простоя
  • Ежедневные бэкапы, выгрузка истории по первому запросу
  • Поддержка в рабочем чате, разбор спорных операций
  • Перенос истории из таблицы при запуске

Как считается

  • От числа команд и работающих операторов
  • Отдельно — платные внешние проверки (AML), по факту обращений
  • Доработки под ваш порядок работы — по согласованию
  • Стоимость обсуждаем после демонстрации: сначала смотрим, подходит ли
Вопросы, которые задают первыми

Коротко и честно

Наши данные видит кто-то ещё?
Нет. Команда — изолированный контур: свои балансы, клиенты, кошельки и чаты. Операции одной команды не видны другой, а права проверяются на сервере, а не в приложении.
Что будет, если мы уйдём?
Выгрузка всей истории в CSV — в любой момент и без просьб. Журнал устроен так, что выгрузка совпадает с тем, что видно в системе.
У нас свои валюты и свои названия команд.
Валюта заводится в админке вместе с буквой для команд, и имена команд собираются сами. Формула и пара активов — настройка, а не код.
Мы работаем без крипты.
Крипта — отдельный блок: кошельки, проверка прихода, AML. Он выключается, остальное работает как работало.
Оператор ошибся и провёл не то.
Откат одной командой: система делает встречную транзакцию и дописывает в отчёт строку «Сторно». Прошлое остаётся как было, итог сходится.
Телеграм упал или сообщение пришло дважды.
Повторная доставка не проводит операцию второй раз. Ответы уходят очередью с повтором, и ни одно подтверждение не отправляется до записи в базу.