Налаштування WooCommerce Bookings: календар, ресурси, синхронізація

Клієнт запускає сервіс з оренди обладнання — за тиждень з'ясовується, що двоє людей забронювали один і той самий екземпляр на один час. Це знайома ситуація? Ми стикаємося з такими кейсами постійно. WooCommerce Bookings — плагін, який перетворює звичайний товар на броньований ресурс з розкладом, дост

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

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

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Налаштування WooCommerce Bookings: календар, ресурси, синхронізація
Середній
~2-3 дні

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

Часті запитання

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

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1418
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1286
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    983
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1243
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    983
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    998

Клієнт запускає сервіс з оренди обладнання — за тиждень з'ясовується, що двоє людей забронювали один і той самий екземпляр на один час. Це знайома ситуація? Ми стикаємося з такими кейсами постійно. WooCommerce Bookings — плагін, який перетворює звичайний товар на броньований ресурс з розкладом, доступністю та правилами. Він вирішує проблему подвійних бронювань і ручного узгодження слотів. Але без правильного налаштування він скоріше додасть головного болю, ніж порядку. За час роботи ми налаштували WooCommerce Bookings для більш ніж 50 проєктів — від салонів краси до прокату техніки. Середня економія часу на управління бронюваннями після впровадження — до 10 годин на тиждень, що скорочує витрати на персонал на 30–40%. В одному проєкті з 15 ресурсами та 20 слотами на день ручне узгодження займало 5 годин на тиждень, а після автоматизації — 20 хвилин. Це в 15 разів швидше. Наш досвід гарантує, що ваша система бронювання працюватиме без збоїв. Отримайте консультацію за вашим сценарієм.

Модель та типи бронювання

Bookings працює з трьома сутностями:

  • Bookable product — продукт з налаштованими слотами та цінами
  • Booking — конкретний запис: хто, коли, який продукт, статус
  • Resource — додатковий ресурс, прив'язаний до продукту (наприклад, конкретний майстер або кабінет)

Дані зберігаються в wp_posts (тип wc_booking) та wp_postmeta. Розклад доступності — в мета-полі _wc_booking_availability. Всього плагін підтримує до 20 правил доступності на продукт.

Типи бронювання

Тип Застосування
Fixed blocks Слоти фіксованого розміру (30 хв, 1 год)
Customer-defined Клієнт обирає довільну тривалість
Fixed duration days Ночі в готелі, дні оренди

Для подобової оренди: duration = 1 day, min duration = 1, max duration = 14. Вартість множиться на кількість ночей.

Налаштування правил доступності: як уникнути помилок?

Доступність налаштовується через набір правил з пріоритетами:

Rule 1: All days → Bookable (пріоритет низький) Rule 2: Saturday, Sunday → Not bookable Rule 3: 31 грудня → Not bookable (свято) Rule 4: Monday 09:00–18:00 → Bookable 

Правила обробляються за спаданням пріоритету. Фільтр через хук:

add_filter( 'wc_bookings_product_is_available', function( $is_available, $start, $end, $qty, $product ) { // кастомна логіка: перевірити зовнішній календар, CRM тощо. return $is_available; }, 10, 5 ); 

Ми часто використовуємо цей хук для інтеграції із зовнішніми системами — наприклад, щоб не продавати слоти, якщо в CRM вже є запис. Згідно з офіційною документацією, хук дозволяє розширити стандартну логіку перевірки доступності.

Чому ресурси критичні для послуг?

Ресурси — це незалежно доступні одиниці одного продукту. Приклад: послуга «Стрижка» з ресурсами «Майстер Анна» та «Майстер Сергій». Кожен ресурс має власний розклад і може додавати дооцінку до вартості. Без ресурсів клієнт може забронювати одну й ту саму стрижку у двох майстрів одночасно — катастрофа. Ми завжди включаємо has_resources = true для послуг, де важливий розподіл. Параметр has_persons: true включає вибір кількості людей, min_persons / max_persons обмежують діапазон. Ціна може перераховуватися на людину. В одному проєкті ми робили систему бронювання бань: ресурси — різні парні, persons — кількість гостей. Все працювало без конфліктів.

Інтеграція та сповіщення

Синхронізація з Google Calendar

Bookings підтримує двосторонню синхронізацію з Google Calendar через офіційний аддон WooCommerce Bookings — Google Calendar. Схема:

  1. Нове бронювання → створює подію в Google Calendar через Calendar API
  2. Подія в Google Calendar → при наступній синхронізації блокує слот у Bookings

Необхідна Google Cloud Console: проєкт, OAuth 2.0 credentials, увімкнений Calendar API. Синхронізація запускається через WP-Cron кожні 15 хвилин або примусово з налаштувань:

// Примусовий запуск синхронізації do_action( 'wc-booking-gcal-sync' ); 

Сповіщення

Плагін додає кілька типів листів у WooCommerce → Emails:

  • New Booking — менеджеру при створенні
  • Booking Confirmed — клієнту при підтвердженні
  • Booking Reminder — клієнту за N годин до початку (налаштовується, за замовчуванням за 24 години)
  • Booking Cancelled — при скасуванні

Нагадування реалізовані через Action Scheduler — завдання плануються в момент підтвердження бронювання.

Кастомні поля

// Додати поле вибору майстра перед бронюванням add_filter( 'woocommerce_booking_form_fields', function( $fields, $product ) { $fields['preferred_master'] = [ 'type' => 'select', 'label' => 'Бажаний майстер', 'options' => [ '' => 'Будь-який', 'anna' => 'Анна', 'sergey' => 'Сергій' ], ]; return $fields; }, 10, 2 ); 

Типові проблеми та їх вирішення

  • Слоти не з'являються на фронті — найчастіше timezone mismatch: WordPress встановлений у UTC, а правила доступності задані за локальним часом. Перевірте: Settings → General → Timezone має збігатися з очікуваннями клієнта.
  • Подвійне бронювання одного слоту — не налаштований параметр has_resources або capacity. Без ресурсів та при booking_duration_type = fixed потрібно явно вказати qty = 1 (максимум бронювань на слот).

Процес налаштування та терміни

Налаштування одного продукту-послуги з простим розкладом займає 1 робочий день. Кілька ресурсів, Google Calendar, кастомні поля, логіка ціноутворення за датами — 3–4 дні.

Що входить у налаштування?

  • Налаштування продуктів та правил доступності під ваш бізнес
  • Інтеграція з Google Calendar та зовнішніми системами
  • Кастомні поля та сповіщення
  • Повна документація та навчання співробітників
  • Гарантія на всі роботи та підтримка після запуску

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