RUEN
Обсудить проект

11 октября 2026

Интеграция сайта с amoCRM, Битрикс24, 1С и маркетплейсами

По нашему опыту, «нормального API нет» почти никогда не значит «связать нельзя». Обычно API есть, но он платный, урезанный или не отдаёт нужного, а рядом лежит штатный обмен, про который никто не вспомнил: у 1С — обмен с сайтом, у Яндекс Маркета — файл с товарами по ссылке, у Тильды — встроенная отправка заявок в CRM.

Связать сайт с amoCRM, Битрикс24, 1С или маркетплейсом можно шестью способами. От надёжного к хрупкому:

  1. API и вебхуки.
  2. Обмен файлами.
  3. Готовая интеграция — встроенная или через сервис-посредник.
  4. Почта.
  5. База данных напрямую.
  6. Работа через интерфейс, как человек.

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

Сразу к своему случаю: amoCRM и Битрикс24 · Telegram · 1С · маркетплейсы · когда хватит готового · уже сломалось.

Шесть способов, от надёжного к хрупкому

1. API и вебхуки

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

Ломается API обычно не потому, что «упал», а из-за правил, которые никто не прочитал: лимитов на запросы, ключей со сроком действия, вебхуков, которые ждут ответа пару секунд и после нескольких повторов сдаются. Цифры — в разделах про amoCRM, Битрикс24 и маркетплейсы. Владеть решением на API дешевле всего, если всё это заложено с первого дня.

«Нормального API нет» здесь значит одно из двух: доступ платный, как у облачного Битрикс24, или API не про ваш случай. Например, через API в «Неразобранное» amoCRM можно положить заявку с формы или звонок, а письмо нельзя.

2. Обмен файлами

Подходит для данных, которые меняются пачкой и терпят задержку: каталог, цены, остатки.

Обмен 1С с сайтом идёт по открытому протоколу «1С» и «1С-Битрикс», данные внутри — в формате CommerceML. Начинает его всегда 1С: по расписанию или по кнопке приходит на сайт, отдаёт каталог, цены и остатки и забирает заказы. YML — формат файла с товарами для Яндекс Маркета: магазин выкладывает файл по ссылке, Маркет сам его скачивает. Где стандарта нет, остаётся CSV или Excel по расписанию: одна система кладёт выгрузку, другая забирает.

Ломается формат: переименовали колонку, сменили кодировку, завели два товара с одним артикулом. И сам файл: выгрузка упала на середине, и полкаталога выглядит распроданным. Стандарты меняются редко — описание обмена 1С с сайтом на ИТС датировано 2009 годом, — поэтому владеть дёшево. Дорого другое: обмен настраивают двое, специалист по 1С и разработчик сайта, и при поломке каждый проверяет только свою половину.

3. Готовая интеграция

Подходит, когда связка типовая — «форма → CRM → уведомление», «учёт → площадка» — и обе системы есть в списке.

Встроенная уже есть в одной из систем: формы Тильды отправляют заявки больше чем в 24 сервиса, 1С:УНФ и Управление торговлей сами работают с маркетплейсами.

Посредник — сервис, где связку собирают мышкой. У российского Albato серверы в России, а тариф «Эксперт» стоит 2200 ₽ в месяц за 1000 транзакций, при оплате за год — 1760 ₽. Транзакция — одно действие после события: цепочка «заявка → строка в таблице → сообщение в Telegram» тратит две, так что пакета хватит примерно на 500 заявок; сверх пакета транзакции на 50% дороже. ApiX-Drive, несмотря на русскоязычный сайт, по собственному заявлению с Россией и Беларусью не работает: Битрикс24, amoCRM, МойСклад и Тильду он отключил, а аккаунты с российскими и белорусскими данными блокирует без возврата денег. Если есть свой сервер и человек при нём, подойдёт n8n: бесплатную редакцию ставят к себе, лицензия разрешает её для внутренних задач компании.

Ломается всё, чего автор интеграции не предусмотрел: разводка заявок по ответу внутри формы, обязательные поля, товары в сделке. Встроенная интеграция amoCRM с Авито, например, передаёт только текст, без файлов и видео. Владение — аренда, пока пользуетесь. Зато за изменениями чужих API следит поставщик, а не вы.

4. Почта

