Обновить
64K+

1С-Битрикс *

Продукты компании 1С-Битрикс

7,16
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Email в Bitrix24 и amoCRM: техническая архитектура отправки, типичные узкие места и как починить доставляемость

Время на прочтение10 мин
Охват и читатели3.8K

Bitrix24 и amoCRM — две доминирующие CRM в России — отправляют email принципиально разным образом, но имеют общую проблему: ни одна из них не показывает, дошло ли письмо до инбокса получателя. Зелёный статус «Письмо отправлено» в карточке сделки означает только то, что SMTP-сервер получателя принял письмо. Куда оно легло у клиента — спам, входящие, промоакции — CRM не знает.

В статье:

Читать далее

Новости

Kaiten → коробочный Bitrix24: как мы переносили не задачи, а память команды

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели9.1K

На первый взгляд миграция из Kaiten в Bitrix24 выглядит как обычная интеграционная задача: прочитать данные из одного REST API и записать в другой REST API.

Но это впечатление быстро проходит, когда начинаешь переносить не демо-доску, а живую проектную систему.

В Kaiten уже накоплены пользователи, пространства, карточки, комментарии, файлы, ссылки внутри описаний, пользовательские поля, стадии, архивные задачи, связи между карточками и исторический контекст работы команды. Если перенести только названия карточек, формально миграция состоится. Но для бизнеса это будет потеря памяти.

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

В этой статье расскажу, как мы построили мигратор на Python, где помог асинхронный подход, почему маппинг ID оказался центральной частью архитектуры, какие ограничения обнаружились в коробочном Bitrix24 и почему часть задач пришлось решать не только через REST API, но и через отдельные серверные скрипты.

Репозиторий с кодом: https://github.com/vlikhobabin/kaiten-to-bitrix

Как перенести память команды за выходные

Почему CRM в Битрикс24 тормозит на 50К сделок и что с этим делать

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели12K

Когда CRM в Битрикс24 начинает открывать список сделок по 10 секунд, обычно первым делом подозревают сервер, нагрузку или саму платформу. Но на практике узкое место часто лежит ближе к базе: фильтры по UF-полям без индексов, лишние JOIN, неявный LIKE в ORM, N+1-запросы и обработчики, которые внезапно превращают массовое обновление в нагрузочный тест.

В статье разбираем, как подойти к проблеме системно: включить slow query log, прочитать EXPLAIN, найти реальные причины тормозов и точечно ускорить CRM без миграции и бессмысленного наращивания железа.

Читать далее

Migration toolkit для 1С Битрикс: переносим аккаунт между инстансами через crm.*.list + идемпотентность по ORIGINATOR_ID

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели9.4K

В предыдущей статье (как отдавать лиды из Next.js в 1С Битрикс) я показывал outbound‑интеграцию: сайт пишет лид к себе в PostgreSQL, через after() отдаёт его в Битрикс, в строку лида подкладывает bitrix_id. Архитектура работает, пока Битрикс один.

Но в реальной жизни Битрикс редко остаётся один. Сценарии, в которых нужна полноценная миграция между инстансами, я ловил на проектах четыре раза за последний год:

Читать далее

Как отдавать лиды из Next.js в 1С Битрикс: outbound без очередей и воркеров

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели6K

Типовая задача на российском рынке: есть публичный сайт (лендинг, маркетплейс, каталог), на нём формы — заявка, регистрация, заявка партнёра. Эти лиды должны попадать в 1С Битрикс, где с ними работает отдел продаж.

Подход "в лоб" выглядит так: в обработчике формы сделать await fetch('https://bitrix.../crm.lead.add', ...) и вернуть пользователю ответ после того, как Битрикс подтвердил создание лида.

Это плохо работает. Битрикс REST API нестабилен по latency — 200 мс в норме, 8 секунд при нагрузке на стороне CRM. Пользователь сайта в это время смотрит на крутилку. Если Битрикс упал или таймаутит — сайт отдаёт ошибку, хотя пользователь форму заполнил корректно.

В этой статье — паттерн, который я использовал на маркетплейсе недвижимости на Next.js 16 + PostgreSQL 16 + 1С Битрикс. Без Redis, без BullMQ, без отдельного воркера. Просто Next.js API route + after() + минимальный HTTP-клиент с retry и таймаутом.

Цифры проекта для контекста: 25 объектов недвижимости в каталоге (отдельная сущность ready_homes оставлена за скобками статьи), 57 API-роутов, PostgreSQL 16.13 на VPS, деплой через systemd + nginx, интеграция с Битрикс — исключительно outbound (сайт → CRM).

