Розробка сайту кінотеатру на 1С-Бітрікс

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

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

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

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

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1357
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    944
  • 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

Сайт кінотеатру вирішує одне завдання — продати квиток на сеанс. Постери, трейлери, описи фільмів — усе це обслуговує конверсію з перегляду в покупку. Технічна складність не в контенті (його можна забрати з TMDB автоматично), а в розкладі, який перебудовується щотижня, і в схемах залів мультиплексу, де в кожного залу своя конфігурація місць, зон і цінових категорій. Ми розробляємо сайти кінотеатрів на 1С-Бітрікс, які справляються з цими завданнями без постійної участі розробника.

На 1С-Бітрікс проєкт будується на двох інфоблоках (фільми та сеанси), модулі sale для продажу, інтеграції з TMDB для автозаповнення карток і зв'язці з кінотеатральною системою керування. Вартість проєкту розраховується індивідуально.

Чому для розробки сайту кінотеатру на 1С-Бітрікс обирають два інфоблоки?

Розклад кінотеатру — тривимірна матриця: фільм × зал × час. Спроба впхнути все в один інфоблок закінчується кашею на другому місяці експлуатації. Два інфоблоки — єдиний робочий варіант.

Інфоблок Films — картка фільму:

  • PROPERTY_TMDB_ID — ідентифікатор у The Movie Database (ключове поле)
  • PROPERTY_TITLE_ORIGINAL — оригінальна назва
  • PROPERTY_GENRES — жанри (множинний довідник)
  • PROPERTY_DURATION — хронометраж у хвилинах
  • PROPERTY_AGE_RATING — віковий рейтинг (0+, 6+, 12+, 16+, 18+)
  • PROPERTY_FORMAT — формати показу (2D, 3D, IMAX, Dolby Atmos — множинний)
  • PROPERTY_RELEASE_DATE — дата виходу в прокат
  • PROPERTY_TRAILER_URL — посилання на трейлер (YouTube)
  • PROPERTY_POSTER — постер (файл)
  • PROPERTY_BACKDROP — фонове зображення для шапки

Менеджер вводить тільки TMDB_ID. Агент Бітрікс (CAgent::AddAgent) при створенні елемента робить GET-запит до api.themoviedb.org/3/movie/{id}?language=uk-UA і заповнює: опис, жанри, хронометраж, постер, backdrop, акторський склад. Постер і backdrop завантажуються з image.tmdb.org і зберігаються локально — жодної залежності від зовнішнього CDN у рантаймі. Інфоблоки v2.0 забезпечують зберігання неструктурованих даних із високою продуктивністю.

Оновлення даних — раз на добу агентом: перевіряються зміни рейтингів, нові трейлери. Кешування запитів до TMDB через Bitrix\Main\Data\Cache з TTL 86400 секунд. У TMDB API ліміт — 40 запитів за 10 секунд на безкоштовному тарифі. Для кінотеатру з 15–30 фільмами в прокаті цього з запасом.

Інфоблок Sessions — кожен сеанс як елемент:

Властивість Тип Опис
PROPERTY_FILM_ID Прив'язка Фільм із Films
PROPERTY_HALL_ID Прив'язка Зал із Halls
PROPERTY_DATETIME Дата/час Початок сеансу
PROPERTY_FORMAT Список 2D / 3D / IMAX
PROPERTY_LANGUAGE Список Дубляж / Оригінал / Субтитри
PROPERTY_PRICES JSON Ціни за зонами: {"zone_a": 450, "zone_b": 350, "zone_c": 280, "zone_vip": 700}
PROPERTY_STATUS Список Продаж / Мало місць / Продано / Скасовано