Подходит, когда система умеет только присылать письма: старый сайт, сервис записи, поставщик с прайсом во вложении. CRM разбирают такие письма сами: amoCRM кладёт письма с незнакомых адресов в «Неразобранное», а «Автопочта» заполняет из шаблонных писем поля сделки и контакта; Битрикс24 создаёт лиды из писем, если в настройках ящика включена интеграция с CRM.

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

5. База данных напрямую

Подходит, когда база ваша — свой сайт, своя программа — или поставщик прямо разрешает читать её таблицы. Безопаснее читать, а не писать, и из копии, а не из рабочей базы.

С 1С так нельзя: лицензия запрещает обращаться к данным средствами СУБД в обход платформы — и на запись, и на чтение. Законные входы в 1С — её штатные механизмы, о них в разделе про 1С.

Ломается структура: таблицы — внутреннее устройство программы, а не обещанный интерфейс, и с обновлением меняются без предупреждения. Запись в обход программы пропускает её проверки: остаток в таблице поменялся, а связанные с ним записи — нет. Владеть дёшево на старте и дорого после каждого обновления.

6. Через интерфейс

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

Начинать надо с правил: оферта Wildberries разрешает продавцу автоматическую интеграцию с порталом только через публичный API, так что там этот способ отпадает.

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

Как выбрать способ

Способ Свежесть данных Хрупкость Цена владения Когда брать
API и вебхуки секунды низкая низкая, если учтены лимиты и ключи нужные данные есть в API
Обмен файлами от получаса до суток низкая у стандартов, средняя у CSV низкая каталог, цены, остатки
Готовая интеграция секунды или интервал опроса средняя аренда: тариф или подписка проверять первой; связка типовая, обе системы в списке
Почта минуты средняя низкая, пока шаблон не меняется система умеет только письма
База напрямую мгновенно средняя растёт с каждым обновлением база ваша или доступ разрешён; не для 1С
Через интерфейс как настроите высокая самая высокая других входов нет, право доступа есть

Оценки хрупкости и цены владения — наши, по опыту. Чтобы выбрать, ответьте на три вопроса:

  1. Как быстро нужны данные. Заявка в CRM за секунды и остатки на площадку раз в час — разные задачи: первой нужен вебхук, второй хватит файла.
  2. Кто меняет систему на той стороне. Вы, ваш подрядчик по 1С или площадка, которая вас не спросит. Чем меньше вы контролируете ту сторону, тем выше по таблице стоит держаться.
  3. Что будет, если обмен молча встанет на сутки. Потеряете заявки, продадите то, чего нет на складе, — или никто не заметит. От ответа зависит, сколько вкладывать в журнал и сверку.

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

Интеграция сайта с amoCRM и Битрикс24

Любой сайт. Проще всего вставить форму самой CRM: у Битрикс24 это CRM-формы, у amoCRM — конструктор форм, заявки с которого попадают в «Неразобранное». Разработка не нужна. Если форма должна остаться своей, нужен модуль для вашей CMS, сервис-посредник или обработчик, который пишет в CRM через API.

Тильда. Интеграция с amoCRM и облачным Битрикс24 встроена: Настройки сайта → Формы. Для amoCRM можно включить добавление сделок с поиском дублей, а чтобы разные формы попадали в разные воронки и к разным ответственным, заводят несколько приёмщиков — так Тильда называет подключённые сервисы. Если этого хватает, настройте по справке Тильды: разработчик не нужен.

Что стоит знать заранее:

  • Битрикс24 — только облако и только за деньги. Коробочную версию Тильда подключает лишь через вебхук. Облачной нужны платный тариф и подписка «BitrixGPT + Маркетплейс» — она же открывает REST API для любых связок. На тарифе «Базовый» подписка стоит 1 000 ₽ в месяц без НДС сверх тарифа, сам тариф — от 1 990 ₽ в месяц при оплате за год (цены на октябрь 2026). Без подписки Тильда напишет в журнал ошибок «REST is available only on commercial plans».
  • Связка с Битрикс24 слетает от простоя. Подключение, которым месяц не пользовались, аннулируется. Чтобы не слетело, раз в месяц отправляйте заявку через форму или открывайте Настройки сайта → Формы → «Настройки» у Битрикс24 и нажимайте «Подключить», если кнопка есть.
  • amoCRM. Поля, созданные интеграцией, удалять нельзя, только переименовывать. Значения списков в форме должны совпадать со списками в amoCRM. Если Тильда пишет, что значение не совпадает, её справка советует сменить в amoCRM тип таких полей на текстовый.
  • Ошибки Тильда пишет в «Заявки → Журнал ошибок» — туда первым делом, если заявка не дошла до CRM.

