Интеграции по API и вебхукам
Интеграция — это не «дернуть метод». Это поведение при ошибке: что делать, если чужой сервис вернул 500, если запрос упал на середине списка, если поле поменяло тип. Я пишу так, чтобы сбой было видно и чтобы его можно было продолжить, а не начинать с начала.
Что входит
- Разбор документации сервиса и проверка ограничений на реальных запросах
- Синхронизация контактов, сделок, товаров, заказов и цен
- Односторонняя и двусторонняя синхронизация, с защитой от дублей
- Обработка ошибок и лимитов: повторные попытки, паузы, лог проблемных записей
- Вебхуки Битрикс24 и REST, включая кастомные поля и справочники
- Регулярные запуски по расписанию (cron) с отчётом о результате
Где интеграции ломаются чаще всего
На несовпадении типов полей и на лимитах. Текст в число не вливается, «да/нет» приходит строкой, а список контактов обрывается на тысячной записи. Поэтому первым делом смотрю, какие поля и в каком формате сервис ждёт, и только потом пишу обработчик.
Что будет, если сервис недоступен
Скрипт фиксирует, на какой записи остановился, и следующий запуск продолжает оттуда. В отчёте видно, сколько обработано и сколько упало — без гадания, куда делись триста контактов.
Как считаю цену. Объём фиксирую до старта. Если по ходу выясняется, что нужно шире — согласуем отдельно, а не «доплатите потом».