Размер шрифта
Цвет фона и шрифта
Изображения
Озвучивание текста
Обычная версия сайта
UKVED
Комплексные IT решения
для вашего бизнеса
+7 906 045 2827
+7 906 045 2827
E-mail
sale@ukved.ru
Адрес
г.Москва, ул. Антонова-Овсеенко, д. 15, стр. 2
Режим работы
Пн. – Пт.: с 9:00 до 18:00
Сопровождение 1С
  • Внедрение 1С
  • Обновление 1С
  • Обслуживание 1С
  • Поддержка 1С
  • Разработка 1C
Аренда 1С (1С:ФРЕШ)
Бухгалтерское сопровождение
Аренда сервера
  • Выделенный сервер 1C
  • Аренда сервера для 1C
  • Почтовые серверы
  • Backup серверы
Распознавание документов в 1С
Разработка мобильных приложений
Наши мобильные приложения
AmoCRM
  • Внедрение AmoCRM
  • Интеграция AmoCRM
  • Разработка виджетов AmoCRM
Системное администрирование
  • Обслуживание компьютеров
  • Обслуживание локальной сети
  • Обслуживание телефонии
IP телефония
Каталог товаров
  • 1С отчетность
  • Лицензии 1С
    • Комплексное управление ресурсами предприятия (ERP)
    • Клиентские лицензии
    • Серверные лицензии
    • Бухгалтерский и налоговый учет
    • ЗУП и кадровый учет (HRM)
    • Управление складом, логистикой и продажами
  • ТСД Клеверенс
  • ИТС
  • Тарифы ИТС
  • Наши решения
Наши внедрения
Статьи
Контакты
Комплексные IT решения
для вашего бизнеса
+7 906 045 2827
+7 906 045 2827
E-mail
sale@ukved.ru
Адрес
г.Москва, ул. Антонова-Овсеенко, д. 15, стр. 2
Режим работы
Пн. – Пт.: с 9:00 до 18:00
UKVED
  • Сопровождение 1С
    • Внедрение 1С
    • Обновление 1С
    • Обслуживание 1С
    • Поддержка 1С
    • Разработка 1C
  • Аренда 1С (1С:ФРЕШ)
  • Бухгалтерское сопровождение
  • Аренда сервера
    • Выделенный сервер 1C
    • Аренда сервера для 1C
    • Почтовые серверы
    • Backup серверы
  • Распознавание документов в 1С
  • Разработка мобильных приложений
  • Наши мобильные приложения
  • AmoCRM
    • Внедрение AmoCRM
    • Интеграция AmoCRM
    • Разработка виджетов AmoCRM
  • Системное администрирование
    • Обслуживание компьютеров
    • Обслуживание локальной сети
    • Обслуживание телефонии
  • IP телефония
  • Каталог товаров
    • 1С отчетность
    • Лицензии 1С
      • Комплексное управление ресурсами предприятия (ERP)
      • Клиентские лицензии
      • Серверные лицензии
      • Бухгалтерский и налоговый учет
      • ЗУП и кадровый учет (HRM)
      • Управление складом, логистикой и продажами
    • ТСД Клеверенс
    • ИТС
    • Тарифы ИТС
    • Наши решения
  • Наши внедрения
  • Статьи
  • Контакты
1СFranch.pngmintsifryi_1С.png
г.Москва, ул. Антонова-Овсеенко, д. 15, стр. 2
UKVED
Телефоны
+7 906 045 2827
E-mail
sale@ukved.ru
Адрес
г.Москва, ул. Антонова-Овсеенко, д. 15, стр. 2
Режим работы
Пн. – Пт.: с 9:00 до 18:00
UKVED
  • Сопровождение 1С
    • Сопровождение 1С
    • Внедрение 1С
    • Обновление 1С
    • Обслуживание 1С
    • Поддержка 1С
    • Разработка 1C
  • Аренда 1С (1С:ФРЕШ)
  • Бухгалтерское сопровождение
  • Аренда сервера
    • Аренда сервера
    • Выделенный сервер 1C
    • Аренда сервера для 1C
    • Почтовые серверы
    • Backup серверы
  • Распознавание документов в 1С
  • Разработка мобильных приложений
  • Наши мобильные приложения
  • AmoCRM
    • AmoCRM
    • Внедрение AmoCRM
    • Интеграция AmoCRM
    • Разработка виджетов AmoCRM
  • Системное администрирование
    • Системное администрирование
    • Обслуживание компьютеров
    • Обслуживание локальной сети
    • Обслуживание телефонии
  • IP телефония
  • Каталог товаров
    • Каталог товаров
    • 1С отчетность
    • Лицензии 1С
      • Лицензии 1С
      • Комплексное управление ресурсами предприятия (ERP)
      • Клиентские лицензии
      • Серверные лицензии
      • Бухгалтерский и налоговый учет
      • ЗУП и кадровый учет (HRM)
      • Управление складом, логистикой и продажами
    • ТСД Клеверенс
    • ИТС
    • Тарифы ИТС
    • Наши решения
  • Наши внедрения
  • Статьи
  • Контакты
  • 0 Корзина
  • +7 906 045 2827
    • Телефоны
    • +7 906 045 2827
  • г.Москва, ул. Антонова-Овсеенко, д. 15, стр. 2
  • sale@ukved.ru
  • Пн. – Пт.: с 9:00 до 18:00