Встроенного не хватает, когда заявку надо разводить по ответу внутри формы (выбрали Минск — в одну воронку, Москву — в другую), сверять с 1С, отправлять в коробочный Битрикс24 или в CRM не из списка. Тогда нужен вебхук на свой обработчик. Две вещи в нём проверьте сами. UTM-метки дойдут, только если в настройках вебхука включено «Посылать Cookie» и посетитель пришёл с меткой не раньше чем за 30 дней до заявки. Адрес обработчика — ровно тот, что дал разработчик, с https и без переадресации, иначе данные заявки могут потеряться.

Если обработчик пишет в CRM через API, держите в голове четыре правила:

  • Лимиты. amoCRM пропускает не больше 7 запросов в секунду от одной интеграции, дальше — ответ 429, а при повторных нарушениях закрывает аккаунту доступ к API. Облачный Битрикс24 — в среднем 2 запроса в секунду с запасом на всплеск до 50, дальше ответ 503.
  • Срок доступа. Ключ обновления в amoCRM одноразовый и живёт 3 месяца: если интеграция три месяца им не пользовалась, доступ пропадает. Для интеграции под один ваш аккаунт проще выпустить долгосрочный токен — от 1 дня до 5 лет — и записать дату окончания в календарь.
  • Вебхуки amoCRM ждут ответа 2 секунды. Нет ответа или пришла ошибка — amoCRM повторит через 5 и ещё через 15 минут, а если сервер отвечал ошибкой 5xx — ещё через 15 минут и через час. Больше 100 неудачных ответов за 2 часа — и хук отключается, пока его не включат вручную. Отсюда правило: ответить сразу, обработать потом.
  • Адрес входящего вебхука Битрикс24 работает с правами сотрудника, который его создал. Держите его на сервере, а не в коде страницы.

Заявки с сайта в Telegram

Уведомление о заявке в Telegram — самая простая связка. На Тильде она встроена: Настройки сайта → Формы → Telegram, бота можно добавить и в рабочую группу. На своём сайте сообщение отправляет сервер через бота.

Главная ловушка: Telegram — канал уведомлений, а не хранилище. Если заявка существует только в сообщении, сбой по дороге стирает её без следа. У нас самих уведомления какое-то время молча не доходили: с нашего сервера в российском дата-центре не проходит соединение с api.telegram.org. Заявки уцелели, потому что сначала пишутся в базу и только потом уходят в Telegram, а уведомления теперь идут через отдельный узел-посредник. На Тильде копия заявки лежит в разделе «Заявки» — по умолчанию месяц; срок можно поднять до 90 дней в Настройках сайта → Формы → Общие настройки форм. Если уведомления уже пропадают — разбор по звеньям.

Интеграция сайта с 1С

Штатный путь — обмен по CommerceML из раздела про файлы. Какая у вас 1С, важнее, чем какой у вас сайт. В списке модулей обмена 1С-Битрикс — Управление торговлей, УНФ, ERP, Комплексная автоматизация и Розница. УНФ, кроме того, сама работает с InSales, UMI.CMS, HostCMS, Shop-Script и любым сайтом, который понимает CommerceML.

Обмен начинает 1С, поэтому, пока она выключена на обновление, заказы ждут на сайте. Если же сайт сам кладёт заказ в 1С в момент оформления, в такие часы заказы теряются, и нужна очередь.

1С:Бухгалтерии в списке модулей нет. Сама она умеет только загружать с сайта заказы — с доставкой и онлайн-оплатой (раздел «Торговля через интернет-магазины»), а выгружать на сайт каталог, цены и остатки, как УТ или УНФ, не умеет. Если в учёт нужны только заказы, начните со штатной загрузки; с какими CMS она работает в вашей редакции, уточните у специалиста по 1С. Не подошла — спросите разработчика про формат EnterpriseData: в упрощённом режиме сайт сам передаёт продажи в Бухгалтерию, без настройки обмена в базе. Если нужен ещё и каталог с остатками, пути такие:

  • REST-интерфейс по OData. Платформа, начиная с версии 8.3.5, сама открывает данные наружу. Программисту 1С нужно опубликовать базу на веб-сервере, выбрать, какие данные открыть, и завести для обмена отдельного пользователя.
  • HTTP-сервис. Программист 1С пишет в базе вход под вашу задачу.
  • Файл по расписанию. Самый простой и самый медленный путь.