Читать далее

Не общались напрямую. Как мы построили устойчивую связку Диадок-Битрикс24

Время на прочтение9 мин
Охват и читатели6.2K

Заходят как-то в бар Битрикс24 и Диадок — и быстро выясняется, что работать вместе им пока сложно. Битрикс24 отвечает за сделки и коммуникации, Диадок — за документы и статусы. А бизнесу нужна единая цепочка: документ появился в Диадоке — менеджер сразу видит его в CRM без переключений и ручных сверок.

Мы реализовали такую интеграцию с нуля. Настроили автоматическую передачу документов из Диадока в Битрикс24. Документы создают лиды, а статусы, файлы и история изменений отображаются в CRM.

Читать далее

Укрощение 1С-Битрикс: оптимизация новостного сайта, который падал под нагрузкой

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели6.3K

Привет, Хабр! Расскажу, как мы спасли крупный новостной сайт ugra-news.ru от постоянных падений — без покупки нового железа и переписывания с нуля. Только точечные оптимизации, знание архитектуры Битрикс и немного детективной работы. Приступим.

Читать далее

Bitrix это легаси? Или где живёт архитектура

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели8.5K

Часто слышу в IT:

PHP устарел

Bitrix - монолит из 2000-х

На Bitrix невозможно писать нормальную архитектуру

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

Читать далее

Как делать приложения для Маркетплейса Битрикс24 и не сойти с ума: подводные камни, которых нет в документации

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели6.3K

За пару лет я сделал с десяток приложений для Маркетплейса Битрикс24 — коннекторы мессенджеров, роботы, iframe-панели. На PHP, TypeScript и Python. Каждый раз одно и то же: документация разбросана, примеры устарели, а реальные подводные камни вылезают только в продакшене.

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

Читать далее

Как контролировать расходы, если денег уже не осталось: разбор механик тотального контроля в 6 PFM-сервисах

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели7.9K

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

Мы разобрали 6 популярных PFM-инструментов (Personal Finance Management), чтобы посмотреть, как именно — на уровне архитектуры и UX — они заставляют пользователя «резать косты» и брать бюджет под контроль.

Читать далее

Роботы vs бизнес-процессы в Битрикс24: когда что использовать и как не запутаться

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели7.2K

Привет, Хабр!

В Битрикс24 есть два инструмента автоматизации, которые как будто делают одно и то же. Роботы — настраиваются в CRM на стадиях воронки, срабатывают при переходе сделки между этапами. Бизнес-процессы — настраиваются в визуальном дизайнере, поддерживают ветвления, циклы, переменные и многоэтапные согласования.

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

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

Читать далее

Миграция с Supabase на VPS PostgreSQL без downtime: dual-write, strangler pattern и SSR read-path

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели5K

TL;DR

Мигрировал продакшн базу с Supabase на VPS PostgreSQL прямо на работающем проекте — без остановки, без потери данных. Заодно перенёс авторизацию через strangler-подход и убрал Supabase из SSR read-path. Расскажу три инженерных решения с кодом.

Читать далее

Как мы автоматизировали сбор бизнес-идей

Время на прочтение7 мин
Охват и читатели6.6K

Продолжаем серию статей о нашем функциональном и удобном корпоративном портале.

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

Читать далее

Ближайшие события

Что может пойти и обязательно пойдет не так при написании MCP-сервера

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели8.5K

Привет! Миша Васильев на связи, разработчик в команде AI Битрикс24. 

Недавно я написал статью про MCP — протокол для стандартизации работы LLM с внешними инструментами. Там мы разобрали, как это всё устроено, какие возможности даёт и почему это круто.

Но за год активной работы с MCP мы наступили на все возможные грабли. Некоторые из них очевидны только постфактум. Другие не описаны ни в какой документации. Третьи — следствие того, что MCP развивается настолько быстро, что устоявшихся практик ещё толком не существует.

В этой статье я собрал семь основных проблем, с которыми мы столкнулись при разработке MCP-серверов, и объясню, как их избежать (или хотя бы постараться это сделать).

Читать далее

ИИ уже читает ваш сайт, но по каким правилам? LLMs.txt, robots.txt и контроль агентов

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели6.6K

Еще пару лет назад веб жил в простой и понятной модели: есть сайты, есть поисковые роботы, есть пользователи. Роботы приходят, сканируют страницы, кладут их в индекс — дальше начинается привычная борьба за позиции в выдаче. Эта логика десятилетиями определяла, как мы строим сайты, настраиваем SEO и пишем robots.txt.

