Кейсы

Не портфолио скриншотов, а разбор решений

Здесь нет «сделали красиво». Есть задача, инженерные решения и компромиссы, которые за ними стоят. Если после прочтения вы поймёте, как я мыслю, — мы уже сэкономили время друг другу.

Ищу первых пользователей · Работает в бою

ДЛ Коннект — интеграция «Деловых Линий» с inSales и amoCRM

SaaS-сервис для интернет-магазинов и отделов продаж: расчёт стоимости доставки, оформление заявок и синхронизация статусов «Деловых Линий» — прямо в привычном интерфейсе. Сейчас открыт набор первых пользователей: сервис обкатывается в реальных рабочих процессах.

Задача

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

Цель была не «написать ещё одну интеграцию», а построить систему, после установки которой сотрудники перестают замечать, что где-то существует API перевозчика: вся работа происходит там, где менеджер и так проводит день. И подключается это за один вечер по инструкции — без программиста на стороне клиента.

Архитектура: один движок, два фронта

Самым быстрым вариантом было написать две отдельные интеграции — одну для inSales, вторую для amoCRM. Через несколько месяцев это превратилось бы в две кодовые базы, две разные логики и двойную стоимость поддержки.

Вместо этого вся бизнес-логика живёт в едином серверном ядре, а платформы подключаются к нему как тонкие клиенты: модуль в админке inSales и AMD-виджет в карточке сделки amoCRM с OAuth2-авторизацией. Новая функция, добавленная в ядро, автоматически появляется во всех интеграциях — и там же одинаково чинится, если что-то идёт не так.

Инженерные решения — и зачем каждое

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

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

Rate limiting. Ошибка чужой интеграции или циклический запрос не способны положить сервис.

CSP-заголовки. Даже случайно попавший на страницу сторонний скрипт не выполнится — страховка от XSS.

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

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

Инженерия

  • Бэкенд на PHP 8.4, MariaDB
  • Единое ядро для всех платформ
  • Модуль inSales + виджет amoCRM
  • Деплой и администрирование VPS

Продукт

  • Лендинг для прямых продаж
  • Гайд по настройке
  • Аналитика Matomo (self-hosted)
  • UX админ-панели настроек

Право

  • Соответствие 152-ФЗ
  • Политика обработки ПДн
  • Уведомление Роскомнадзора
  • Self-hosted шрифты и скрипты

Три колонки выше — обычно три разные команды. Здесь это один человек: от первой строки кода до юридического оформления.

Что получает компания после подключения

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

Хотите проверить это на своих процессах одним из первых — напишите: первым пользователям достаётся моё максимальное внимание к их сценарию работы.

Подход

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

Контакт

Ваш проект — следующий кейс

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