1СFranch.pngmintsifryi_1С.png
Главная
—
Статьи
—
Общее

Бэкенд на Dart для Flutter-приложения с 1С: что даёт Fletch, а что нет

Владимир Ершов, руководитель UKVED · опубликовано 3 октября 2026

Бэкенд на Dart для Flutter-приложения с 1С: что даёт Fletch, а что нет

Бэкенд на Dart для Flutter-приложения с 1С: что даёт Fletch, а что нет

Содержание
📦 что делят Flutter и сервер на Dart🔥 пятница, 18:40: сервер упал, а чинить его некому⚖️ Fletch, Node.js или прямые вызовы 1С: сравнение🔍 пять проверок Fletch до продакшена🔗 серверный слой между приложением и 1С🚫 когда Dart на сервере брать не стоит🛠 как мы ведём такой проект и что он стоит❓ Частые вопросы

Бэкенд на Dart, например на Fletch, оправдан для Flutter-приложения, когда клиент и сервер делят модели данных и бизнес-правила: их пишут один раз в общем пакете. Экономия кончается там, где начинаются база, авторизация, деплой и интеграция с 1С: эти задачи от языка не зависят. Для малого бизнеса выигрыш в одной команде и меньшем числе багов на стыке.

📦 что делят Flutter и сервер на Dart

Dart работает на обеих сторонах, и это даёт одну конкретную вещь: чистый Dart-пакет без зависимости от Flutter подключается и в приложение, и на сервер. В него кладут всё, что должно вести себя одинаково на телефоне и на сервере.

что идёт в общий пакет

  • ✓модели заказа, контрагента и номенклатуры вместе с сериализацией в JSON: переименовали поле один раз, и компилятор показывает все места, где оно используется, и в приложении, и на сервере;
  • ✓правила расчёта: скидки по соглашению, округление, минимальная партия, НДС в строке заказа;
  • ✓валидация: ИНН из 10 или 12 цифр, формат телефона, обязательные поля;
  • ✓коды ошибок API, чтобы приложение показывало понятный текст, а не «ошибка 500».

Общими бывают и тесты. Набор проверок расчёта скидок один, он прогоняется и для приложения, и для сервера. Классический баг без него: сумма заказа на телефоне расходится с суммой в 1С на копейки из-за разного округления, и менеджер полдня ищет, куда делась копейка. С общим пакетом расхождение всплывает красным тестом на сборке.

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

что в общий пакет не попадёт

Всё, что тянет за собой Flutter SDK или dart:ui: виджеты, управление состоянием, плагины камеры и push-уведомлений. Сервер такой код не соберёт. Поэтому общий пакет делают отдельным модулем, а приложение, сервер и этот модуль держат в одном монорепозитории: Dart поддерживает pub workspaces, и изменение модели приходит в обе части одним коммитом.

🔥 пятница, 18:40: сервер упал, а чинить его некому

Типичная история. Оптовая компания заказывает Flutter-приложение для торговых представителей. Разработчик хорошо знает Dart и берёт серверную часть на себя: язык тот же, значит, справится. Первые недели всё работает: заказы уходят, остатки подтягиваются.

Но в пятницу в 18:40 процесс сервера падает. Логов нет: на тестовом стенде они шли в консоль, и никто не настроил запись в файл. Резервные копии базы никто не проверял. Перезапустить сервис по SSH умеет только сам разработчик, а он в отпуске. Поэтому представители оформляют заказы на бумаге и в мессенджере, а в понедельник менеджеры вбивают их в 1С руками.

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

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

⚖️ Fletch, Node.js или прямые вызовы 1С: сравнение

Для приложения, которое работает с 1С, мы сравниваем три реальных варианта.

