и интеграций
Беру разработку API и интеграции сайта с внешними сервисами: CRM, оплата, доставка, маркетплейсы, склады. С документацией, логированием и обработкой ошибок.
Что интегрирую
Интеграция с внешними API для типовых задач сайта и бизнеса:
- CRM-системы
- Платёжные сервисы
- Службы доставки
- Маркетплейсы
- Склад и учётные системы
- IP-телефония
- Telegram и мессенджеры
- Сервисы рассылок
- Нейросети через API
Интеграция с внешними API нужна везде, где данные возникают в одной системе, а используются в другой. Заказ оформляется на сайте, оплачивается через платёжный сервис, отгружается со склада и доставляется транспортной службой — и на каждом шаге информация должна попадать туда, где её ждут. Список систем выше не исчерпывающий: подключаю любой сервис, у которого есть документированный API. Нейросети подключаю так же — подробнее на странице интеграции нейросети в сайт и CRM.
Когда нужна интеграция
Признаки, что системам пора обмениваться данными напрямую:
- Заказы переносят в учёт вручную
- Остатки на сайте расходятся со складом
- Статусы оплаты проверяют в личном кабинете банка
- Трек-номера отправляют клиентам вручную
- Заявки теряются между сайтом и CRM
- Партнёрам нужен доступ к вашим данным
Ручной перенос данных опасен не только потерей времени. Ошибка в остатке, пропущенная заявка или неотправленный трек-номер напрямую влияют на клиентов: они получают отказ после оплаты, не дожидаются звонка или пишут в поддержку с вопросом о заказе. Интеграция систем через API убирает человеческий фактор из повторяющихся операций и освобождает сотрудников для работы, которая требует решений.
Что делаю
Полный цикл: от проектирования до сопровождения.
Разработка API — это не только код, который отправляет и принимает запросы. Нужно заранее решить, в каком формате передаются данные, как система реагирует на ошибки и повторные запросы, кто и с какими правами имеет доступ. Эти решения фиксирую в документации, чтобы интеграцию можно было поддерживать и развивать, а партнёрам было понятно, как подключаться к вашему API.
- Проектирование методов и структуры данных
- Разработка REST API для сайта или сервиса
- Подключение сторонних API
- Авторизация по токенам и ключам
- Документация с примерами запросов
- Очереди и повторная отправка при сбоях
- Журнал запросов и мониторинг
- Ограничение частоты и нагрузки
- Доработка существующих интеграций
Где работаю с API
Интеграции строю на платформе, на которой работает проект.
Платформа влияет на то, как устроена интеграция внутри проекта. В 1С-Битрикс и WordPress удобнее всего встраивать обмен через обработчики событий и хуки: заказ создан — данные ушли во внешнюю систему. Для самостоятельных сервисов на PHP, Python или Node.js пишу отдельный слой интеграций, который не зависит от CMS и который проще тестировать и сопровождать.
Свой REST API
API для мобильного приложения, партнёров или внутренних систем. Пишу на PHP, Python или Node.js, описываю методы и коды ошибок. Доступ выдаётся по токенам с нужными правами.
Интеграция с внешними API
Подключение сервисов оплаты, доставки, маркетплейсов и CRM к вашей системе с учётом ограничений их API. Учитываю лимиты запросов и форматы данных каждого сервиса.
1С-Битрикс
Модули интеграции, обработчики событий, обмен с Битрикс24 и внешними сервисами. Смежная услуга — доработка сайта на 1С-Битрикс.
WordPress и WooCommerce
Свои плагины интеграции, хуки WooCommerce, REST API WordPress для внешних систем. Логику обмена выношу в отдельный плагин, чтобы она не зависела от темы оформления.
Типичные ошибки интеграций и как их избежать
Самая частая проблема — интеграция без обработки ошибок. Пока внешний сервис отвечает, всё работает, но первый же сбой на его стороне приводит к потерянным заказам или заявкам, о которых никто не знает. Решение — очередь запросов, повторная отправка и уведомление ответственному, если данные так и не дошли. Тогда сбой на стороне сервиса означает задержку, а не потерю.
Вторая ошибка — отсутствие журнала. Когда клиент говорит, что заказ не появился в CRM, без логов невозможно понять, где он потерялся: на сайте, в сети или во внешней системе. Журнал запросов и ответов позволяет найти причину за минуты и при необходимости отправить данные заново. Журнал полезен и при спорах с внешним сервисом: в нём видно, что именно было отправлено и какой пришёл ответ.
Третья — ключи доступа в открытом виде. Токены и пароли от сервисов иногда оказываются в коде страницы или в общем репозитории, откуда их легко получить. Ключи должны храниться на сервере, а у каждой интеграции должны быть только те права, которые ей нужны. Если ключ всё же утёк, его можно отозвать и заменить, не останавливая остальные обмены.
Четвёртая — игнорирование ограничений внешнего API. Многие сервисы ограничивают число запросов в минуту, и при массовой выгрузке, например каталога на маркетплейс, интеграция начинает получать отказы. Это решается пакетной отправкой, контролем частоты запросов и передачей только изменившихся данных вместо полной выгрузки каждый раз.
Пятая — интеграция, которую никто не поддерживает. Внешние сервисы обновляют API, меняют форматы и отключают старые версии методов. Если за этим не следить, обмен однажды перестаёт работать. Поэтому после запуска слежу за логами и обновляю интеграцию, когда сервис объявляет об изменениях.
Как проходит работа
Интеграцию проверяю на тестовых данных до запуска.
Отдельное внимание — тестовой среде. Многие сервисы оплаты и доставки предоставляют тестовый режим или песочницу, и проверка в них позволяет отладить обмен без реальных денег и отправлений. Если тестового режима нет, проверяю на ограниченном наборе данных и включаю интеграцию на рабочем сайте постепенно, следя за журналом запросов.
Изучение задачи
Разбираю, какие данные, куда и когда должны передаваться, изучаю документацию сервисов.
Схема обмена
Описываю методы, форматы и поведение при ошибках, оцениваю работы. Схему согласую с вами до начала разработки.
Разработка
Пишу код интеграции, логирование и обработку сбоев. Ключи доступа храню в настройках сервера, а не в коде.
Тестирование
Проверяю на тестовой среде и реальных сценариях. Отдельно проверяю, что происходит при ошибках и недоступности сервиса.
Запуск и сопровождение
Включаю на рабочем сайте, слежу за логами, правлю при изменении API сервисов.
Почему ко мне
Интеграция — это не только запрос и ответ, но и всё, что идёт не так.
Большая часть работы по интеграции приходится не на основной сценарий, а на исключения: сервис не ответил, вернул ошибку, изменил формат данных или ограничил частоту запросов. Именно эти случаи определяют, будет ли интеграция работать стабильно. Поэтому на обработку ошибок и мониторинг закладываю время с самого начала, а не после первых сбоев.
Частые вопросы
Сколько стоит сделать интеграцию API?
От 2 000 ₽ за час. Для задач с понятными границами возможна фиксированная стоимость после разбора задачи. Стоимость зависит от числа сервисов, объёма данных и качества их документации.
На объём работ влияет и то, сколько сценариев должна покрывать интеграция: только передачу заказов или ещё обратные статусы, возвраты, отмены и обновление остатков. Чем подробнее документация внешнего сервиса и чем лучше работает его тестовый режим, тем быстрее идёт работа. Оценку называю после изучения API сервисов и схемы обмена.
Сколько времени занимает разработка API?
Зависит от объёма, срок называю после разбора. Простое подключение одного сервиса обычно быстрее, чем собственный API со множеством методов.
На срок влияют количество систем, сложность сценариев обмена и скорость получения доступов. Часто время уходит на ожидание тестовых ключей от внешнего сервиса или на согласование формата данных с партнёром. Поэтому доступы и документацию лучше запросить в самом начале, параллельно с разбором задачи.
Что входит в разработку REST API?
Проектирование методов, авторизация, валидация данных, коды ошибок, логирование и документация с примерами запросов.
REST API строится вокруг ресурсов — заказов, товаров, клиентов — и стандартных HTTP-методов для чтения, создания, изменения и удаления данных. Ответы обычно передаются в формате JSON. Отдельно продумываю версионирование, чтобы изменения в API не ломали уже подключённые системы, и ограничение частоты запросов для защиты от перегрузки. Документацию с примерами запросов передаю вместе с кодом.
Что будет, если внешний сервис недоступен?
Запросы встают в очередь и отправляются повторно, а о сбое приходит уведомление. Данные не пропадают молча.
Число повторов и интервалы между ними настраиваются под сервис: одним достаточно повторить запрос через минуту, другим нужен более длинный интервал. Если данные не удалось отправить после всех попыток, ответственный получает уведомление со ссылкой на запись в журнале и может отправить её вручную после восстановления сервиса.
Можно ли интегрировать сайт с CRM?
Да, это частая задача: заявки и заказы уходят в CRM, обратно приходят статусы. Подробнее — в статье об интеграции сайта с CRM.
При настройке определяю, какие поля передаются, как обрабатываются повторные обращения одного клиента и источники заявок. Если CRM — Битрикс24, обмен идёт через его REST API, и вместе с заявкой можно передать данные о рекламном источнике. Для других CRM использую их API в соответствии с документацией.
Как защищаются ключи и доступы?
Ключи хранятся на сервере, а не в коде страницы, у каждой интеграции только нужные права, доступ к API — по токенам.
Для собственного API выдаю отдельный токен каждому подключённому партнёру или системе, чтобы при необходимости можно было отозвать доступ одного, не затрагивая остальных. Обмен идёт по HTTPS, входящие данные проверяются перед записью в базу. В журнал не записываю пароли и полные платёжные данные.
Что нужно подготовить перед началом работы?
Список систем, которые нужно связать, и описание, какие данные, в каком направлении и когда должны передаваться. Понадобятся доступы к документации и тестовым ключам внешних сервисов, а также доступ к сайту или серверу, где будет работать интеграция.
Если схема обмена ещё не определена, это не проблема: составляю её на первом этапе, изучив документацию сервисов. От вас нужны ответы на вопросы о процессе и проверка результата на тестовых данных.
Можно ли доработать интеграцию, которую делал другой разработчик?
Да. Сначала изучаю код, настройки и журналы, если они есть, и выясняю, где происходят сбои. После этого предлагаю варианты: исправить существующую интеграцию или переписать проблемные части.
Часто проблема не в основном обмене, а в отсутствии обработки ошибок и логирования. Добавив их, можно увидеть реальную картину и устранить причины потерь данных. Работа оплачивается по времени — от 2 000 ₽ за час, ориентир называю после изучения кода.
Нужно связать сервисы?
Опишите, какие системы и какие данные нужно связать, — предложу схему интеграции и оценку.