Пакетне завантаження розкладу. Менеджер заповнює Excel-шаблон: фільм, зал, дата, час, формат, мова. Завантажує через кастомний адміністративний інтерфейс. Парсер на PhpSpreadsheet створює елементи Sessions, валідуючи кожен рядок: чи існує фільм у базі, чи не перетинається сеанс з іншим у тому самому залі. Перевірка перетину — за хронометражем фільму + 30 хвилин на прибирання та рекламу. Якщо «Аватар 2» іде 192 хвилини, а наступний сеанс у тому самому залі поставлений через 200 хвилин — валідація викине помилку.

Відображення на сайті. На головній — сітка «фільми × час» на сьогодні та завтра. Компонент bitrix:news.list з групуванням по фільмах, всередині — кнопки сеансів із ціною та форматом. Фільтр за датою, жанром, форматом — AJAX без перезавантаження. На сторінці фільму — повний розклад на поточний і наступний тиждень, таблиця по днях.

Як реалізувати інтерактивну схему залів із зональним ціноутворенням?

Мультиплекс на 5–8 залів — це 5–8 різних SVG-файлів. Зал IMAX на 350 місць і камерний зал на 80 — зовсім різна геометрія. Звичайні крісла, VIP-дивани, love seats, місця для інвалідних візків — кожен тип відмальовується своєю іконкою.

Зональне ціноутворення. Ціна прив'язана до зони, а не до окремого місця. Замість задавання ціни для кожного з 300 місць — 4–5 зональних цін на сеанс:

  • zone_a — центральні ряди оптимального огляду
  • zone_b — бічні та задні ряди
  • zone_c — перші ряди (ближче до екрану)
  • zone_vip — VIP-секція (широкі крісла, столики, збільшена відстань)

Зони задаються в SVG через атрибут data-zone. Ціни зберігаються в JSON-властивості сеансу PROPERTY_PRICES. Адміністратор змінює ціну на конкретний сеанс — без правки SVG.

Інтерактивна схема. Екран відмальовується в SVG як орієнтир — покупець розуміє, де буде сидіти. При наведенні на зону — підсвічування всієї зони з ціною. При тапі на місце — додавання в кошик з анімацією. Мобільна версія: при тапі на область залу — зум на секцію з відображенням окремих місць. Бібліотека svg-pan-zoom для масштабування.

Блокування місць — Redis з TTL 480 секунд (8 хвилин — покупка квитка в кінотеатрі швидше, ніж у театрі). Механізм SETNX з ключем lock:session_{id}:row_{r}:seat_{s}. Закінчення таймера — автоматичне звільнення.

Оформлення покупки:

  1. Валідація місць (не продані, не заблоковані)
  2. Створення замовлення в sale: фільм + сеанс + місце як позиції кошика
  3. Онлайн-оплата — ЮKassa / CloudPayments / СБП
  4. Генерація електронного квитка з QR-кодом
  5. Відправка на email та опціонально push через Telegram Bot API

QR містить зашифрований рядок: ID замовлення, номер місця, контрольна сума HMAC-SHA256. Термінал на вході в зал зчитує QR і відмічає квиток. Повторний прохід — відмова. Для мереж кінотеатрів QR повинен бути унікальним у рамках всієї мережі, а не одного кінотеатру — серійний номер включає код майданчика.

Інтеграція з Кіноплан та іншими системами

Мережеві кінотеатри працюють з автоматизованими системами. Сайт підключається до них для синхронізації розкладу та продажів:

Система Протокол Що дає
Кіноплан REST API Розклад, продаж, бронь, фіскалізація, зали та схеми
Vista Cinema SOAP / REST Сеанси, ціни, статус місць, транзакції
КСЕА XML-RPC Абонементи, подарункові картки, бонуси
Ticketon REST API Віджет продажу, webhook статусів

При роботі з Кіноплан сайт Бітрікс виступає фронтендом, а бекенд продажу — на стороні Кіноплану. Агент синхронізації запускається кожні 5 хвилин: забирає розклад, статуси місць, нові фільми. При покупці через сайт — замовлення передається в API Кіноплан, звідти приходить ID транзакції для фіскального чека.