Если сайт — главный канал продаж, посчитайте и переход на УНФ или Управление торговлей, где обмен с сайтом встроен.

Тильда и 1С. Тильда синхронизирует товары и заказы с 1С:Управление торговлей по CommerceML, но сама предупреждает: настраивать должны опытные 1С-разработчики, версии новее 11.2 не тестировались, а по CommerceML к Тильде подключается только одна система — 1С или МойСклад.

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

Интеграция сайта с маркетплейсами

Выгрузить товары, цены и остатки на Озон, Wildberries или Яндекс Маркет с программистом — путь прямой: у всех трёх есть API для продавцов, а Маркет ещё и сам присылает уведомления о новых заказах и возвратах. Про токен WB владельцу стоит знать три вещи: создаёт его только владелец профиля в разделе «Интеграции по API», и показывается он один раз; живёт он 180 дней, за 3 дня до конца портал предупредит, но напоминание лучше поставить и себе; при смене телефона владельца все токены придётся выпустить заново.

Если программиста нет:

  • Через 1С. УНФ обновляет карточки, цены и остатки на Озоне, Маркете и WB. Управление торговлей с Озоном и Маркетом работает напрямую: выгружает каталог, цены и остатки для продажи со своего склада (FBS) и забирает заказы. На WB она через промежуточный сервис 1С выгружает только цены и остатки FBS, а карточки придётся заводить иначе (подробности у 1С).
  • Через МойСклад. Он сам принимает заказы с Озона, WB и Маркета и выгружает туда остатки, а сайт на Тильде подключается к нему по тому же CommerceML, что и к 1С.
  • YML-файл для Маркета. Маркет скачивает файл по ссылке раз в 30 минут; отдаваться файл должен не дольше 150 секунд, а без атрибута date остатки не обновятся. Маркет советует держать два файла — с товарами и с условиями размещения, — и ведут они себя по-разному. Убрали товар из первого — в каталоге он останется, удалить можно только в кабинете. А во втором должны быть все товары, которые продаются сейчас: какого нет, тот пропадает с витрины. Чтобы вернуть его, мало снова добавить строку в файл: проверьте в кабинете, что в поле «Скрыть с витрины» не стоит «Да» и обновление этого поля из файла включено.
  • Шаблоном в кабинете, руками. Для сотни товаров раз в неделю это может оказаться дешевле любой интеграции — посчитайте в калькуляторе ручной операции.

Обратный случай — главный каталог на WB: Тильда сама подтянет оттуда на сайт товары и остатки по токену только на чтение, цены — не чаще раза в 15 минут. Работает это, только если в профиле Тильды указана страна Россия (справка).

Автоматизировать кабинет WB в обход API запрещает оферта. Поэтому на крупных площадках «без API» на деле значит «через 1С, МойСклад, файл или руками». Где API для продавцов нет вовсе, остаётся шестой способ — если правила площадки его допускают.

Когда хватит готового — и мы не нужны

  • Нужна только заявка в CRM: форма самой CRM на любом сайте или встроенная интеграция Тильды с amoCRM и облачным Битрикс24 (ему нужна подписка). Разные воронки для разных форм — через несколько приёмщиков.
  • Уведомления в Telegram: встроенный приёмщик Тильды или бот — если заявка при этом где-то сохраняется.
  • Сайт с модулем обмена + 1С:УТ, УНФ, ERP, КА или Розница: штатный обмен. Нужен специалист по 1С, а не разработка.
  • 1С:Бухгалтерия, в учёт нужны только заказы, и она работает с вашей CMS: штатная загрузка заказов.
  • 1С:УТ или УНФ + Озон, Маркет, WB: встроенная интеграция 1С (у УТ на WB уходят только цены и остатки).
  • Заявки приходят письмами: подключите ящик к amoCRM или Битрикс24.
  • Цепочка «форма → CRM → Telegram» в пределах пакета: Albato или аналог.
  • Сотня товаров раз в неделю: посчитайте ручной шаблон в кабинете — может выйти дешевле.

