CRM для клініки зводить в один робочий процес онлайн-запис, воронку заявок, картку пацієнта, прийом лікаря та повідомлення. Сайт показує послуги й лікарів, але робота не закінчується після натискання кнопки «Записатися». Система має знайти справді вільний час, не дозволити двом людям забронювати один слот, передати заявку адміністратору, зберегти історію візитів і підготувати лікарю дані для прийому. Після консультації вона формує бланки, планує повторний контакт і надсилає потрібне SMS.
Саме такий контур ми побудували для медичного центру «Інстинкт Сонця» у Харкові, сайт instinctsun.com. До робіт старий сайт на застарілій CMS мав понад 800 URL, а форма запису не працювала: введені дані залишалися в браузері відвідувача і до клініки не доходили. З травня до серпня 2026 року сайт, адмінку й міні-CRM переробили, а в серпні система вийшла в прод. Зараз у ній 531 заявка, 404 картки пацієнтів, 23 лікарі та 295 послуг.
Інтерфейси й підсумок проєкту можна подивитися в кейсі «Інстинкт Сонця». Нижче розбираємо не презентацію, а робочу логіку: що відбувається від вибору часу до повторного візиту.
Що таке CRM для клініки і чим вона відрізняється від просто сайту?
Коротка відповідь: сайт відповідає на запитання пацієнта до звернення, а CRM веде саме звернення далі. Вона приймає заявку, звіряє її з графіком лікаря, показує адміністратору поточний статус, об’єднує повторні звернення в одну картку та зберігає історію візитів. Лікар працює у своєму модулі, а не в загальному списку заявок: фіксує скарги, діагноз, призначення й рецепт, після чого друкує потрібний бланк. Окремі правила запускають Telegram-сповіщення, SMS і заявку на follow-up. Тому CRM клініки є зв’язком між публічним сайтом, розкладом, адміністратором, лікарем і пацієнтом. Якщо сайт лише відправляє форму на пошту, в ньому немає контролю зайнятості, єдиної історії та захисту від повторного введення даних. У робочій системі кожна дія змінює один спільний запис, який бачить лише роль із відповідним доступом. Перевіряти таку CRM треба за повним маршрутом: від доступного слота до медкарти, повідомлення та контрольованого доступу до документа.
У цьому проєкті власна адмінка має 48 екранів і працює за принципом «адмінка = дзеркало сайту». Для кожного типу сторінки є поля контенту та SEO-вкладка з прев’ю пошукового сніпета. Ролі розділені на адміністратора, менеджера й лікаря, а право керувати лікарями та графіками винесене в окремий дозвіл. Доступ перевіряється на рівні сторінок.
Маршрут даних видно на одному зверненні. Пацієнт обирає слот на сайті, після збереження заявка з’являється у воронці та сповіщає команду в Telegram. Менеджер підтверджує запис, а система надсилає SMS. За номером телефону звернення потрапляє до наявної картки або стає основою нової. Після прийому лікар додає медичний запис і, за потреби, створює follow-up. Цей ланцюжок не вимагає повторно переносити ім’я, телефон, лікаря та час між окремими таблицями.
Як онлайн-запис показує справжні вільні слоти?
Слот не зберігається як довільний час у формі. Система щоразу бере графік обраного лікаря та віднімає вже зайняті записи. Пацієнт проходить послідовність: лікар, послуга, дата, час, контакти. Календар відкритий на п’ять місяців уперед.
Чому крок сітки дорівнює тривалості послуги?
Різні послуги займають різний час, тому одна фіксована сітка створювала б проміжки або накладання. Після вибору послуги її тривалість стає кроком для розрахунку доступних початків прийому. У результаті пацієнт бачить не декоративний перелік годин, а час, який поміщається у графік конкретного лікаря.
Що відбувається при одночасному бронюванні?
Доступність перевіряється ще раз під час збереження. Перший успішний запис займає слот. Другий користувач отримує відмову, а зайнятий час зникає зі списку. Це закриває сценарій, якого не вирішує звичайна форма з полем «бажаний час». Детальніше базову логіку такого модуля ми розбирали у статті про систему онлайн-запису для бізнесу.
Як працюють воронка заявок і календар адміністратора?
Кожна заявка має стан і повну історію. Вона рухається за маршрутом: нова, в роботі, підтверджена, прийшов, скасована або спам. Адміністратор бачить, де потрібен дзвінок, а де прийом уже підтверджено. Нова заявка одразу запускає сповіщення в Telegram.
- Нова: звернення щойно потрапило до системи.
- В роботі: менеджер уже опрацьовує заявку.
- Підтверджена: час погоджено з пацієнтом.
- Прийшов: запланований візит відбувся.
- Скасована або спам: запис не має залишатися серед активних прийомів.
У календарі запис можна перетягнути на іншу дату. Зміна не створює окрему неузгоджену копію: картка заявки зберігає історію, а новий час стає частиною того самого процесу. Це дає менеджеру один екран для щоденної роботи замість листування, таблиці та паперового журналу.
Що зберігається в картці пацієнта і медкарті?
Картка пацієнта збирає всі звернення однієї людини. Заявки зливаються в картку за номером телефону, тому повторний запис не створює нового ізольованого профілю. У картці є медична інформація, історія та кількість візитів, а для постійного пацієнта показується окремий бейдж.
Для адміністратора це прибирає дублікати з різними датами, а для лікаря зберігає послідовність звернень. Бейдж постійного пацієнта не є окремим списком, він показується на тій самій картці, де вже є попередні візити. На момент підготовки кейсу в проді було 404 такі картки.
Чому медичні документи не лежать у публічній папці?
Файл у публічному каталозі вебсервера можна віддати за прямою адресою, якщо шлях став відомий. У цій системі документи зберігаються поза публічною папкою. Доступ до них проходить через захищений маршрут після перевірки авторизації. Це технічна межа між матеріалами сайту, наприклад фотографіями послуг, і приватними файлами пацієнта.
Що лікар заповнює під час прийому?
Модуль прийому фіксує дані консультації в картці пацієнта. Лікар вносить скарги, діагноз, призначення та рецепти. ІМТ підраховується автоматично. Для повторюваних сценаріїв є шаблони прийому та команда «повторити попередній», щоб не набирати однакову структуру заново.
Із запису формуються три друковані бланки: консультативний висновок, лист призначень і направлення. Якщо лікар вказує дату follow-up, система створює нову заявку у воронці. Повторний контакт не залишається приміткою, яку адміністратор має випадково помітити.
Шаблон і команда повторення скорочують саме повторне введення, але не прибирають рішення лікаря. Скарги, діагноз, призначення, рецепт і дата наступного контакту залишаються окремими частинами прийому. Завдяки цьому друковані форми збираються з поточного запису, а не з копії старого документа.
Як працюють SMS пацієнтам і що в цьому модулі треба тестувати?
SMS прив’язане до події, а не до ручного копіювання номера. Модуль підтримує п’ять сценаріїв: нова заявка, підтвердження, нагадування, скасування та перенесення. Тихі години діють з 21:00 до 9:00, повторні повідомлення відсікає дедуплікація, а нагадування запускаються за розкладом.
Які дефекти знайшли аудити до запуску?
Перевірка реальних переходів між станами знайшла в SMS-модулі вісім дефектів, чотири з них були серйозними. Запис зі статусом failed міг назавжди заблокувати наступне нагадування. Під час перенесення система надсилала текст скасування, але підставляла в нього нову дату. Обидва сценарії виправили до запуску.
Аудити також показали, що заявка могла мовчки загинути через помилку в номері телефону, а деактивація користувача не відкликала його активну сесію. Ці помилки теж виправили до продакшену. Такий тест має охоплювати не лише успішне створення запису, а й повтори, помилки доставки, перенесення, зміну доступу та конкурентне бронювання.
Як перенести старий сайт клініки без втрати робочих адрес?
Спочатку складають повну карту старих URL, потім кожній адресі призначають нову ціль. На старому сайті було понад 800 URL. Для запуску підготували 932 редиректи й sitemap на 599 URL, додали JSON-LD для MedicalOrganization, Physician, MedicalProcedure та Article, а Search Console налаштували з нуля.
Окремо перевірили 234 посадкові адреси з рекламного трафіку. П’ять віддавали 404, ще 22 вели до загального каталогу замість потрібного розділу. Усі такі адреси перенацілили. Це частина міграції, яку легко пропустити, якщо дивитися лише на меню нового сайту.
Для реклами правильний статус сторінки ще не означає правильну посадку. Адреса може відкриватися без помилки, але вести людину не до тієї послуги. Тому в цьому проєкті окремо розбирали і технічну відповідь URL, і фактичну ціль кожного рекламного переходу.
Публічна частина має 22 маршрути. ISR у Next.js дозволяє віддавати підготовлені сторінки та оновлювати дані без повної перебудови сайту. У проді головна сторінка відповідає за 0,18 с.
Що отримала клініка і скільки коштує подібна система?
Результат можна описати цифрами, які вже є в проді. Система обслуговує 295 послуг у 31 категорії та п’яти групах, 23 лікарів, 285 статей, 46 акцій, 531 заявку і 404 картки пацієнтів. Вона поєднує сайт, 48 екранів адмінки, CRM, прийом лікаря, повідомлення та SEO-міграцію.
Технічний обсяг: близько 51 000 рядків TypeScript. Стек складається з Next.js 16, React 19, TypeScript, PostgreSQL 17 і Prisma 7 з 79 моделями. Авторизація працює на next-auth і bcrypt, SMS надсилаються через TurboSMS API, внутрішні сповіщення через Telegram Bot API.
Коли варто розглядати власну систему?
Готовий продукт можна брати за основу, коли клініці підходять стандартні ролі, картка та схема запису. Власна розробка має сенс, якщо система повинна рахувати слоти за вашими послугами, повторювати структуру публічного сайту в адмінці, працювати з окремими правами на графіки, зберігати приватні документи та переносити великий масив старих URL.
Для першої оцінки потрібні не назви бажаних модулів, а робочі дані: ролі співробітників, графіки лікарів, тривалість послуг, статуси заявки, склад картки, шаблони бланків, події для SMS і перелік старих адрес. За ними видно, що можна залишити стандартним, а де потрібна своя логіка.
Який бюджет брати за орієнтир?
Корпоративний сайт в Artbrain коштує від $1200, розробка CRM від $3000. Зв’язка сайту, онлайн-запису, CRM і модуля лікаря оцінюється після брифу, тому що обсяг залежить від ролей, даних, міграції та потрібних сценаріїв. Для клінік ми зібрали окрему сторінку про розробку CRM для медичного центру.
FAQ
Що таке CRM для клініки?
CRM для клініки зберігає заявки, графіки, картки пацієнтів, історію візитів і дії персоналу в одному процесі. Вона продовжує роботу після заявки із сайту та розділяє доступ між адміністратором, менеджером і лікарем.
Як працює онлайн-запис до лікаря за вільними слотами?
Система бере графік обраного лікаря, віднімає зайняті записи та будує слоти з кроком, що дорівнює тривалості послуги. Якщо двоє людей одночасно обирають один час, перший запис займає слот, а другий користувач отримує відмову.
Що має містити картка пацієнта в CRM?
У цьому кейсі картка містить медкарту, історію та кількість візитів, документи й пов’язані заявки. Повторні звернення зливаються за номером телефону, а приватні файли зберігаються поза публічною папкою сайту.
Скільки коштує CRM для клініки?
Розробка CRM в Artbrain коштує від $3000, корпоративного сайту від $1200. Спільний бюджет сайту, запису й медичних модулів визначається після брифу.
Готова медична система чи власна CRM: що обрати?
Готовий продукт підходить, якщо ролі та процес запису вкладаються в його стандартну логіку. Власну CRM варто оцінювати, коли потрібні свої статуси, графіки, документи, права доступу, інтеграції або міграція великого старого сайту.
Часті питання
Що таке CRM для клініки?
CRM для клініки зберігає заявки, графіки, картки пацієнтів, історію візитів і дії персоналу в одному процесі. Вона продовжує роботу після заявки із сайту та розділяє доступ між адміністратором, менеджером і лікарем.
Як працює онлайн-запис до лікаря за вільними слотами?
Система бере графік обраного лікаря, віднімає зайняті записи та будує слоти з кроком, що дорівнює тривалості послуги. Якщо двоє людей одночасно обирають один час, перший запис займає слот, а другий користувач отримує відмову.
Що має містити картка пацієнта в CRM?
У цьому кейсі картка містить медкарту, історію та кількість візитів, документи й пов’язані заявки. Повторні звернення зливаються за номером телефону, а приватні файли зберігаються поза публічною папкою сайту.
Скільки коштує CRM для клініки?
Розробка CRM в Artbrain коштує від $3000, корпоративного сайту від $1200. Спільний бюджет сайту, запису й медичних модулів визначається після брифу.
Готова медична система чи власна CRM: що обрати?
Готовий продукт підходить, якщо ролі та процес запису вкладаються в його стандартну логіку. Власну CRM варто оцінювати, коли потрібні свої статуси, графіки, документи, права доступу, інтеграції або міграція великого старого сайту.