Для незалежних кінотеатрів без зовнішньої системи вся логіка живе всередині Бітрікс. Фіскалізація чека — через модуль онлайн-каси: інтеграція з АТОЛ, OrangeData або хмарна каса платіжного провайдера (ЮKassa вміє сама відправляти чеки в ОФД).

Бар-меню з передзамовленням до сеансу

На етапі покупки квитка з'являється крок «Додати до замовлення»: попкорн (три розміри), напої, комбо-набори, снеки. Позиції зберігаються в інфоблоці BarMenu з цінами та фото. При додаванні — додаткові позиції в кошику sale.

Після оплати бар отримує замовлення через внутрішній webhook: склад, номер замовлення, час сеансу. До приходу глядача замовлення зібрано. Товарні залишки синхронізуються з 1С:Управління торгівлею через стандартний модуль обміну — якщо попкорн закінчився, позиція деактивується на сайті.

Комбо-набори реалізуються через правила кошика sale: «попкорн великий + кола велика = знижка 15%». Адміністратор створює комбо у візуальному конструкторі знижок без участі розробника.

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

Бонусна система — через внутрішні рахунки модуля sale:

  • Нарахування 5–10% від суми чека після відвідування
  • Списання до 50% вартості наступного квитка
  • День народження — подвоєні бонуси протягом тижня (обробник перевіряє UF_BIRTHDAY)
  • Накопичувальні рівні: Глядач → Кіноман → Кінокритик (пороги в HL-блоці LoyaltyLevels)

Ідентифікація — за номером телефону. Авторизація в особистому кабінеті через SMS-код: модуль main з кастомним обробником через messageservice.

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

  • Проєктна документація: архітектура інфоблоків, схеми залів, опис інтеграцій
  • Вихідний код сайту на 1С-Бітрікс з коментарями
  • Інструкції з адміністрування та наповнення
  • Навчання менеджерів роботі з розкладом і продажами
  • Технічна підтримка протягом 3 місяців після запуску

Технічні терміни

Етап Термін
Проєктування та прототип 2 тижні
Дизайн (адаптив, схеми залів) 3–4 тижні
Верстка 2–3 тижні
Розробка (інфоблоки, розклад, TMDB) 3–4 тижні
SVG-схеми залів і продаж місць 2–3 тижні
Інтеграція (платіжна система, онлайн-каса, Кіноплан) 2–4 тижні
Бар-меню та бонусна система 1–2 тижні
Тестування та наповнення 2 тижні
Разом 17–24 тижні

При інтеграції з Кіноплан або Vista етапи розкладу та продажу місць частково перекриваються — скорочення на 2–3 тижні. Для невеликого однозального кінотеатру без зовнішніх систем проєкт вкладається в 10–12 тижнів. Вартість розраховується після аналізу вимог: кількість залів, наявність кінотеатральної системи, обсяг інтеграцій.

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

Як правильно проектувати інфоблоки?

Ми бачимо десятки проєктів, де неправильна структура інфоблоків перетворює сайт на гальмо. Типовий сценарій: замовник просить «каталог товарів». Розробник створює один інфоблок catalog, закидає туди 15 властивостей. Через півроку — 40 властивостей, 8 з яких використовуються лише для однієї категорії. Фільтр гальмує, таблиця b_iblock_element_property розрослася до мільйонів рядків, CIBlockElement::GetList виконується 3 секунди. Наслідки — падіння конверсії, втрата клієнтів, додаткові витрати на оптимізацію. В одному проєкті після рефакторингу каталогу час генерації сторінки знизився з 4,2 до 0,8 секунди, а вартість підтримки значно скоротилася — за рахунок усунення надлишкових запитів та агентів.

