Подивимось, як у вас усе влаштовано зараз, послухаємо, що болить, і скажемо прямо: що варто автоматизувати, а що ні. Далі ви маєте прорахунок по блоках – що, скільки коштує і в якому порядку.
Усе одразу робити не треба. Беремо найпотрібніше, решту додаємо, коли справді знадобиться.
Гарну вітрину зробить будь-хто. Ми робимо так, щоб вітрина знала, що справді лежить на полиці – і коли воно псується.
У кожному кейсі нижче: що питали покупці, що ми зробили, що за цим стоїть і чим ми за це заплатили. Останнє – найважливіше: у кожного рішення є ціна, і ми її не ховаємо.
Частина перша
Те, що бачить покупець
Десять задач із живого магазину. Демо працюють на справжньому каталозі: 443 товари з фото, цінами й залишками.
01
«Я знаю, що у вас це є, але не можу знайти»
Запит. Люди писали в чат назву товару, який спокійно лежав у каталозі. Пошук не знаходив: одна літера не та або набрано латиницею. Кожен такий випадок – втрачений продаж.
Це дві різні проблеми, тому й рішення два.
Проблема перша: «не знаю, як воно називається»гортайте – стрічка не закінчується
гортай
Пройдено: 0 · коло 1 · у каталозі 0. Коли каталог закінчується, стрічка перемішується і йде на нове коло.
Проблема друга: «друкую з помилкою»спробуйте: шоколат · майонес · yogurt
Що за цим стоїть
«Не знаю, як називається» лікує нескінченна стрічка: людина не шукає, а впізнає. Порядок тримається стабільним, поки гортаєш, – інакше товари стрибали б при кожному довантаженні. У стрічку йдуть лише позиції з наявності та з фото: порожня картка шкодить більше, ніж коротший список.
Пошук налаштовували руками: «терпимість до помилок» з коробки шкодила – «банан» знаходив «баранчик». Тепер поріг ступінчастий: до 4 літер шукаємо точно, 5–7 прощаємо одну помилку, 8 і більше – дві. Плюс синоніми й латинські відповідники для тих, хто набрав не в тій розкладці.
Чесна ціна
Пошук живе на окремому рушії – це ще один сервіс на сервері, який треба тримати живим.
Синоніми – робота без кінця: список поповнюється із запитів, які нічого не знайшли. Щомісячна ручна праця, а не «налаштували й забули».
02
«А який у нього термін придатності?»
Запит. Питання №1 у чаті про продукти. Менеджер щоразу йшов до полиці дивитися очима.
Живе демонатисніть кнопки – картка й вітрина відреагують
Картка товару + партії на складі
Вітрина каталогу
Що за цим стоїть
Позначка на сайті – це видима третина роботи. Щоб дата була справжня, а не «проставлена колись руками», зробили окремий модуль прийомки: приймальник сканує товар при завозі й одразу вносить кінцеву дату партії.
Система тримає не одну дату, а всі партії: на полиці ж лежить і старе, і свіже. На сайт іде найближча.
Найцінніше – зворотний бік. Коли всі партії протермінувалися, товар сам зникає з вітрини. Одна прострочена, друга свіжа – товар лишається у продажу. Списали старе, завезли нове – позначка оновилася сама.
Чесна ціна
Прийом поставки став довшим: комірник тепер вносить дату, а не просто рахує коробки. Це реальний мінус, і ми його не ховаємо.
Але рахувати треба інакше. Раніше терміни перевіряли окремим обходом полиць, і кожен обхід починався з нуля. Тепер дані вносяться один раз, коли товар і так у руках, а далі працюють самі: статистика по всьому асортименту, щоденний дайджест «що горить», нова поставка перезаписує старі дати.
Ми не додали роботу – ми перенесли її туди, де вона робиться один раз замість багатьох.
03
«Мені не кілограм, мені грамів триста»
Запит. Сир, м’ясо, цукерки на вагу. Ціна за кілограм, а людині треба шматок. Вона не розуміє, скільки заплатить, – і не кладе в кошик.
Живе демооберіть порцію – ціна перерахується
Ваговий товар – є вибір порції
Фасований – вибору навмисне немає
Що за цим стоїть
Спершу треба навчити систему відрізняти ваговий товар від фасованого: у каталозі тисячі позицій, руками це не розмітити.
Правило свідомо обережне. Якщо в назві вже є кількість («200 г», «1 кг») – це фасовка, і жодного «за кг». Ваговим товар стає, лише коли на це вказує категорія. У сумнівному випадку система не робить нічого.
Помилка тут дорога не технічно, а репутаційно: покупець побачить не ту ціну й відчує себе обманутим.
Чесна ціна
Ціна порції – розрахункова, а реальний шматок ніколи не важить рівно 300 г.
Тому дрібниця на вітрині потягнула зміни на складі: пакувальник вносить фактичну вагу, і сума перераховується. Це не кнопка, а наскрізний процес до пакувального столу.
04
«А що до цього зазвичай беруть?»
Запит. Класична задача середнього чека. Звичне рішення – «схожі товари з категорії» – не працює: воно показує конкурентів товару, а не доповнення до нього.
Живе демоперемкніть підхід і порівняйте
Покупець дивиться цей товар. Що показати поруч?
Що за цим стоїть
Нічний аналіз кошиків по історії замовлень – понад 320 тисяч рядків. Але рахувати «як часто разом» не можна: тоді блок заповнить найдешевший товар, який кладуть до всього.
Тому рахуємо наскільки частіше товар B беруть саме з товаром A, ніж зазвичай. Це витягує справжні пари, а не популярність.
Два запобіжники: пара має зустрітися в кількох різних замовленнях, щоб один нетиповий покупець не створив рекомендацію для всіх; і на сайт іде лише перелік товарів, без жодних цифр – конкурент не вирахує ваші обсяги продажів.
Підпис над блоком теж живий: підбирається під категорію й змінюється раз на тиждень.
Чесна ціна
Потрібна історія покупок. Новому магазину без даних це не побудувати.
Для товарів без своєї історії є запасний сценарій по категорії, але це слабший результат. Ми кажемо про це на старті, а не після здачі.
05
«На сайті було, приїхав – а вже немає»
Запит. Найболючіше для магазину з фізичною точкою: сайт і зал живуть окремо. Продали останню банку в залі – на сайті вона ще є, і хтось її замовляє.
Живе демопродайте товар у залі – і подивіться на сайт
🏪
7
Каса в залі
→
⚙️
7
Бек-офіс
→
🛒
7
Сайт
Що за цим стоїть
Найдорожча частина системи і найменш помітна. Двосторонній зв’язок з обліковою програмою: продаж на касі списує залишок, а замовлення з сайту резервує товар одразу, а не коли до нього дійдуть руки менеджера.
Саме це робить чесними всі інші рішення – від «повідомити про наявність» до стрічки, куди не потрапляє те, чого немає.
Чесна ціна
Це єдина частина, яку не купиш коробкою: вона робиться під конкретну облікову систему.
Тому сюди йде більша частина бюджету. Але без неї половина рішень вище стає декорацією, яка красиво бреше покупцеві.
06
«Товару немає. А коли буде?»
Запит. Людина дійшла до картки, товару немає – і йде назавжди. Найприкріша втрата: вона ж уже була готова купити.
Живе демопідпишіться, потім «завезіть» товар
Що за цим стоїть
Підписки живуть окремо від замовлень, а тригер – зміна залишку з системи обліку. Лист відправляє не менеджер і не таймер, а факт появи товару на складі.
Поруч працює друга, тихіша механіка: приблизно через місяць після покупки приходить лист «час поповнити запас» із тим, що людина брала. Для продуктів, які закінчуються, це працює без жодного тиску.
Чесна ціна
Потрібно, щоб залишок на сайті був справжнім (див. кейс 05).
Там, де «є / немає» ставлять руками, це стає генератором фальшивих обіцянок і шкодить більше, ніж якби його не було.
07
«Де моє замовлення?»
Запит. Питання №2 у чаті. Менеджер щоразу лізе в систему дивитися – по кілька десятків разів на день.
Живе деморухайте замовлення складом – трекер оновиться сам
Що бачить склад
Що бачить покупець за посиланням
Без реєстрації й пароля.Посилання захищене токеном – чуже замовлення підглянути не вийде.
Що за цим стоїть
Статуси йдуть із бек-офісу – з реального руху товару: зібрали, спакували, передали в доставку. Сторінка оновлюється сама.
Вхід не потрібен: персональне посилання працює одразу з листа чи SMS. Це прибирає найбільший бар’єр – реєстрацію заради того, щоб просто глянути статус.
Чесна ціна
Трекер чесний рівно настільки, наскільки чесно працює склад.
Якщо комірник не відмічає етапи, трекер показує неправду – і краще його не вмикати. Тому ми ставимо цей блок тільки разом із дисципліною на складі.
08
«Хочу те саме, що минулого разу»
Запит. Продуктовий магазин живе з повторних покупок. А збирати той самий кошик заново щотижня – нудно, і саме тому люди не повертаються.
Живе демоодна кнопка замість дванадцяти пошуків
Минуле замовлення
Кошик
Що за цим стоїть
Складність не в кнопці, а в тому, що частини товарів уже може не бути. Тому кнопка не мовчить: показує, що додалося, а що зникло, і пропонує заміну.
Поруч – список бажань, яким можна поділитися посиланням: відкривається без реєстрації, зручно, коли список складає одна людина, а купує інша.
Чесна ціна
Якщо не обробити випадок «половини немає», кнопка стає розчаруванням: людина тисне «повторити» й мовчки отримує неповний кошик.
Тобто це не кнопка, а окрема логіка звірки з наявністю. Саме на ній економлять ті, у кого функція «є, але нею не користуються».
09
«Мені не можна глютен»
Запит. Люди з непереносимістю читають склад кожного товару вручну. Це десятки хвилин на одне замовлення – і зрештою людина йде туди, де фільтр уже є.
Живе демофільтри складаються
Що за цим стоїть
Правило свідомо жорстке: тег ставиться тільки якщо виробник явно написав це на упаковці. Жодних здогадок за складом, жодних «схоже, що без цукру».
Для людини з непереносимістю помилка тут – це не незручність, а здоров’я. Тому система радше не поставить тег, ніж поставить сумнівний.
Автоматика лише додає теги – ручні позначки редакції вона ніколи не затирає.
Чесна ціна
Покриття неповне. Товари, де виробник нічого не написав, лишаються без тегів, навіть якщо фактично підходять.
Ми свідомо обрали неповноту замість ризику. Це варто проговорити з власником до запуску: його перше питання буде «чому цей товар не в списку».
10
«Сайт довго вантажиться»
Запит. Мобільний інтернет, каталог із фотографіями. Спершу білий екран, а коли фото нарешті вантажаться – верстка стрибає, і палець потрапляє не на той товар.
Живе демоімітація повільного зʼєднання
Звичайне завантаження
Наш підхід
Що за цим стоїть
Крихітна розмита версія кожного фото готується заздалегідь і вшивається прямо в сторінку: вона не тягне окремий запит на сервер і зʼявляється одночасно з текстом.
Місце під фото зарезервоване одразу, тому верстка не стрибає – товар не тікає з-під пальця, коли ви вже націлилися натиснути.
Чесна ціна
Кожне нове фото проходить додаткову обробку, і під це потрібне місце в кеші.
Це одноразова робота, яка далі працює сама. Але вона є, і в кошторисі її видно окремим рядком.
Частина друга
Те, чого покупець не бачить
Сайт – це вітрина. А гроші губляться позаду: у зведенні оплат, у зборі замовлень, у накладних. П’ять задач із бек-офісу.
11
«Бухгалтер щодня зводить виписку руками»
Запит. Клієнт оплатив на картку. Замовлення є, платіж у банку є – а звʼязку між ними немає. Хтось щодня відкриває виписку й шукає очима: ця сума схожа на це замовлення. Помилився – або замовлення поїхало неоплаченим, або клієнту дзвонять із вимогою заплатити те, що він уже заплатив.
Живе демодивіться, що система бере на себе, а що ні
Виписка з банку
Неоплачені замовлення
0зведено автоматично
0у черзі рішень
0відсіяно як не-замовлення
Що за цим стоїть
Система сама забирає виписки з усіх рахунків кожні пів години і зіставляє їх із замовленнями. Самого збігу за сумою мало: сум-двійників десятки щодня. Тому дивимось на сукупність ознак: сума разом із доставкою, рідкісне прізвище платника, рахунок, на який чекали саме це замовлення.
Головний принцип: там, де система не впевнена, вона не вирішує сама. Такий платіж іде в чергу рішень – ви відкриваєте одну картку й тиснете «так» або «ні». Це не автоматизація замість людини, а автоматизація очевидного, щоб людині лишилось тільки складне.
Один платіж закриває лише одне замовлення – захист від подвійного зарахування, коли дві однакові суми зійшлися в один день.
Чесна ціна
Потрібен доступ до банківських виписок. Його видаєте ви зі свого кабінету – лише на читання і з можливістю відкликати будь-коли. Пароль від банку ми не просимо ніколи.
Перші тижні систему треба «донавчати»: дивитися, що вона віднесла в чергу і чому. Повністю без людини це не працює і не має працювати – гроші не та тема для сліпої автоматики.
12
«Треба пʼять систем, щоб зрозуміти, як минув день»
Запит. Каса, сайт, банк, склад, доставка – усе окремо. Щоб скласти картину, треба зайти в кожну. На практиці власник не заходить нікуди, і проблему помічають через тиждень.
Був і зворотний перекос. Ми зробили сповіщення на кожну подію – бот став слати десятки повідомлень на добу, і власник у них потонув. Важливе загубилося серед рутини, підхід довелося переробити.
Живе демоодне повідомлення о 09:35 замість сорока
Що за цим стоїть
Правило, яке ми вивели болем: рутина – рядком у ранковій доповіді, аварія – окремим повідомленням, рішення – у чергу. Три канали, і жодна подія не має права їх плутати.
Доповідь збирає дані з усіх систем одразу: гроші за вчора, оплати, борги, терміни придатності, стан інтеграцій. Одне повідомлення – і день зрозумілий за півхвилини.
Окремо живе черга рішень: не картка на кожну підказку, а одна картка, що редагується. Проходите її, коли маєте час, і вона не засмічує стрічку.
Чесна ціна
Доповідь корисна рівно настільки, наскільки чесні дані під нею. Якщо склад не веде обліку, вона покаже красиві неправильні цифри.
І друге: звикання. Коли повідомлень багато, їх перестають читати. Тому кожне нове має пройти перевірку: це справді аварія чи просто рядок у доповіді?
13
«Комірник намотує зайві кілометри по складу»
Запит. Замовлення друкували на папірці в тому порядку, в якому клієнт клав товари в кошик. Збирач ходив хаотично: полиця А, потім Д, потім знову А. Плюс перепитування «а це точно той товар?» і помилки у вазі.
Живе демонатисніть на позицію – це і є «сканування» на телефоні
0 / 0зібрано
–між зонами складу
Що за цим стоїть
Замовлення перебудовується в маршрут за розташуванням товарів: збирач іде один раз по колу, а не повертається до тієї самої полиці тричі.
Позиція відмічається скануванням, а не пальцем – це прибирає «здалося, що той товар». Для вагових одразу вноситься фактична вага, і сума перераховується ще до пакування, а не після дзвінка клієнта.
Кілька людей можуть збирати одне замовлення одночасно, не заважаючи одне одному. На великих замовленнях це економить найбільше.
Чесна ціна
Потрібно, щоб склад був розмічений – товари прив’язані до полиць. Разова робота на кілька днів, але без неї маршрут будувати нема з чого.
Плюс телефон або сканер кожному збирачу. І перший тиждень швидкість падає: люди звикають. Це нормально, але власника треба попередити заздалегідь, інакше на третій день він скаже «раніше було краще».
14
«Менеджер вбиває накладні по одній»
Запит. Вечір, двадцять замовлень до відправки. Менеджер відкриває кабінет перевізника, копіює адресу, ПІБ, телефон, вагу – і так двадцять разів. Одна помилка в телефоні – посилка їде в нікуди.
Живе демовісім накладних одним натиском
–витрачено часу
≈ 16 хвбуло б руками
Що за цим стоїть
Накладні створюються одним пакетом із даних, які вже є в замовленні – нічого не переписуємо руками. Одразу формується реєстр для перевізника й друкуються наліпки.
Окремо вчили систему розрізняти відділення й поштомат: у перевізника це різні типи адрес, і плутанина тут гарантує повернення посилки. Так само окремо живе «контроль оплати», який часто плутають з оплатою доставки.
Якщо по одному замовленню прийшла помилка – решта пакета все одно їде, а проблемне підсвічується. Найгірше, коли одна помилка валить увесь пакет і менеджер не розуміє, що саме створилося.
Чесна ціна
Дані в замовленні мають бути чистими: телефон у правильному форматі, адреса обрана зі списку, а не написана від руки. Тобто робота переїжджає на форму замовлення.
І є залежність від перевізника: коли в нього падає сервіс, пакет не створюється. Систему довелося вчити відрізняти «відмову» від «не дочекалися відповіді» – це різні речі, і друге не має виглядати як помилка.
15
«Інтеграція зламалась у вівторок, помітили в пʼятницю»
Запит. Найдорожчі поломки – тихі. Стала синхронізація залишків – сайт три дні продавав те, чого немає. Не створилася резервна копія – дізнаєшся в день, коли вона знадобиться. Ніхто не винен: за цим просто нема коли стежити.
Живе демозламайте щось – система помітить сама
Що за цим стоїть
У кожного критичного процесу є вартовий – сторож, який перевіряє не «чи запустився скрипт», а чи є результат. Копія не просто створена: вона потрібного розміру і за сьогодні. Синхронізація не просто працює: залишки реально оновлювалися останню годину.
Різниця тут велика. Найпідступніша поломка – та, де все «зелене», бо скрипт відпрацював без помилки, але нічого не зробив.
Окремий вартовий звіряє касу з банком: скільки термінал прийняв карток і скільки банк зарахував. Розбіжність – це або технічна проблема, або те, про що ви хочете дізнатися першим.
Чесна ціна
Вартових треба налаштувати під ваші пороги, інакше вони або мовчать, коли треба кричати, або кричать щодня – і їх перестають читати. Друге гірше, ніж не мати вартових узагалі.
Тому кожен новий спершу йде на холостий прогін без сповіщень на реальних даних. І тільки коли видно, що в нормі він мовчить, його вмикають насправді.
Це не пакет. Це блоки.
Ви щойно пройшли 15 кейсів. Жоден із них не мусить бути у вас одразу – і взагалі не мусить, якщо не закриває реальний біль. Тому починаємо не з пропозиції, а з розмови.
1
Консультація
500 ₴
Дивимось, як у вас усе влаштовано, слухаємо, що болить. І кажемо прямо, що варто автоматизувати, а що ні.
2
Прорахунок по блоках
Який блок що дає, скільки коштує і в якому порядку його розумно ставити. Без «пакетів» і без зобов’язань.
3
Впроваджуємо по черзі
Беремо найпотрібніше. Воно починає працювати й окупатися – і тільки тоді додаємо наступне.
Спочатку – необхідний мінімум. З часом – розкішний максимум.
Розкажіть, що болить найбільше – і ми скажемо, який блок закриває це найдешевше. Якщо жоден не закриває, теж скажемо.