Коли клієнти пишуть водночас у WhatsApp, Telegram, Viber і на пошту, бізнесу потрібна не ще одна програма, а одне вікно для всіх розмов. На прикладі MyInboxify розповідаю, з чого складається така CRM, які підводні камені мають API месенджерів і що важливо закласти в SaaS-сервіс від першого дня.
Що таке MyInboxify і навіщо я його створив
MyInboxify — SaaS-сервіс, CRM для месенджерів. Ідея проста: невеликій компанії не потрібна громіздка корпоративна система з десятками модулів — їй треба, щоб жодне повідомлення клієнта не загубилося, а менеджери відповідали швидко. Тому всі звернення з різних каналів потрапляють в одну скриньку заявок, а роботу з ними влаштовано так, щоб її можна було опанувати за один вечір.
Я зробив сервіс повністю: продумав структуру й ролі, написав серверну частину, інтерфейс панелі, інтеграції з месенджерами та платіжною системою, а також маркетинговий сайт із блогом і розділом допомоги. Реєстрація відкрита, перші 14 днів — безкоштовно.
Канали: WhatsApp, Telegram, Viber, пошта й сайт
Кожне вхідне повідомлення автоматично створює картку контакту й заявку із зазначенням джерела. Канали підключаються в налаштуваннях, а покрокові інструкції вбудовано просто в інтерфейс:
- WhatsApp — через офіційний WhatsApp Cloud API від Meta: майстер підключення сам налаштовує вебхук, підписку й номер і підтягує затверджені шаблони повідомлень;
- Telegram — бот компанії: досить вставити токен, вебхук установлюється сам і відновлюється, якщо платформа його скинула;
- Viber — за токеном бота;
- форма на сайті — готовий код форми з власними полями, UTM-мітками й захистом від спаму;
- чат на сайті — віджет із налаштовуваним кольором, привітанням, запрошенням до розмови й рядком згоди на обробку даних;
- e-mail — якщо клієнт відповідає на лист, його відповідь потрапляє в чат тієї самої заявки.
Двосторонній чат і правила WhatsApp
Менеджер відповідає з картки заявки, а клієнт отримує повідомлення там, звідки написав, — у WhatsApp, Telegram, Viber чи на пошту. Для кожного вихідного повідомлення видно автора, час і статус доставки. Якщо повідомлення не дійшло, поруч з’являються причина й кнопка повторного надсилання. Нові повідомлення підтягуються без перезавантаження сторінки: оновлюється лічильник непрочитаних, блимає значок вкладки, лунає короткий сигнал.
Окремо довелося врахувати правило WhatsApp: довільний текст можна надіслати лише протягом 24 годин після останнього повідомлення клієнта. Коли вікно закрилося, сервіс блокує звичайне надсилання й пропонує вибрати затверджений шаблон — менеджер не впирається в незрозумілу помилку, а одразу бачить, що робити.
Команда, статуси й контакти
Власник компанії реєструється сам і додає менеджерів. Менеджери працюють у спільній скриньці: беруть заявки в роботу, призначають відповідальних, змінюють статуси, залишають внутрішні нотатки. Набір статусів кожна компанія налаштовує під свій процес, а журнал дій показує, хто й коли змінив статус, відповів чи надіслав шаблон.
- на один контакт — одна відкрита заявка: нове повідомлення того самого клієнта додається до неї, а не плодить дублі;
- пошук дублів за телефоном і об’єднання карток із перенесенням усього листування;
- пошук, фільтри й вивантаження заявок і контактів у CSV, який коректно відкривається в Excel;
- для заявок із форми — кнопка «Зателефонувати» й позначка про здійснений дзвінок.
Telegram-група з темами, сповіщення й аналітика
Багато команд звикли працювати в Telegram, тому я зробив дзеркало заявок у супергрупу з темами. Для кожної заявки створюється окрема тема з карткою клієнта й кнопками «Взяти» та «Закрити». Повідомлення клієнта з будь-якого каналу дублюються в тему, а відповідь менеджера просто з Telegram іде клієнтові туди, звідки він писав. Захист від «луни» не дає повідомленням ходити по колу, а дані різних компаній ніколи не перетинаються.
Про нову заявку сервіс повідомляє в Telegram-чат компанії, призначений менеджер отримує особисте сповіщення, а заявки без відповіді понад три години збираються в нагадування. В аналітиці видно заявки, закриття й джерела; на старших тарифах додаються навантаження менеджерів, канали, UTM-мітки й вивантаження статистики в Excel і PDF.
Тарифи, оплата й п’ять мов
Оплату я вбудував просто в сервіс: три тарифи відрізняються кількістю менеджерів і глибиною аналітики, платити можна щомісяця або за рік зі знижкою. Підписка оформлюється через Stripe з пробним періодом, карткою й чеками клієнт керує в особистому кабінеті Stripe, а зміна тарифу переноситься на кінець оплаченого періоду. Ціни на маркетинговому сайті підтягуються з адмінки сервісу, тому ніде не розходяться.
Інтерфейс повністю перекладено англійською, російською, українською, французькою та німецькою. Мову можна задати просто в адресі сторінки — це зручно для реклами на різні країни, — а на сторінках входу й реєстрації налаштовано canonical і hreflang. Для тих, хто не хоче розбиратися сам, є разова послуга підключення: клієнт оплачує її на сайті, а замовлення одразу потрапляє в адмінку.
Безпека й надійність SaaS-сервісу
У багатокористувацькому сервісі чужі дані — головна відповідальність, тому ізоляцію компаній я заклав на рівні кожного запиту до бази: одна компанія не побачить даних іншої, навіть підставивши чужий номер запису в адресу сторінки.
- токени каналів зберігаються в зашифрованому вигляді, паролі — лише у вигляді хешу;
- вхідні вебхуки перевіряються за підписом, підроблені повідомлення відхиляються;
- захист від підбору пароля, CSRF-токени на всіх діях, сувора політика безпеки контенту;
- форму на сайті захищено пастками для ботів, лімітами за IP, списком дозволених доменів і капчею на вибір;
- щоденні резервні копії бази та регулярна перевірка вебхуків за розкладом.
Що врахувати, якщо вам потрібна власна CRM чи інтеграція месенджерів
Якщо ви плануєте CRM для месенджерів, інтеграцію WhatsApp Business API чи власний сервіс для роботи з клієнтами, з досвіду MyInboxify варто від самого початку продумати кілька речей:
- правила кожної платформи — вікно 24 години й шаблони у WhatsApp, особливості ботів у Telegram і Viber;
- доставку й помилки — менеджер має бачити, чи дійшло повідомлення, і вміти повторити надсилання;
- дублі контактів — той самий клієнт пише з різних каналів;
- ізоляцію даних, якщо сервісом користуються кілька компаній;
- оплату й тарифи — пробний період, продовження, зміну тарифу;
- просте підключення — що менше технічних кроків у клієнта, то вищий шанс, що він залишиться.
Я розробляю вебсервіси й інтеграції під завдання — від невеликої зв’язки «форма сайту → Telegram» до повноцінної SaaS-платформи з оплатою та командною роботою.
Деталі проєкту
Тип проєктувебсервіс (SaaS)
КатегоріяВебсервіс / SaaS
ТехнологіїPHP 8.1, MariaDB, WhatsApp Cloud API (Meta), Telegram Bot API, Viber API, Stripe, IMAP/SMTP, JavaScript, WordPress
Рольрозробка SaaS-сервісу під ключ: архітектура, серверна частина, інтерфейс, інтеграції, маркетинговий сайт
КлієнтMyInboxify
КраїнаМіжнародний (EN/RU/UK/FR/DE)
Що зроблено
- Спроєктував багатокористувацьку архітектуру з ізоляцією даних компаній
- Підключив WhatsApp Cloud API, Telegram Bot API, Viber, форму й чат на сайті, e-mail
- Зробив двосторонній чат зі статусами доставки й шаблонами WhatsApp
- Зібрав командну роботу: менеджери, призначення, статуси, нотатки, журнал дій
- Реалізував контакти з пошуком і об’єднанням дублів та вивантаженням у CSV
- Зробив дзеркало заявок у Telegram-супергрупу з темами й відповіддю просто з Telegram
- Додав аналітику, сповіщення й нагадування про заявки без відповіді
- Вбудував тарифи й підписку через Stripe з пробним періодом
- Переклав інтерфейс на п’ять мов і зібрав маркетинговий сайт на WordPress
Результат
- Робочий SaaS-сервіс з відкритою реєстрацією та 14 днями безкоштовно
- Звернення з шести каналів — в одній скриньці заявок
- Команда відповідає клієнтам з одного вікна або просто з Telegram
- Оплату підписки вбудовано в сервіс через Stripe
- Інтерфейс п’ятьма мовами для різних ринків
Переглянути сайт проєкту