ВариантЧто общего с FlutterСлабое местоКогда подходит
Сервер на Dart (Fletch, Shelf, Dart Frog)Общий пакет моделей, правил и тестов; один язык в командеМеньше готовых библиотек, мало разработчиков на рынке, фреймворк надо проверять на зрелостьРасчёты цен и скидок нужны и в приложении, и на сервере; команда уже пишет на Dart
Сервер на Node.js, Go или PHPТолько контракт API, например описание в OpenAPIМодели и правила пишутся дважды, расхождения всплывают на тестах или уже в работеНужны готовые библиотеки интеграций, важно быстро найти разработчиков для поддержки
Приложение напрямую в HTTP-сервисы 1СНичего, кроме JSONНагрузка с телефонов ложится на базу 1С, нет кеша и очереди, при закрытии месяца приложение подвисает вместе с базойПилот на нескольких пользователях, прототип

Между первым и вторым вариантом решает не скорость сервера, а объём общей логики. Если расчёты цен и скидок нужны и на клиенте, и на сервере, общий пакет окупается быстро. Если приложение только показывает данные, а вся логика остаётся в 1С, общего кода почти нет, и главный довод за Dart исчезает.

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

Четвёртого варианта, зарубежного облачного сервиса с готовым бэкендом, в таблице нет сознательно. Если приложение собирает персональные данные граждан РФ, 152-ФЗ (часть 5 статьи 18) требует хранить их в базах на территории России. Вопрос закрывается сервером в российском дата-центре.

🔍 пять проверок Fletch до продакшена

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

  1. ✓Дата последнего релиза и активность репозитория: свежие коммиты, ответы на issue. Если релиз вышел давно, а Dart SDK с тех пор ушёл вперёд, это повод для вопросов.
  2. ✓Совместимость с текущей версией Dart SDK и с нужными пакетами: драйвер PostgreSQL, JWT, клиент для S3-совместимого хранилища.
  3. ✓Лицензия: она должна разрешать коммерческое использование без требования открывать код заказчика.
  4. ✓Нагрузочный прогон на ваших сценариях: загрузка каталога, всплеск заказов после обеда. Демо из README ничего не доказывает.
  5. ✓Запасной выход. Модели и бизнес-логика лежат в общем пакете и ничего не знают о фреймворке. Тогда замена Fletch на Shelf (каркас от команды Dart) или Dart Frog означает переписывание маршрутов, а не всего сервера.

Если проверки пройдены, у Dart остаётся плюс на деплое: сервер собирается в один исполняемый файл командой dart compile exe, и Dart SDK на боевой машине не нужен.

🔗 серверный слой между приложением и 1С

1С остаётся источником правды: номенклатура, цены, остатки, взаиморасчёты. Приложение напрямую туда не ходит. Между ними стоит сервер, и на Dart он решает те же задачи, что и на любом другом языке:

  • ✓хранит кеш каталога и остатков, поэтому открытие каталога не дёргает базу 1С при каждом свайпе;
  • ✓принимает заказ в очередь и передаёт в 1С, когда она доступна: если база занята закрытием месяца или обновлением, заказ не пропадает;
  • ✓проверяет права: торговый представитель видит только своих контрагентов;
  • ✓собирает данные под экран, так что один запрос заменяет пять обращений к HTTP-сервисам 1С;
  • ✓отдаёт изменения с момента последней синхронизации, чтобы приложение работало на складе без связи и догоняло данные, когда сеть вернулась.

Как устроена такая связка, собрано на странице про интеграцию мобильного приложения с 1С. Если приложением пользуются клиенты и представители, а склад и бухгалтерия остаются в 1С, смотрите разбор B2B-приложения с 1С.

🚫 когда Dart на сервере брать не стоит

Есть три случая, когда мы советуем другой путь.

  • ✓В приложении почти нет общей логики, зато много внешних интеграций: платёжные шлюзы, СМС, облачные хранилища. Для Node.js или Python готовых проверенных библиотек больше, и подключение идёт быстрее.
  • ✓Сервер потом будет поддерживать команда заказчика, у которой уже есть разработчики на другом языке. Редкий стек повышает риск остаться без поддержки, когда уйдёт единственный человек, знающий Dart.
  • ✓Задача узкая и внутренняя: склад, инвентаризация, выездной сервис. Тогда отдельный бэкенд не нужен, хватает приложения на 1С:Мобильной платформе.

🛠 как мы ведём такой проект и что он стоит

Разработка мобильных приложений у нас начинается от 500 000 ₽. Итог зависит от числа экранов, ролей пользователей и объёма обмена с 1С, поэтому смету мы считаем после разбора процессов, а не по шаблону. Общие ориентиры по ценам есть на странице цены и тарифы. Приложение, серверный слой и интеграцию с 1С делает одна команда: за стык между ними отвечает один подрядчик, а не три.

  1. ✓Разбираем процесс: кто что делает в приложении, какие данные берутся из 1С, что должно работать без связи.
  2. ✓Описываем контракт API и общий пакет моделей раньше, чем рисуем экраны.
  3. ✓Поднимаем сервер и тестовый контур с 1С. Логи, резервные копии и мониторинг настраиваем на первом этапе, а не перед релизом.
  4. ✓Выбираем фреймворк по пяти проверкам выше: Fletch проходит, берём его; не проходит, берём Shelf или Dart Frog, а архитектура остаётся прежней.

