SHIFT >_CODE
Усі кейси

CRM-система / 2025

SHIFT>_CRM

SHIFT>_CRM - CRM-система для компаній будь-якої сфери, яка не намагається підійти всім одразу, а налаштовується під процеси конкретного бізнесу й розгортається на його власному сервері. У ній ведуться клієнти, угоди й платежі, є воронка продажів, статистика, вбудований телефон, месенджер для співробітників та ШІ-помічник, який відповідає на запитання щодо бази й щоранку складає менеджерам план на день. Заявки з сайту та з реклами Facebook самі потрапляють у CRM, інтерфейс доступний 11 мовами, а дані компанії зберігаються лише на її сервері.

  • React
  • TypeScript
  • Node.js
  • Fastify
  • PostgreSQL
  • Docker
  • Caddy
  • WebRTC
  • ChatGPT
  • Claude
  • Gemini
  • DeepSeek
  • Qwen
Відкрити сайтcrm.shift-code.net
01

Задача

SHIFT>_CRM - CRM-система для компаній будь-якої сфери з окремим встановленням для кожного клієнта.

Універсальні CRM підходять усім потроху, але нікому повністю. Вони розраховані на «середню» компанію, тому бізнесу доводиться підлаштовувати свої процеси під чужу логіку, миритися із зайвими функціями й обходитися без потрібних, а дані всіх клієнтів зберігаються в одного постачальника. Мета проєкту - створити CRM, яка працює саме так, як влаштований бізнес конкретної компанії. Кожній компанії розгортається своя незалежна копія на окремому сервері, зі своєю базою даних і своєю адресою, і налаштовується під її процеси: співробітники, права доступу, етапи роботи з клієнтами, довідники, власні поля й навіть назви термінів, до яких звикла команда. У підсумку компанія отримує систему, з якою не зрівняється жодна велика універсальна CRM, бо ту створювали не для неї.

У CRM ведеться вся робота з клієнтами: картка клієнта з кількома контактними особами, коментарями та файлами, зміна статусу просто в картці, платежі в різних валютах, воронка продажів, нагадування й сповіщення. Статистика показує картину і за клієнтами, і за кожним співробітником: угоди, конверсію, оплати, дзвінки та прострочені завдання. Заявки з сайту та з реклами Facebook Lead Ads автоматично перетворюються на нових клієнтів, а повторні звернення розпізнаються. Вбудований телефон дає змогу телефонувати й приймати дзвінки просто в браузері, і всі розмови потрапляють в історію клієнта. Для спілкування всередині команди є месенджер з особистими чатами, голосовими повідомленнями, відповідями на повідомлення й миттєвою доставкою.

Окрема частина системи - штучний інтелект. ШІ-помічник відповідає на запитання менеджерів щодо бази, наприклад кому варто зателефонувати сьогодні, при цьому бачить лише ті дані, до яких співробітник має доступ, і нічого не змінює сам. Компанія може використовувати власну модель Qwen на своєму сервері або підключити ChatGPT, Claude, Gemini й DeepSeek за ключем API; адміністратор обирає основний сервіс і вирішує, кому який доступний. Опис компанії для ШІ можна завантажити з файлу Word або PDF, а в режимі навчання ШІ сам накопичує загальні нотатки про компанію, не зберігаючи персональних даних клієнтів. Щоночі ШІ розбирає зміни за клієнтами й до шостої ранку складає кожному співробітникові план на день. Коментарі можна надиктувати голосом, і вони самі перетворяться на текст.

Безпеці приділено особливу увагу. Паролі зберігаються у вигляді хешів Argon2id, сесії - у захищених cookie, доступна двофакторна автентифікація через застосунок-автентифікатор. Права перевіряє сервер, дані додатково захищені на рівні рядків бази даних, а всі дії записуються в журнал аудиту, який не можна змінити. Є автоматичний вихід у разі бездіяльності та щоденний вихід усіх співробітників у заданий час, ключі зовнішніх сервісів шифруються, резервні копії створюються автоматично й теж шифруються, а сайт працює лише через HTTPS. Інтерфейс перекладено 11 мовами, є кілька колірних тем і демоверсія з вигаданою компанією для показу клієнтам.

Проєкт повністю написано на TypeScript. Інтерфейс побудовано на React 19 і React Router з власною дизайн-системою, сервер - на Node.js і Fastify з базою даних PostgreSQL, запитами через Kysely й перевіркою даних через Zod. Живі оновлення надходять через Server-Sent Events і механізм сповіщень PostgreSQL, телефонія працює на WebRTC і JsSIP та перевірена з Asterisk. Для ШІ використовуються OpenAI API, Anthropic SDK і Ollama. Система розгортається на VPS з Ubuntu через Docker Compose, а Caddy автоматично випускає HTTPS-сертифікати. Ключові сценарії покрито автотестами.

У результаті вийшов продукт, який не потрібно підганяти під себе: CRM з телефонією, месенджером та ШІ-помічником працює на власному сервері клієнта й від першого дня влаштована так, як влаштований його бізнес.

02

Скриншоти

SHIFT>_CRM 1SHIFT>_CRM 2SHIFT>_CRM 3SHIFT>_CRM 4SHIFT>_CRM 5SHIFT>_CRM 6SHIFT>_CRM 7SHIFT>_CRM 8

Наступним може бути ваш проєкт.

Розкажіть про задачу - ми знайдемо найзрозуміліший шлях до результату.

  1. 01

    Обговорюємо задачу

    Розбираємося в цілях, аудиторії та обмеженнях проєкту.

  2. 02

    Проєктуємо

    Показуємо структуру й дизайн до початку розробки.

  3. 03

    Розробляємо і запускаємо

    Пишемо код, тестуємо й запускаємо проєкт у роботу.

SHIFT>_CRM - CRM-система | SHIFT >_CODE