Розробка мобільного додатка інтернет-магазину 1С-Бітрікс

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Розробка мобільного додатка інтернет-магазину 1С-Бітрікс
Середня
~1-2 тижні
Часті питання

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

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • 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
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Розробка мобільного додатка інтернет-магазину 1С-Бітрікс

Мобільний трафік в e-commerce давно перевищив десктопний, а адаптивна вёрстка часто недостатня. Нативний або гібридний додаток дає push-сповіщення, офлайн-доступ до каталогу й ощутимо швидший інтерфейс. Для інтернет-магазину на 1С-Бітрікс існує три принципово різних підходи: PWA, кросплатформна розробка через REST API та готовий модуль «1С-Бітрікс: Мобільний додаток». У кожного — свої обмеження та область застосування.

Підхід 1: PWA

Progressive Web App — найшвидший шлях до «мобільного додатка» без публікації в сторах. Бітрікс з версії 20.0 містить вбудовану підтримку PWA: Service Worker для кешування, Web App Manifest для іконки на домашньому екрані, push через Push API.

Що дає PWA з коробки Бітрікс:

  • Встановлення на домашній екран без App Store / Google Play.
  • Офлайн-доступ до раніше завантажених сторінок (каталог, карточки товарів).
  • Push-сповіщення через браузер (обмежені на iOS — Safari підтримує Web Push тільки з версії 16.4).
  • Кешування статики через Service Worker, настроюване у файлі sw.js кореня сайту.

Обмеження: немає доступу до NFC, Bluetooth, контактів, камери з розширеними настройками. На iOS PWA працюють у контейнері WebKit з урізаними можливостями. Apple досі обмежує сховище PWA на рівні ~50 МБ. Для простого каталогу з кошиком цього вистачить, для додатка з офлайн-синхронізацією замовлень — ні.

Підхід 2: React Native / Flutter + REST API

Кросплатформна розробка з React Native або Flutter дає повнофункціональний нативний додаток з єдиною кодовою базою. Бітрікс виступає бекендом, надаючи дані через REST API.

REST API Бітрікс покриває основні сутності:

Група методів Приклади Призначення
Каталог catalog.product.list, catalog.product.get Отримання товарів з цінами та властивостями
Кошик sale.basket.addProduct, sale.basket.getList Керування кошиком користувача
Замовлення sale.order.add, sale.order.get Створення та перегляд замовлень
Оплата sale.paysystem.list Список платіжних систем
Доставка sale.delivery.getlist Доступні служби доставки
Користувач user.current, user.get Авторизація та профіль

Авторизація реалізується через OAuth 2.0 — додаток отримує access_token та refresh_token. Для мобільного додатка використовується flow authorization_code з PKCE.

Архітектура взаємодії:

Мобільний додаток → HTTPS → REST API Бітрікс → ORM → PostgreSQL/MySQL

Критично важливо не звертатися до REST прямо для кожного екрана — у Бітрікс REST API є ліміт 2 запити на секунду на користувача (для хмарної версії). Для коробки ліміт залежить від налаштувань сервера, але навантаження все одно суттєве. Рішення — проміжний API-шар (middleware на Node.js або Go), який агрегує дані й кешує відповіді.

Каталог в мобільному додатку — найресурсомісна частина. Товари з зображеннями, фільтрами та сортуванням. Для швидкої роботи:

  • Реалізуйте пагінацію через start та limit в REST-запитах.
  • Кешуйте дерево розділів на клієнті — воно змінюється рідко.
  • Зображення віддавайте через CDN з ресайзом (Бітрікс зберігає оригінали в /upload/, ресайз виконує модуль resize_image).

Кошик та оформлення замовлення через REST працюють надійно, але є нюанс: правила знижок кошика (sale.discount) застосовуються серверної стороною при виклику sale.basket.addProduct. Клієнт отримує вже перераховані ціни. Однак відображення проміжних станів (застосований купон, змінилась кількість) потребує повторного запиту до сервера.