В любом договоре на такую разработку, у нас или у другого подрядчика, прописывайте передачу исходников, инструкции по развёртыванию и доступов к серверу. Это страховка от пятницы 18:40.

❓ Частые вопросы

Можно ли написать бэкенд для Flutter-приложения на Dart?

Да. Dart работает на сервере: код собирается в один исполняемый файл командой dart compile exe, а маршруты берут на себя каркасы вроде Shelf, Dart Frog или Fletch. Главная выгода в общем пакете моделей и правил для приложения и сервера. Минус: библиотек и разработчиков меньше, чем у Node.js или Go.

Сколько стоит разработка мобильного приложения на Flutter с серверной частью?

Разработка мобильных приложений у нас начинается от 500 000 ₽. Итог зависит от числа экранов, ролей пользователей и объёма обмена данными с 1С. Серверную часть и интеграцию считаем в той же смете. Точную сумму называем после разбора процессов: без описания задач любая цифра будет угадыванием.

Зачем нужен серверный слой между мобильным приложением и 1С?

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

Можно ли хранить данные пользователей приложения в зарубежном облаке?

Если приложение собирает персональные данные граждан РФ, 152-ФЗ требует записывать и хранить их в базах на территории России. Поэтому сервер и базу размещают в российском дата-центре. Зарубежный облачный сервис допустим для данных без персональных сведений. Детали для вашего случая лучше уточнить у юриста.

Что делать, если Fletch перестанет развиваться?

Заранее держите модели и бизнес-логику в общем Dart-пакете, который не зависит от фреймворка. Тогда замена Fletch на Shelf или Dart Frog означает переписывание маршрутов, а не всего сервера. Сам сервер при этом продолжает работать. До выбора проверьте дату последнего релиза, совместимость с текущим Dart SDK и лицензию.

Нужно мобильное приложение для бизнеса?
Подберём стек и свяжем с 1С — смета за 1 день.
Получить смету →
Читайте также
Услуги 1САренда 1САренда сервера 1СМобильная разработка

Не помогло? Опишите вашу ошибку — разберём
Ответим сразу, без звонков и заполнения анкет. Что не получилось, какая версия 1С, что уже пробовали — этого достаточно. Сложное передадим инженеру.

Или позвоните: +7 906 045-28-27 — в рабочее время с 9:00 до 19:00

Возврат к списку

Читайте также

  • 3 в 1: одно Flutter-приложение вместо мобильного, веб и десктопного
  • 30 сотрудников синхронизируются в 9 утра: бэкенд на Go для приложения с 1С
  • Flutter 3.47: почему после апгрейда падает сборка 1С-приложения
  • Flutter для интернет-магазина: одна кодовая база вместо двух приложений

Остались вопросы? Нужна помощь?

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

Бесплатная консультация
 
Компания
О компании
Вакансии
Каталог
1С отчетность
Лицензии 1С
ТСД Клеверенс
ИТС
Тарифы ИТС
Наши решения
Аренда сервера
Сопровождение 1С
Сопровождение бухгалтерии
Системное администрирование
Аудит сайта
IT-аутсорсинг в Москве
Услуги по серверам
Аренда сервера 1С
Аренда 1С в облаке
Распознавание PDF (ПДФ) в 1С
+7 906 045 2827
+7 906 045 2827
E-mail
sale@ukved.ru
Адрес
г.Москва, ул. Антонова-Овсеенко, д. 15, стр. 2
Режим работы
Пн. – Пт.: с 9:00 до 18:00
sale@ukved.ru
г.Москва, ул. Антонова-Овсеенко, д. 15, стр. 2
2017 - © 2026
Политика конфиденциальности Оплата Поставка Возврат Оферта Карта сайта
ООО «ВЕД» · ИНН 7720299436 · ОГРН 1157746343920 · КПП 501801001
Аккредитованная ИТ-компания — проверить в реестре Минцифры по ИНН 7720299436
0

Корзина

Очистить корзину
Ваша корзина пуста
Исправить это просто: выберите в каталоге интересующий товар и нажмите кнопку «В корзину»
В каталог
Главная 0 Корзина Каталог Контакты Услуги Бренды Отзывы Карьера Компания Проекты Лицензии Документы Блог Тарифы Цены
Мы считаем посещения сайта с помощью Яндекс.Метрики. Запись ваших действий на странице (Вебвизор) включается только с вашего согласия. Нажимая «Принять», вы соглашаетесь с Политикой конфиденциальности и Согласием на обработку ПДн.