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

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

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

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

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

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

Як розробити мобільний додаток для інтернет-магазину на Бітрікс?

Запит на мобільний додаток виникає, коли адаптивна верстка вже є, конверсія з мобільного трафіку — 0.8% проти 2.5% на десктопі, а маркетинг хоче push-сповіщення, які в мобільному Safari не працюють. Питання не «навіщо додаток», а який підхід обрати — PWA, кроссплатформа на React Native, чи нативна розробка — і як правильно зв'язати це з Бітрікс. Ми обираємо підхід під конкретний бюджет і цілі, спираючись на 9+ років досвіду в Бітрікс і 50+ реалізованих проєктів. При правильному виборі підходу окупність складає 6-12 місяців, а вартість розробки варіюється в залежності від функціональності.

Чому React Native — вибір для більшості магазинів?

React Native дає в 2-3 рази швидший запуск порівняно з нативною розробкою при збереженні нативного UX. Бітрікс виступає бекендом, віддає дані через REST API. Якщо для веб-версії вже написані кастомні API-ендпоінти (headless), додаток перевикористовує їх без змін.

Архітектура:

React Native App → HTTPS → API Gateway → REST API Бітрікс → ORM → MySQL

Ключові REST-методи: catalog.product.list, sale.basket.addItem, sale.order.add. Але стандартного REST недостатньо. Пишемо кастомні ендпоінти через \Bitrix\Main\Engine\Controller:

  • /api/mobile/catalog/list — полегшена відповідь для списку (ID, назва, ціна, прев'ю)
  • /api/mobile/catalog/detail — повна картка з торговими пропозиціями
  • /api/cart/calculate — перерахунок кошика з урахуванням знижок
  • /api/checkout/delivery-options — розрахунок вартості доставки

Чому окремі ендпоінти? Розмір відповіді. На 3G каталог з 50 полів на товар вбиває UX. Мобільний ендпоінт повертає 7–8 полів для списку.

Як курсорна пагінація вирішує проблему дублів?

На вебі пагінація по сторінках (page=3&limit=20) працює. На мобільному — користувач гортає стрічку нескінченним скролом. Якщо між запитами додається новий товар — дублі. Рішення — курсорна пагінація. Кожна відповідь містить cursor (ID+timestamp останнього). Наступний запит передає cursor замість номера сторінки.

GET /api/mobile/catalog/list?section_id=15&cursor=...&limit=20

На стороні Бітрікс курсор декодується в WHERE ID < 1500 ORDER BY ID DESC LIMIT 20 — стабільна вибірка незалежно від нових товарів.

Push-сповіщення: архітектура та сценарії

Push — головна перевага додатку. Архітектура:

  1. Device-токен — додаток реєструється в FCM або APNs, отримує токен, надсилає на сервер через /api/push/register.
  2. Зберігання токенів — кастомна таблиця в Бітрікс: USER_ID, DEVICE_TOKEN, PLATFORM, CREATED_AT.
  3. Генерація події — обробник OnSaleStatusOrder або агент для кинутих кошиків формує payload.
  4. Відправка — HTTP POST у FCM API v1 з токеном, заголовком, текстом і deeplink.

Сценарії:

  • Статус замовлення — подія OnSaleStatusOrder
  • Кинутий кошик — через 30 хвилин після додавання (агент CAgent)
  • Зниження ціни — товар з обраного подешевшав
  • Персональні акції — через сегментацію CRM

Використовуємо @react-native-firebase/messaging для прийому push, react-native-push-notification для локального відображення.

Що дає офлайн-режим?

При першому запуску додаток завантажує каталог через REST API порціями по 100 товарів і зберігає в локальну SQLite. Зображення кешуються через react-native-fast-image. Далі — дельта-синхронізація. Ендпоінт /api/catalog/delta?since=... повертає тільки змінені товари. На стороні Бітрікс:

SELECT ID, NAME, PREVIEW_PICTURE, DETAIL_PAGE_URL
FROM b_iblock_element
WHERE IBLOCK_ID = 15
  AND TIMESTAMP_X > ?
  AND ACTIVE = 'Y'

Плюс окремий запит на видалені товари. Кошик в офлайні — зберігається локально, при появі мережі синхронізується з сервером з перевіркою актуальних цін. Додаток показує diff: «Ціна на товар змінилася.»

Checkout та оплата з додатку

Оформлення замовлення — технічно складний екран. Послідовність:

  1. Адреса доставки — автодоповнення через DaData або збережена адреса
  2. Розрахунок доставки — запит до /api/checkout/delivery-options з адресою та кошиком. Бітрікс викликає обробники (СДЕК, Boxberry), повертає варіанти з цінами та термінами
  3. Вибір оплати — список з sale.paySystem.getList
  4. Промокод — перевірка через кастомний endpoint, перерахунок суми
  5. Підтвердження — sale.order.add

Оплата карткою — через SDK платіжного шлюзу (ЮKassa, Apple Pay, Google Pay). SDK відкриває нативний екран оплати, обробляє 3D Secure, повертає результат. Після оплати Бітрікс отримує callback від шлюзу на /bitrix/tools/sale_ps_result.php і встановлює PAYED = 'Y' в b_sale_order.

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

Характеристика PWA React Native Нативна
Складність Низька Середня Висока
Доступ до нативних API Обмежений Хороший Повний
Push на iOS З обмеженнями Повноцінні Повноцінні
Продуктивність Середня Висока Максимальна
Терміни розробки 2–3 дні 3–12 тижнів 8–20 тижнів

PWA обходиться в 5 разів швидше React Native, але не підходить для складних сценаріїв. React Native — золота середина для 90% магазинів. Нативна розробка потрібна тільки при екстремальних вимогах до продуктивності.

Що входить в роботу

При замовленні розробки під ключ:

  • технічне завдання з архітектурою та прототипами
  • репозиторій з кодом (GitHub/GitLab), налаштований CI/CD
  • документація з розгортання та інтеграції з Бітрікс
  • інструкція з публікації в App Store та Google Play
  • навчання адміністраторів push-сповіщенням та оновленню контенту
  • гарантія на код — 12 місяців безкоштовного виправлення помилок

Терміни по масштабу

Масштаб Що входить Термін (React Native)
PWA Маніфест, service worker, офлайн-сторінка 2–3 дні
MVP Каталог, картка, кошик, оформлення, push 3–5 тижнів
Стандартний + ОК, історія, обране, офлайн-каталог 6–8 тижнів
Просунутий + сканер, AR-примірка, чат, Apple Pay/Google Pay 8–12 тижнів

Зв'яжіться з нами для оцінки вашого проєкту — ми підберемо оптимальний стек і терміни. Отримайте консультацію з вибору підходу — ми порівняємо варіанти для вашого бюджету.

PWA — MDN Web Docs: Progressive Web Apps

Чому 1С-Бітрікс — флагман e-commerce?

Фасетний індекс на каталозі з 200 000 SKU не побудовано — bitrix:catalog.smart.filter відпрацьовує 4 секунди замість 200 мс, і покупець іде. Наша розробка інтернет-магазинів на 1С-Бітрікс виключає такі сценарії: від архітектури інфоблоків та типів цін до кластерної балансировки під пікові навантаження. Типова помилка новачків — не налаштовано композитний кеш (bitrix:main.composite), і сторінки карток завантажуються по 5 секунд. Це вбиває конверсію швидше, ніж будь-який баг у кошику.

Двостороння синхронізація з 1С через CommerceML — каталог, ціни, залишки, замовлення та статуси. Налаштовується з адмінки модулем catalog -> «Обмін з 1С». Вивантаження на маркетплейси через YML-фіди (catalog.export) для Яндекс.Маркет, Google Shopping, Ozon, Wildberries.

Як ми вирішуємо ключові проблеми продуктивності?

bitrix:catalog.smart.filter без фасетного індексу генерує запити, які кладуть MySQL. Рішення: будуємо b_catalog_iblock_index — час відповіді падає з 4 секунд до 100–200 мс. Для SEO-фільтрів використовуємо catalog.seo.filter — індексовані сторінки перетинів фільтрів з унікальними мета-тегами.

Композитний кеш (bitrix:main.composite) прискорює завантаження сторінок у 3–5 разів порівняно зі звичайним. Мета — TTFB картки товару < 200 мс. Для сесій використовуємо Redis (SESSION_SAVE_HANDLER = redis в .settings.php). Lazy load зображень, CDN для статики, оптимізація SQL (особливо JOIN-и на b_iblock_element_property).

Чому кешування критичне для інтернет-магазину?

Кожна секунда затримки завантаження сторінки знижує конверсію в середньому на 7%. При TTFB > 400 мс 32% користувачів залишають сайт. Композитний кеш віддає сторінку з HTML, минаючи виконання PHP та запити до бази — це дає виграш до 5 разів за часом. Для карток товарів з частими змінами цін та залишків використовуємо теговане кешування: інвалідація відбувається лише за порушеними сутностями. На практиці вдавалося знизити TTFB з 1,2 секунди до 180 мс. Економія часу на завантаження каталогу — до 60%.

Типи магазинів та їх особливості

Тип магазину Ключові модулі Особливості
B2C роздріб catalog.smart.filter, catalog.compare.list, відгуки, рейтинги Фасетний індекс, конверсійна воронка від картки до оплати
B2B опт дилерські ціни (b_catalog_group), мін. партії, кредитні ліміти Особисті кабінети, швидке замовлення за артикулом, PDF-рахунки
Цифрові товари ліцензії, підписки, файли OnSaleOrderPaid -> автоматична видача доступу
Маркетплейс модуль «Маркетплейс» або кастом Декілька продавців, роздільний облік, комісійна модель
PWA / мобільні Progressive Web App, React Native + REST API Офлайн-каталог, push-повідомлення

Інтеграції: платіжні системи, доставка, CRM, маркетплейси

Платіжні системи. Обробники в sale.handlers: ЮKassa, CloudPayments, Тинькофф, Сбербанк, Apple Pay, Google Pay, розстрочка. Callback sale.payment.notify для підтвердження статусу. Доставка. Обробники sale.delivery для СДЭК, Boxberry, Почту Росії, DPD — розрахунок вартості по API в реальному часі, трекінг. Складський облік. Резервування (RESERVED = Y в b_sale_basket), автоматичне списання при відвантаженні, сповіщення при залишках нижче порогу, передзамовлення для товарів в дорозі. CRM. Бітрікс24 або amoCRM — замовлення з b_sale_order ідуть автоматично, клієнтська база синхронізується. Тригери: покинутий кошик, запит відгуку, реактивація. Маркетплейси. Вивантаження через YML на Ozon, Wildberries, Яндекс.Маркет. Замовлення стікаються в єдину систему. Аналітика та маркетинг. GA4, Яндекс.Метрика, email-розсилки (Unisender, SendPulse). Логістика. МійСклад, Антор — етикетки, складальні листи.

Міграція з інших CMS

Перехід з OpenCart, WooCommerce, Shopify, MODX: перенесення каталогу (елементи, властивості, розділи, зображення, SEO-URL), міграція клієнтської бази (b_user) та історії замовлень (b_sale_order), 301-редиректи через urlrewrite.php. Паралельна робота на перехідний період — старий сайт продає, новий приймається. Досвід команди — 50+ проектів міграції.

Що входить в роботу (deliverables)

Deliverable Опис
Технічне завдання Бізнес-вимоги, структура каталогу, інтеграції, логіка кошика
Архітектура інфоблоків Типи цін, властивості, розділи, HL-блоки, ORM-сутності
Компоненти та шаблони Кастомні або адаптовані штатні (Component 2.0)
Інтеграції Платежі, доставка, CRM, маркетплейси, 1С
Документація Інструкції з наповнення, REST API, схема БД
Навчання команди Робота з адмінкою, вивантаженнями, оновленнями
Гарантія Безкоштовна підтримка 3 місяці після запуску, виправлення багів

Етапи та терміни

Середній проект — 2–4 місяці:

  1. Аналітика (1–2 тижні) — бізнес-вимоги, структура каталогу, інтеграції, ТЗ
  2. Дизайн (2–3 тижні) — прототипи, дизайн-система, макети
  3. Розробка (4–8 тижнів) — компоненти, шаблони, інтеграції, наповнення
  4. Тестування (1–2 тижні) — функціональне, навантажувальне, приймальне
  5. Запуск (2–3 дні) — деплой, моніторинг, оперативна підтримка

Вартість розраховується індивідуально — зв'яжіться з нами для оцінки бюджету. Наприклад, магазин на 50 000 товарів з інтеграцією 1С та CRM — бюджет варіюється в залежності від складності. MVP для старту доступний за мінімальною планкою. Економія на завантаженні каталогу до 60% часу.

Програма лояльності та конверсія

Бонусна система: бали за покупки, відгуки, рекомендації. Правила нарахування за категоріями, ліміт оплати балами, термін згоряння — все в особистому кабінеті. VIP-рівні (бронза, срібло, золото, платина) з підвищеним кешбеком та безкоштовною доставкою. Рекомендації «Вам сподобається», «Доповніть покупку» — вбудовані інструменти Бітрікс + RetailRocket або Mindbox. Тригери: знижка до дня народження, промокод для повернення, ланцюжок за інтересами. Персоналізація через catalog.recommended.products та catalog.viewed.products. A/B-тестування двох варіантів картки на реальному трафіку. Enhanced E-commerce в GA4 та Яндекс.Метриці — повний шлях від кліка до повторного візиту.

Зв'яжіться з нами для розрахунку вашого проекту. Замовте розробку інтернет-магазину під ключ — отримайте готове рішення з гарантією та підтримкою.