Оплата — окрема тема. Еквайринг (ЮKassa, CloudPayments) зазвичай працює через WebView: додаток відкриває платіжну сторінку, користувач вводить дані карти, після оплати управління повертається в додаток через deep link. Нативна інтеграція Apple Pay / Google Pay потребує окремого модуля на стороні Бітрікс та відповідного SDK в додатку.

Підхід 3: 1С-Бітрікс: Мобільний додаток

Готове рішення від вендора. Являє собою нативну оболонку (iOS + Android), яка завантажує мобільну версію сайту в WebView з розширеними можливостями через JavaScript-мост.

Що входить:

  • Шаблон мобільного сайту, оптимізований під WebView.
  • Нативні push-сповіщення через модуль pull (Firebase Cloud Messaging для Android, APNs для iOS).
  • Інтеграція з камерою для сканування штрих-кодів.
  • Готові зібрані для публікації в App Store та Google Play (через кабінет розробника Бітрікс).

Обмеження: дизайн обмежений рамками шаблону, кастомізація — через CSS і JavaScript всередині WebView. Додати екран з нативною анімацією або складним UI можна лише з модифікацією оболонки. Продуктивність залежить від швидкості завантаження мобільного сайту — по суті, це упакований браузер.

Порівняння підходів

Критерій PWA React Native / Flutter Мобільний додаток Бітрікс
Вартість розробки Низька Висока Середня
Час запуску 1-2 тижні 2-6 місяців 2-4 тижні
Публікація в сторах Ні (TWA для Google Play) Так Так
Нативний UX Ні Так Частково (WebView)
Push-сповіщення Обмежені на iOS Повнофункціональні Повнофункціональні
Офлайн-режим Базовий Повний (SQLite/Realm) Мінімальний
Кастомізація Висока (веб) Максимальна Обмежена
Оновлення контенту Миттєве Потребує публікації Миттєве (веб-контент)

Push-сповіщення

Модуль pull у Бітрікс забезпечує серверну частину push-інфраструктури. Для мобільних додатків він інтегрується з Firebase Cloud Messaging (Android) та Apple Push Notification service (iOS). Відправлення push з коду:

\Bitrix\Pull\Push::add($userId, [
    'module_id' => 'sale',
    'push' => [
        'message' => 'Ваше замовлення #1234 відправлено',
        'params' => ['ORDER_ID' => 1234],
    ],
]);

Для сегментованих рассилок (покинутий кошик, персональні знижки) використовується связка модулів sender + pull: маркетолог створює сегмент у CRM, а sender ініціює push через pull.

Офлайн-режим

Повнофункціональний офлайн для каталогу реалізується тільки в нативному додатку. Схема: при першому запуску або за розкладом додаток завантажує каталог через REST (catalog.product.list з пагінацією) й зберігає в локальну БД (SQLite для React Native, Hive/Isar для Flutter). Зображення кешуються на файловій системі пристрою. Синхронізація — за delta-принципом: запитуються тільки товари з DATE_MODIFY більше останної синхронізації.

Кошик в офлайні формується локально, а при появі мережі — синхронізується з сервером через sale.basket.addProduct. Конфлікти (товар закінчився, ціна змінилась) обробляються сповіщенням користувачу.

Публікація в App Store та Google Play

Для React Native / Flutter — стандартний процес: збірка через Xcode / Android Studio, підписання сертифікатами, завантаження в консолях розробника.

Для модуля «Мобільний додаток» Бітрікс надає сервіс збірки: ви завантажуєте іконки, сплеш-скрини та конфігурацію в кабінет, отримуєте готові .ipa та .aab файли. Публікуєте самостійно через свій акаунт розробника (Apple Developer Program — $99/рік, Google Play — $25 одноразово).

Важливо: Apple регулярно ужесточує правила для додатків-обгорток навколо WebView. Якщо додаток не надає значимої нативної функціональності поверх веб-версії — є ризик відхилення при ревю.