Сайт для аптечной сети на 1С-Битрикс: каталог, бронирование, МДЛП

Создание фармацевтического сайта на 1С-Битрикс с интеграцией учёта и МДЛП Крупная аптечная сеть с 15 000 SKU и 200 аптек обнаружила: на сайте отображались остатки трёхдневной давности. Пользователи оформляли бронь, а в аптеке товара не было. Интеграция с 1С через FTP-файлы ломалась раз в месяц, а
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Сайт для аптечной сети на 1С-Битрикс: каталог, бронирование, МДЛП
Сложный
от 1 недели до 3 месяцев

Наши компетенции:

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

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1455
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    1018
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    760
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    879
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    804
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1162

Создание фармацевтического сайта на 1С-Битрикс с интеграцией учёта и МДЛП

Крупная аптечная сеть с 15 000 SKU и 200 аптек обнаружила: на сайте отображались остатки трёхдневной давности. Пользователи оформляли бронь, а в аптеке товара не было. Интеграция с 1С через FTP-файлы ломалась раз в месяц, а поиск аналогов отсутствовал. Мы перепроектировали архитектуру — теперь остатки обновляются каждые 15 минут, а поиск по симптомам обрабатывает 10 000 запросов в день. Стоимость такого проекта — от $6k–12k в зависимости от числа аптек и сложности интеграций.

Почему разработка сайта аптеки на 1С-Битрикс требует особого подхода?

Аптечный e-commerce зарегулирован Федеральным законом №61-ФЗ «Об обращении лекарственных средств». Кроме лицензирования, нужна интеграция с МДЛП, учёт рецептурных ограничений, точные остатки и подбор аналогов. Битрикс с инфоблоками и Highload-блоками решает эти задачи, но требует правильной настройки. Мы закладываем архитектуру так, чтобы справляться с 47% трафика, приходящего через поиск по симптомам.

Каталог лекарственных препаратов

Структура каталога базируется на инфоблоке со свойствами под фармацевтику:

Свойство Тип Назначение
ACTIVE_SUBSTANCE Строка МНН (международное непатентованное наименование)
TRADE_NAME Название элемента Торговое наименование
DOSAGE_FORM Список Таблетки, капсулы, раствор, мазь, суппозитории...
DOSAGE Строка 500 мг, 10 мг/мл
PACKAGE_QTY Число Количество в упаковке
PRESCRIPTION Список Рецептурный / Безрецептурный
ATC_CODE Строка Код АТХ-классификации (J01CA04 и т.д.)
MANUFACTURER Привязка к HL Производитель
COUNTRY Привязка к HL Страна производства
REG_NUMBER Строка Номер регистрационного удостоверения
STORAGE_TEMP Список До 25°C / 2–8°C / Без ограничений
MDLP_GTIN Строка GTIN для маркировки МДЛП
ANALOGS Привязка к элементам (множ.) Аналоги по МНН

Для рецептурных препаратов кнопка «Купить» заменяется на «Забронировать» с пояснением: отпуск только при предъявлении рецепта. Это проверяет свойство PRESCRIPTION в шаблоне catalog.element. Категоризация двойная: по АТХ-группам и по тегам назначения (от головной боли, от простуды).

Как реализовать поиск по симптомам и интеграцию с МКБ-10?

Справочник МКБ-10 загружается в Highload-блок hl_mkb10:

  • UF_CODE — код диагноза (J06.9, K21.0)
  • UF_NAME — название диагноза
  • UF_PARENT_CODE — код родительской группы
  • UF_SYNONYMS — бытовые названия (насморк, изжога, мигрень)

Поисковая строка с автоподсказкой: пользователь вводит «болит горло» — система находит J02 (острый фарингит) и J03 (острый тонзиллит), подставляет связанные препараты. Связь «диагноз → препарат» хранится в промежуточном HL-блоке hl_mkb_drugs (поля: UF_MKB_CODE, UF_PRODUCT_ID). Поиск работает через AJAX-контроллер, результаты кешируются на стороне клиента (sessionStorage). На бэкенде — составной индекс по UF_SYNONYMS + UF_NAME для быстрой фильтрации.

Проверка наличия по аптекам и поиск аналогов

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

