Интеграции

Интеграция сайта с внешними системами по API

Связываем сайт с системой, для которой нет готового модуля: ERP, складская программа, отраслевой сервис, кабинет поставщика. Обмен строим на том, что система умеет отдавать, - REST, SOAP, вебхуки или выгрузка файлов.

Смотреть кейсы
документацию разбираем до сметы, а не после
от 30 000 ₽

Точная смета - после брифа.

Оценка По часам после разбора документации
Протоколы REST, SOAP, файловый обмен
Ошибки Журнал и повторные попытки

Кому подходит

Системы нет на маркетплейсе

Учетная программа или отраслевой сервис не из типовых, готового модуля под Битрикс для него нет

Данные переносят руками

Сотрудник выгружает файл из одной системы и загружает во вторую, и так каждый день

Обмен на старом протоколе

Система отдает данные по SOAP или файлом по расписанию, готовые модули так не умеют

Какие задачи решаем

Заказы с сайта заводят во внешнюю систему вручную, часть теряется или попадает дважды
Справочники в двух системах разъехались, и непонятно, какая версия считается верной
Обмен работает без журнала: о сбое узнаем от клиента, а не из лога
У системы есть только SOAP или выгрузка файлом, готовые решения такой обмен не поддерживают

Что входит в работу

1

Разбор API

Читаем документацию и проверяем методы на тестовом контуре, до того как называть смету
2

Схема обмена

Что и в какую сторону передается, как сопоставляются поля, где источник правды
3

Сопоставление справочников

Связываем номенклатуру, статусы и единицы измерения двух систем по правилам на бумаге
4

Передача данных

Обмен по REST, SOAP или файлами - на том протоколе, который дает система
5

Обмен по событию

Вебхуки там, где данные нужны сразу, а не в следующем цикле обмена
6

Журнал обмена

Лог запросов и ответов: видно, что ушло и что вернулось с ошибкой
7

Повторные попытки

Пока внешняя система не отвечает, запрос остается в очереди и повторяется
8

Хранение ключей

Токены и пароли лежат в настройках на сервере, а не в коде страниц и не в шаблоне
9

Инструкция

Что делать, если система сменила API или перестала отвечать, и к кому с этим идти

Этапы работы

1
Первый разговор Уточняем, что за система, какие данные нужны и есть ли документация и тестовый доступ
2
Разбор документации Читаем API и проверяем методы на тестовом контуре, после этого называем объем в часах
3
Схема обмена Направление обмена, состав полей, расписание и правила сопоставления справочников
4
Сборка на тестовом контуре Пишем обмен и отлаживаем на тестовых данных, боевые не задеваем
5
Перенос на боевые данные Сверяем справочники и включаем регулярный обмен на боевом сайте
6
Журнал и уведомления Ошибки видны в журнале, о сбое приходит оповещение ответственному
7
Передача Показываем журнал и порядок действий, если обмен встал

Технологии и интеграции

REST

HTTP и JSON, авторизация по токену, ключу или OAuth

SOAP

Работа с WSDL и XML-конвертами для систем на старых протоколах

Файловый обмен

XML, CSV и Excel по расписанию через FTP, SFTP или каталог на сервере

Вебхуки

Прием событий от внешней системы и отправка своих на ее адрес

Очереди и повторы

Запрос остается в очереди, пока сторонний сервис не ответит

Журнал и уведомления

Лог обмена с ошибками и оповещение о сбое

Часто задаваемые вопросы

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

С теми, у которых есть способ отдать и принять данные: REST, SOAP, обмен файлами или доступ к базе. Готовый модуль для этого не нужен, обмен пишется под конкретные методы системы. Если документации на API нет, сначала разбираемся, что система умеет: иногда обмен строится через выгрузку файлов по расписанию, и это рабочий вариант.

Доступ к тестовому контуру внешней системы, документация на API и человек со стороны ее поставщика, у которого можно уточнить вопросы. Без тестового доступа обмен пришлось бы отлаживать на боевых данных, так мы не работаем. Если тестового контура у системы нет, скажите сразу - будем искать безопасный способ проверки вместе с поставщиком.

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

Часто да. Многие системы умеют регулярную выгрузку в XML, CSV или Excel, и обмен строится на файлах: сайт забирает их из каталога на сервере или по SFTP и раскладывает по своим справочникам. Обратная сторона - данные приходят с задержкой на цикл выгрузки, поэтому этот вариант подходит для каталога и остатков, но не для оплаты в реальном времени.

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

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

Настроим обмен

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

Заявка отправлена

Разберем задачу и ответим Вам в ближайшее время.