Наш підхід: проектуємо інфоблоки до першого рядка коду. Окремі інфоблоки під сутності (товари, категорії, бренди), властивості-довідники через HL-блоки, торгові пропозиції для SKU. Це закладає продуктивність на роки вперед. Якщо хочете отримати попередній аудит вашої схеми інфоблоків — зв'яжіться з нами, розберемо типові помилки та надамо рекомендації.

Чому 1С-Бітрікс вигідніший за альтернативи?

Вибір CMS диктується не уподобаннями, а бізнес-завданнями. Ось ключові аргументи:

  • Нативний обмін з 1С — модуль catalog.import.1c забезпечує двосторонній обмін товарами, цінами, залишками та замовленнями через CommerceML. Без сторонніх модулів. Це в 5 разів швидше, ніж розробка власного обміну на OpenCart або WordPress. Економія на інтеграції — до 200 000 грн порівняно з кастомними рішеннями.
  • Проактивний захист — модуль security включає WAF, контроль цілісності файлів, захист від SQL-ін'єкцій, двофакторну автентифікацію. Для проєктів з вимогами ФСТЭК — сертифіковане рішення (згідно з Wikipedia, це стандарт для корпоративних систем).
  • Модульна архітектура — підключаємо лише потрібні модулі: iblock, catalog, sale, search. Менше модулів — менше запитів до БД на кожен хіт.
  • Регулярні патчі — вендор випускає security-патчі, закриваючи вразливості швидше, ніж open-source проєкти (середній час виправлення CVE — 2 тижні). Офіційна документація по модулях доступна на сайті розробника.

Що дають HL-блоки і як ми прискорюємо каталог

Highload-блоки — це альтернатива розширеним властивостям інфоблоків, коли список значень може зростати до тисяч записів. Типовий приклад: виробники, країни, кольори. Якщо зберігати їх як властивості-списки в інфоблоці, кожна фільтрація викликає повне сканування таблиці b_iblock_property_enum. З HL-блоками вибірка йде по індексу — час відповіді фільтра знижується з 1–2 секунд до 50 мс. Продуктивність HL-блоків у 8 разів вища за властивості-списки інфоблоків. Ми використовуємо HLB компонент і кастомні запити через Bitrix\Highloadblock\DataManager. Це особливо критично для каталогів з 100 000+ товарами.

З нашої практики — проєкт інтернет-магазину з 500 000 товарів. Стандартний фільтр по бренду виконувався 4 секунди. Сервер не витримував навантаження в 50 одночасних запитів — сторінки падали. Ми перевели довідник брендів у HL-блок, додали теговане кешування на 15 хвилин і налаштували агент для скидання кешу при зміні. Після доопрацювання час фільтрації склав 120 мс, середній LCP сторінки — 1,8 секунди. Проєкт працює стабільно без збоїв.

Що входить у розробку сайту на 1С-Бітрікс

Кожен проєкт включає повний комплект документації та артефактів, що виключає втрату знань після передачі.

  • Технічне завдання — user stories, діаграми інфоблоків, схеми інтеграцій.
  • Вихідний код у Git — з історією комітів, тегами релізів, правилами гілкування.
  • Адміністративна документація — опис кастомних компонентів, інструкції з розгортання, перелік агентів і подій.
  • Навчання співробітників — до 3 годин вебінару: панель управління, робота з замовленнями, налаштування цін. Записуємо, щоб можна було переглянути.
  • Доступ до staging на час розробки — тестуєте самостійно до деплою на продуктив.
  • Гарантійна підтримка — виправлення помилок коду протягом 30 днів після запуску. Післягарантійні абонентські пакети з SLA (реакція 2 години, рішення 8 годин).

Наш процес і технології

Тип проєкту Терміни Складність Ключові особливості
Корпоративний сайт від 1 місяця Середня Каталог, новини, форми, CRM-інтеграція
Інтернет-магазин від 2 місяців Висока 54-ФЗ, маркетплейси, обмін з 1С, SKU
B2B-портал від 3 місяців Дуже висока Персональні ціни, документообіг, Bizproc
Лендінг від 2 тижнів Низька LCP < 2с, композитний кеш, статика
Багатосайтова структура від 1,5 місяців Висока Роздільний контент, спільний каталог, hreflang