Архитектура проверки наличия: Остатки приходят из учётной системы аптечной сети. Варианты:

  1. 1С:Управление аптечной сетью — выгрузка через REST-сервис по HTTP
  2. Фарматика / М-Аптека плюс — обмен через CSV/XML на FTP
  3. Кастомная система — REST API или SOAP

Данные попадают в Highload-блок hl_pharmacy_stock:

Поле Тип Назначение
UF_PRODUCT_ID Число ID товара в каталоге Битрикса
UF_PHARMACY_ID Число ID аптеки (из инфоблока «Аптеки»)
UF_QUANTITY Число Остаток (штуки/упаковки)
UF_PRICE Число Цена в конкретной аптеке
UF_UPDATED_AT Дата/время Время последнего обновления

Синхронизация запускается cron-агентом CPharmacyStockAgent каждые 15 минут. Полная выгрузка — ночью, днём — инкрементальная. При 200 аптеках и 15 000 SKU таблица содержит 3 000 000 записей — нужен индекс по (UF_PRODUCT_ID, UF_PHARMACY_ID). Экономия на интеграции с 1С составляет до $2.7k–3.9k за счёт автоматизации обмена.

Вывод на фронте:

На детальной странице — блок «Наличие в аптеках». AJAX-запрос возвращает список аптек с остатками, отсортированных по удалённости от пользователя (Geolocation API + формула Haversine). Каждая строка: название, адрес, остаток (точное количество или «В наличии» / «Мало» / «Нет»), кнопка «Забронировать». Точное количество не показываем — устаревает за минуты. Три градации: зелёный (>5), жёлтый (1–5), серый (0). Порог настраивается.

Поиск аналогов:

Когда препарата нет — пользователю предлагаются аналоги?

Алгоритм:

  1. Берётся МНН текущего препарата (ACTIVE_SUBSTANCE).
  2. Выбираются все товары с тем же МНН и той же дозировкой — полные аналоги (дженерики).
  3. Если мало совпадений — расширяется до той же АТХ-группы 4-го уровня (фармакологические аналоги).
  4. Результат фильтруется по наличию в аптеках — только те, что в наличии.

Свойство ANALOGS заполняется автоматически cron-скриптом на основе МНН. Ручное редактирование — для исключений.

Онлайн-бронирование

Бронирование — не продажа. Оплата на сайте не взимается. Процесс:

  1. Пользователь выбирает препарат и аптеку, нажимает «Забронировать».
  2. Создаётся заявка в CRM Битрикса (лид или сделка) с данными: препарат, аптека, телефон.
  3. Параллельно — запрос в учётную систему на резервирование.
  4. Пользователь получает SMS/push с номером брони и сроком (24–48 часов).
  5. При истечении — автоматическая отмена, возврат в свободный остаток.

Для рецептурных препаратов бронирование доступно, но при получении обязателен рецепт.

Интеграция с МДЛП

Маркировка через «Честный ЗНАК» обязательна. На сайте: каждый препарат содержит GTIN (MDLP_GTIN), на детальной странице — ссылка «Проверить подлинность» на checkmark.crpt.ru. При бронировании фиксируется серийный номер упаковки (если аптека передаёт через API).

Schema.org для фармацевтики

Микроразметка schema.org/Drug на детальных страницах:

  • nonProprietaryName — МНН
  • activeIngredient — действующее вещество
  • dosageForm — форма выпуска
  • drugClass — фармакологическая группа
  • manufacturer — производитель
  • availableStrength — дозировка
  • prescriptionStatusOTC или PrescriptionOnly
  • isAvailableGenerically — наличие дженериков

Это улучшает индексацию и расширенные сниппеты.

Этапы проекта

Этап Работы Срок
Аналитика и проектирование Маппинг номенклатуры, интеграционные контракты, UX-прототипы 2–3 недели
Каталог и поиск Инфоблоки, HL-блоки, поиск по МКБ-10, фильтры 3–4 недели
Наличие и бронирование Интеграция с учётной системой, геолокация, бронирование 4–5 недель
Аналоги и Schema.org Алгоритм подбора аналогов, микроразметка, SEO 2 недели
Тестирование Проверка обмена данными, нагрузка на HL-блок остатков 1–2 недели
Запуск Наполнение каталога, обучение фармацевтов-редакторов 1 неделя

Что входит в результат

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