Проверить связку можно без подрядчика: раз в месяц — тестовая заявка с каждой формы, раз в неделю — «Журнал ошибок» на Тильде, раз в день — число заявок на сайте против числа сделок в CRM, заказов на сайте — против заказов в 1С. Расходятся — связка сломалась.

Своя интеграция у нас начинается от 50 000 ₽ — это около двух лет подписки на младший пакет Albato. Если связка целиком описывается настройками готового, готовое выгоднее, и мы скажем это сами.

Мы нужны, когда в связке появляется «если»: если в заявке выбран Минск — в эту воронку, если товара нет в 1С — создать, если площадка ответила отказом — разобрать, каким именно. Когда у системы нет ни API, ни выгрузки; когда у вас Бухгалтерия, а на сайт нужно выгружать каталог и остатки, или коробочный Битрикс24; когда объём упирается в лимиты. Это наша услуга интеграций.

Что ломается в любой интеграции

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

Дубли

Сайт отправил заявку, CRM её записала, но ответ потерялся по таймауту. Сайт повторяет — в CRM две сделки: если источник умеет повторять, одно событие рано или поздно придёт дважды. Даже пакетный метод amoCRM с контролем дублей (если тот включён для интеграции) сверяет новые сделки только с уже сохранёнными, а заявки внутри одной пачки между собой — нет.

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

Защита — номер операции: у каждой заявки и заказа есть номер (у Тильды это tranid), и перед записью связка проверяет, не обработан ли он уже.

Потеря данных при сбое

Обработчик лёг на два часа. Вебхуки amoCRM за это время исчерпали попытки, Тильда — тоже: она повторяет отправку всего дважды, с интервалом в минуту. Заявка осталась только в самой Тильде и в её журнале ошибок, если туда кто-то заглянет.

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

«Отправлено» — ещё не «доставлено»

Ответ «принято» (код 200) значит, что сервер ответил, а не что данные на месте. Поставщик в той же связке отвечал успехом и тогда, когда покупка не прошла, поэтому система считает покупки в истории до и после и верит следствию, а не ответу.

Защита — проверять результат, а не ответ: после записи найти сделку по номеру заявки и только тогда считать заявку доставленной.

Источник поменял формат

В CRM сделали поле обязательным — и с этой минуты лиды с сайта не создаются. Продавец переименовал товар — сопоставление по названию молча разваливается; поэтому та же система узнаёт заказ по случайной метке в описании, а не по названию.

Защита — журнал (что пришло, что ушло, что ответили) и тревога на первую ошибку, а не на сотую.

Пустой ответ принимают за «ничего нет»

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

Вопросы подрядчику до старта

Номера операций и повторы владелец сам не пишет, но может проверить, заложил ли их подрядчик:

  1. Что будет, если CRM ответит через 10 секунд?
  2. Как связка поймёт, что эта заявка уже записана?
  3. Какие операции не повторяются никогда? В нашей обработке заказов, например, отправка платежа не повторяется ни при каком сбое — это записано в коде прямым запретом.
  4. Где я увижу, что ушло и что ответили?
  5. Кто узнает, что за день не пришло ни одной заявки?
  6. Что помешает обнулить полкаталога за один проход?

Внятного ответа нет — значит, этого в связке нет.

Интеграция уже сломалась: как найти, чья ошибка

В связке «сайт — 1С — CRM — площадка» до четырёх хозяев: разработчик сайта, специалист по 1С (бывает, у другого подрядчика), администратор CRM и сама площадка. Каждый видит свой кусок и честно говорит «у меня всё работает». Чтобы разбор не превратился в неделю переписки, соберите:

  1. Доступы ко всем участкам или контакты тех, у кого они есть.
  2. Журналы с обеих сторон: в Тильде — журнал ошибок, в 1С — журнал обмена, на сайте — лог обработчика.
  3. Один конкретный пример: какая заявка или товар, когда, что ожидали и что получили.
  4. Что и кто менял в последние дни.

Подсказки по ответам: слово failure при обмене с 1С вернул сайт — начинайте с его журнала. Ответ 429 от amoCRM, 503 или 429 от Битрикс24 — упёрлись в лимит частоты или времени выполнения. 402 от amoCRM — кончилась подписка. Лиды перестали создаваться в один день — ищите, что в этот день поменяли в CRM.

Если у связки нет хозяина и чинить её некому, это наша работа с застрявшими проектами.


Посчитать, во что обходится ручной перенос данных сейчас: калькулятор стоимости ручной операции.

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