Стек: верстка mobile-first, тестуємо на фізичних пристроях (iPhone, iPad, Android). Використовуємо BrowserStack для Safari на iOS. Продуктивність — LCP < 2,5 с, FID < 100 мс, CLS < 0,1. Включаємо композитний сайт (composite), CDN, теговане кешування, WebP/AVIF, lazy loading. SEO — Schema.org через JSON-LD, автогенерація sitemap.xml модулем seo, canonical і hreflang для мультимовних версій. robots.txt закриваємо /bitrix/ від індексації. CI/CD — Git, автодеплой через GitLab CI, staging. Міграції бази — модуль sprint.migration з версіонуванням.

Процес роботи:

  1. Аналітика — вивчаємо конкурентів, збираємо вимоги, малюємо прототипи в Figma. На виході — ТЗ з user stories.
  2. Дизайн — UI/UX з дизайн-системою. Компоненти перевикористовуються.
  3. Розробка — пишемо компоненти з кастомними шаблонами в local/templates/. Бізнес-логіку виносимо в модулі local/modules/.
  4. Тестування — функціональне, кросбраузерне, навантажувальне (до 1000 запитів). Критичні баги виправляємо до запуску.
  5. Запуск — деплой на прод, моніторинг через UptimeRobot, алерти в Telegram. Усуваємо перші 48 годин.

Інтеграції, мультимовність і редизайн

Напрямок Сервіси
CRM та аналітика Бітрікс24 (нативна), amoCRM, Roistat, Calltouch, Mindbox
Платежі ЮKassa, CloudPayments, Тінькофф, Apple Pay, Google Pay
Фіскалізація 54-ФЗ АТОЛ, OrangeData — налаштування через sale.cashbox
Логістика СДЕК, Boxberry, ПЕК, Укрпошта, Яндекс.Доставка
Комунікації JivoSite, Carrot Quest, SendPulse
  • Повна локалізація через мовні файли lang/ і механізм SITE_ID. hreflang для кожної версії. Регіональні версії з різними цінами та контентом — визначення за IP (main.geo) або ручний вибір. Мультидоменність — єдине управління кількома доменами.

  • Редизайн без втрати позицій: аудит продуктивності (PageSpeed, WebPageTest), SEO (Screaming Frog). Новий шаблон у local/templates/ із збереженням URL-структури. 301-редиректи лише якщо URL змінюється суттєво. Оновлення ядра, перехід на D7 ORM, реструктуризація інфоблоків, міграція через sprint.migration з Git.

Типові помилки при проектуванні інфоблоків
  • Один інфоблок на всі сутності замість окремих під товари, категорії, бренди.
  • Використання властивостей-списків замість HL-блоків для довідників з великою кількістю записів.
  • Відсутність індексів на полях, що використовуються у фільтрації каталогу.
  • Нехтування тегованим кешуванням — призводить до скидання всього кешу при зміні одного елемента.

Гарантія та підтримка

Ми працюємо з 1С-Бітрікс 12+ років, реалізували 500+ проєктів. У штаті сертифіковані розробники. Фіксована вартість у договорі — без сюрпризів. Гарантійний період покриває помилки коду. Після — абонентські пакети з SLA (час реакції — 2 години, рішення — 8 годин). Моніторинг доступності 24/7, алерти в Telegram. За потреби отримайте попередній аудит — зв'яжіться з нами через форму на сайті або напишіть у чат, відповімо протягом години. Замовте розробку під ключ — ми спроєктуємо інфоблоки, інтегруємо 1С і розженимо каталог. Якщо вже є сайт на іншій CMS — замовте аудит продуктивності та міграцію на Бітрікс.