Сайт доставки суші чи піци, який не пов’язаний з касою, працює як телефон, тільки повільніший. Замовлення приходить на пошту або в Telegram, адміністратор переносить його в POS-систему вручну, кухня чекає, а клієнт тим часом дзвонить уточнити, чи прийняли його замовлення. Кожне ручне перенесення — це ризик помилитися в адресі, модифікаторі чи сумі.
Поки замовлень кілька на день, це терпимо. Але у вечір п’ятниці, коли замовлення йдуть одне за одним, адміністратор фізично не встигає: частина позицій переноситься з помилками, клієнт чекає довше, а кухня готує не те. Саме тут сайт без інтеграції починає коштувати закладу грошей.
Інтеграція сайту з POS-системою прибирає ручний крок. Замовлення з сайту одразу потрапляє в касу й на кухню, а меню, ціни та наявність страв сайт може брати з тієї ж системи, у якій працює заклад. Нижче розповідаємо, як це влаштовано, які дані передаються, що підготувати заздалегідь і де найчастіше виникають помилки.
Що дає інтеграція сайту з POS-системою
Замовлення без ручного перенесення
Клієнт оформлює замовлення на сайті, і воно з’являється в POS-системі з усіма позиціями, модифікаторами, адресою та способом оплати — так само, якби його прийняв касир. Адміністратору не потрібно нічого переписувати, а кухня отримує замовлення в тому ж вигляді, до якого звикла. Час від кліку «Оформити» до початку приготування скорочується до хвилини.
Одне меню на всі канали
Страви, категорії, ціни та модифікатори ведуться в касовій системі, а сайт їх підтягує. Змінили ціну чи додали нову позицію в POS — після синхронізації вона з’явилася на сайті. Без цього меню на сайті рано чи пізно розходиться з реальним: клієнт бачить стару ціну, а на кухні страву вже прибрали.
Актуальна наявність
Якщо страва закінчилася, її можна прибрати з продажу в одному місці. Клієнт не замовить те, чого немає, а оператору не доведеться передзвонювати й пропонувати заміну — саме такі дзвінки найчастіше закінчуються скасованим замовленням.
Лояльність і акції за єдиними правилами
Бонуси, промокоди та акції рахуються однаково на сайті й у закладі. Клієнт, який накопичив бонуси в ресторані, може витратити їх на сайті, і навпаки. Для постійних гостей це вагомий аргумент замовляти напряму, а не через агрегатори з їхньою комісією.
Зрозуміла аналітика
Коли всі замовлення проходять через POS-систему, видно, скільки з них прийшло з сайту, який середній чек і які страви беруть онлайн. А якщо налаштувати джерела — то й з якої реклами прийшов кожен клієнт. Це дозволяє вкладати рекламний бюджет у канали, які реально приводять замовлення.
Які дані передаються між сайтом і POS-системою
Обмін іде у двох напрямках. Від того, наскільки акуратно його налаштувати, залежить, чи буде кухня отримувати замовлення без уточнень. У таблиці — основні дані і що буде, якщо їх не передавати.
|
Дані |
Напрямок |
Що буде без синхронізації |
|
Меню, категорії, фото |
POS → сайт |
Меню на сайті ведеться окремо й поступово розходиться з реальним |
|
Ціни та модифікатори |
POS → сайт |
Клієнт бачить одну суму, каса рахує іншу |
|
Заклади й філії |
POS → сайт |
Замовлення потрапляє не в той заклад |
|
Наявність, стоп-лист |
POS → сайт |
Клієнт замовляє страву, якої вже немає |
|
Склад замовлення |
сайт → POS |
Адміністратор переносить позиції вручну |
|
Клієнт і адреса |
сайт → POS |
Кур’єр уточнює адресу телефоном |
|
Оплата та її статус |
сайт → POS |
Незрозуміло, оплачене замовлення чи ні |
|
Промокод, бонуси |
сайт → POS |
Знижка на сайті не збігається зі знижкою в касі |
Найбільше проблем зазвичай із модифікаторами. У касі піца може бути заведена як одна страва з розмірами, а на сайті — як три окремі товари; соус може бути безкоштовним модифікатором або платною позицією. Якщо ці відповідності не продумати на старті, замовлення прийде на кухню без соусу або з неправильним розміром, і помітять це лише тоді, коли клієнт подзвонить зі скаргою.
Poster, Syrve чи iiko: з чим ми працювали
Усі три системи мають API для обміну з сайтом, але логіка, структура меню й можливості в них різні. Тому готового «модуля на всі випадки» немає: інтеграцію під кожну систему ми налаштовуємо окремо, з урахуванням того, як саме заклад веде меню й акції.
Poster
Poster — одна з найпоширеніших POS-систем серед закладів доставки в Україні, особливо серед невеликих і середніх. Через Poster API ми підключили сайти доставки KaiFui і Receptor: замовлення з сайту потрапляють у Poster, а онлайн-оплата проходить через LiqPay. Той самий зв’язок Poster + LiqPay працює й на сайті Креветка.
Syrve
Syrve — міжнародна версія платформи iiko. Вона дає більше можливостей для лояльності й акцій, але й інтеграція з нею складніша. Найглибшу інтеграцію ми зробили для Sushi Bo: вивантаження товарів і закладів, передача замовлень, програма лояльності Syrve Loyalty, промокоди та кілька різних логік спрацювання акцій. Окремо для цього проєкту ми додали визначення зони доставки за адресою клієнта, джерела замовлень в адмінці та передачу подій у Meta для реклами.
iiko
Буває, що мережа працює не з однією касовою системою: частина закладів на одній, частина на іншій. Для мережі ресторанів Kilogramm сайт працює з iiko та Poster одночасно і підтримує кілька міст. Для таких проєктів важливо на старті розписати, який заклад на якій системі і куди має йти кожне замовлення.
Зони доставки: чому адреса важливіша, ніж здається
Для доставки їжі мало знати адресу — треба розуміти, в яку зону вона потрапляє. Від цього залежать вартість доставки, мінімальна сума замовлення, орієнтовний час і те, чи взагалі заклад туди везе. Якщо цю перевірку робить оператор, частина замовлень губиться на етапі дзвінка: клієнт оплатив, а потім дізнається, що доставка в його район коштує інакше або неможлива.
Надійніше, коли зону визначає сам сайт ще до оплати. Адреса перетворюється на координати, а далі система перевіряє, в який полігон на карті вони потрапляють, і одразу показує клієнту правильну вартість доставки. На Sushi Bo адреса геокодується через Google, а зони описані у форматі GeoJSON. Схожий підхід ми використали для сервісу Fresh Box у Львові.
Промокоди, бонуси та акції
Найбільше питань в інтеграції зазвичай виникає не із замовленнями, а з акціями. «Друга піца зі знижкою», «рол у подарунок від певної суми», бонуси за попередні замовлення — усе це має рахуватися однаково на сайті й у касі.
Типова ситуація: сайт показує клієнту знижку за промокодом, а каса цей промокод не знає і рахує повну ціну. У результаті клієнт оплатив одну суму, в POS-системі інша, а бухгалтерія в кінці дня не може звести каси. Тому логіку акцій треба продумати ще до розробки: що рахує каса, що — сайт і як вони звіряють суму. На Sushi Bo бонуси й промокоди підключені через Syrve Loyalty, а для акцій ми реалізували кілька різних логік спрацювання.
Кілька закладів і міст
Коли у мережі кілька точок або міст, сайту потрібно знати більше, ніж просто меню. У різних містах можуть відрізнятися ціни й асортимент, у кожного закладу свій графік і своя зона доставки, а замовлення має потрапити саме на ту кухню, яка його готуватиме.
Якщо це не продумати, замовлення з одного міста опиняється в закладі іншого, а клієнт бачить страви, яких у його місті немає. На Kilogramm ми реалізували саме такий мультиміський сайт з інтеграцією iiko та Poster.
Що підготувати до інтеграції
Інтеграція йде значно швидше, якщо заклад заздалегідь підготує кілька речей. Ось що ми просимо на старті:
- Доступ до API POS-системи. Токен або ключ, який видає ваша каса. Якщо ви не знаєте, де його взяти, — підкажемо.
- Впорядковане меню в касі. Страви в потрібних категоріях, без дублікатів і «тимчасових» позицій, які давно не продаються.
- Зрозуміла структура модифікаторів. Які розміри, соуси й добавки є, які з них платні, які обов’язкові.
- Список закладів і їхній графік. Особливо якщо точок кілька або вони працюють у різний час.
- Карта зон доставки. Межі районів, вартість доставки й мінімальна сума для кожної зони.
- Еквайринг для онлайн-оплати. Договір з LiqPay або іншим платіжним сервісом.
- Правила акцій і лояльності. Які акції діють, як нараховуються бонуси, чи можна поєднувати знижки.
Як проходить інтеграція
- Аудит POS-системи та меню. Дивимося, як заведені страви, модифікатори, заклади й акції. Від порядку в касі залежить половина успіху: якщо там хаос, спершу допомагаємо його прибрати.
- Зіставлення даних. Визначаємо, які поля з каси відповідають товарам і опціям на сайті, як передаються модифікатори, адреса й оплата. Це найважливіший етап — помилки тут потім виринають на кухні.
- Синхронізація меню. Налаштовуємо вивантаження категорій, страв і цін, а також оновлення за розкладом або за подією.
- Передача замовлень і оплата. Замовлення з сайту створюється в POS-системі, онлайн-оплата — через LiqPay або інший еквайринг.
- Лояльність, промокоди, зони доставки. Підключаємо те, що потрібно конкретному закладу, і узгоджуємо, де рахується знижка.
- Тестові замовлення. Проганяємо реальні сценарії: різні модифікатори, адреси, промокоди, оплату — і перевіряємо, як замовлення виглядає на кухні.
- Запуск і супровід. Після запуску стежимо за першими замовленнями й виправляємо розбіжності, якщо вони з’являються.
Типові помилки та як їх уникнути
- Неузгоджені модифікатори. Модифікатори в касі заведені не так, як їх бачить клієнт на сайті, і замовлення приходить без соусу чи з іншим розміром. Рішення — окремо зіставити кожну групу модифікаторів ще до розробки.
- Товари без відповідника. Страва є на сайті, але її немає в касі, тож замовлення не передається або передається неповним. Рішення — не показувати на сайті позиції, яких немає в POS-системі.
- Два джерела меню. Меню редагують і в касі, і в адмінці сайту, і дані швидко розходяться. Рішення — домовитися, що джерело правди одне, і редагувати тільки там.
- Дублікати замовлень. Якщо зв’язок з API обірвався, сайт може надіслати замовлення вдруге, і кухня приготує його двічі. Рішення — перевіряти, чи замовлення вже створене, перед повторним відправленням.
- Замовлення поза графіком. Клієнт оформлює й оплачує доставку, коли заклад уже закритий. Рішення — сайт має знати графік кожного закладу й чесно показувати, коли замовлення буде прийняте.
Коли інтеграція не потрібна
Якщо у закладу кілька замовлень на день і одна точка, повна інтеграція може не окупитися: адміністратор спокійно переносить замовлення вручну, а бюджет краще вкласти в меню, фото й рекламу. Інтеграцію варто планувати тоді, коли ручне перенесення починає гальмувати кухню, з’являються помилки в замовленнях або ви відкриваєте другу точку.
Для такого старту підійде готовий сайт доставки в оренду з інтеграцією Poster та онлайн-оплатою — e-duki. На ньому працює, наприклад, Креветка.
Скільки триває та скільки коштує
Сайти доставки з інтеграцією POS-системи ми робимо за 2–3 місяці — разом з дизайном, каталогом, оплатою та запуском. Сама інтеграція займає частину цього часу. Її обсяг і вартість залежать від кількох речей:
- яка POS-система і наскільки впорядковане в ній меню;
- скільки закладів і міст потрібно підключити;
- чи потрібні лояльність, промокоди та складні акції;
- чи потрібне автоматичне визначення зон доставки.
Вартість інтеграції: від 400$. Точну суму називаємо після аудиту вашої POS-системи та меню.