С появлением LLM-агентов эта модель начала трещать по швам.

Читать далее

Администратор может читать переписку сотрудников в Bitrix24. Это нормально?

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели11K

В коробочной версии Bitrix24 функция «Авторизоваться под пользователем» является штатной и удобной для администрирования.
Однако в корпоративной среде с требованиями ИБ и compliance она порождает интересную инженерную задачу: где проходит граница прикладной безопасности?

Разбираем архитектуру impersonation, ограничения триггеров БД и попытку реализовать компенсирующие меры на прикладном уровне.

Читать далее

Федеративная архитектура дилерских сайтов: Bitrix, Manticore Search и OpenAI Batch API для каталога на 50k SKU

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели5.9K

Когда производитель с дилерской сетью из 85+ партнёров решает стандартизировать их сайты — первый инстинкт понятен: сделать JSON-фид с основного домена, настроить синхронизацию, и пусть у всех будет одинаковый актуальный каталог.

Проблема в том, что «одинаковый» и «хорошо индексируемый» — противоречащие друг другу требования, если реализовано наивно. Яндекс видит 85 сайтов с идентичным контентом и поступает предсказуемо.

Под катом — как мы решали эту задачу для крупнейшего производителя сельхозтехники в России (150+ моделей комбайнов и тракторов, 50 000 SKU запчастей): архитектура Lock/Edit на уровне инфоблоков Битрикс, Manticore Search для артикулов со спецсимволами, OpenAI Batch API для обогащения каталога и Python-автоматизация развёртывания 85 поддоменов.

Читать далее

Один для многих — как мы написали универсальный грид для портала на Битриксе

Уровень сложностиСредний
Время на прочтение23 мин
Охват и читатели6.4K

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

Наша команда специализируется на развитии корп. портала Группы НЛМК на платформе Битрикс, и еще нескольких корпоративных сайтов.

Значимая часть портала — это широкий набор сервисов для решения задач бизнеса. Например, регистрация и обработка заявок на перевод документов, работа с приёмом делегаций, волонтёрской активностью, проведение оценки рабочих, работа с пользователями (поздравления, благодарности, знаки отличия сотрудников) и многое другое. Несмотря на всё разнообразие сервисов, для их разработки зачастую используются одни и те же функциональные блоки — универсальные "кирпичики" для решения типовых задач.

В предыдущей статье я рассказывал про опыт работы с бизнес процессами 1С-Битрикс. Сейчас хотелось бы затронуть другую, не менее востребованную задачу — задачу по удобному и структурированному выводу данных.

Читать далее

Интеграция 40+ дилеров через REST API: как мы построили портал запчастей крупнейшего сельхозпроизводителя в России

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели7.6K

Про эталонный справочник, JWT-авторизацию, требования КИИ и почему 1С-Битрикс вместо Laravel

В 2022 году мы получили задачу: автоматизировать заказы запчастей для 40+ дилеров. Вызов был не в объёме данных (50,000 SKU), а в разнородности систем дилеров и требованиях безопасности КИИ.

Через 18 месяцев 65% заказов пошли через портал без участия операторов. REST API интегрирован с 28 дилерами (70% сети). Время оформления заказа сократилось с 45 минут до 7.

Под катом — архитектурные решения, почему эталонный справочник важнее REST API, и как обойти ограничения КИИ.

Читать далее

Не та 1С, которую вы знали: Полный гайд по технологии 1С: Элемент

Время на прочтение11 мин
Охват и читатели18K

Привет, Хабр! (И тебе, 1С-ник, который привык к «желтой» программке, и тебе, веб-разработчик, который до сих пор думает, что 1С - это только про накладные и бухгалтеров.)

В прошлой серии мы выяснили, что «1С:Предприятие.Элемент» - это не та «желтая программа», к которой привыкли бухгалтеры, а вполне себе модный cloud-native зверь с IDE в браузере. Но слова - это дешево. Разработчику нужно видеть код, архитектуру и понимать, как это соотносится с тем, что он уже знает (будь то 1C, Python или JavaScript).

Сегодня мы лезем под капот. Мы разберем синтаксис, систему типов, декларативный UI и узнаем, как 1С реализовала ORM, который (спойлер) удобнее многого, что вы знали, но не без своих 1С-овских замашек.

Поехали.

Читать далее
1
23 ...