Магазин аксесуарів, який переріс WooCommerce
Не тому, що сайт гальмував. Тому, що специфічного функціоналу ставало дедалі більше, і кожна нова можливість вимагала обходити обмеження чужої платформи. Переїхали на власну систему, де магазин і CRM — це одне ціле.
Причина переїзду була не в швидкості. Сайт працював, і його можна було й далі прискорювати. Проблема була в іншому: у магазину накопичилося дуже багато специфічного функціоналу — свого, не «як у всіх». І що більше його ставало, то частіше кожна нова можливість вимагала не зробити, а обійти: ще один плагін, ще одне поле збоку, ще один милиця поверх чужої логіки.
До того ж магазин жив у зв’язці «сайт окремо, CRM окремо». Замовлення, клієнти, статуси, відправлення — усе це доводилось тримати синхронним між двома системами, які нічого не знають одна про одну.
У якийсь момент рахунок став очевидним: дешевше побудувати систему під ці процеси, ніж далі платити за те, щоб обходити чужі обмеження. Так магазин і CRM стали одним цілим.
Що було потрібно
Магазин, у якого багато власної логіки, кілька постачальників з різними умовами — і повний робочий день менеджерів усередині системи.
- Перенести каталог на 10 000+ товарів, не втративши позиції в пошуку
- Звести сайт і CRM в одну систему замість двох, які треба синхронізувати
- Підключати постачальників і оновлювати їхні прайси без ручної роботи
- Врахувати, що в кожного постачальника свої дні відправлення й свої способи доставки
- Працювати і з власним товаром, і з дропшипінгом в одному каталозі
- Дати можливість і далі нарощувати свій функціонал — без обхідних шляхів
Що зробили
Власна система на Payload CMS і Next.js: логіка магазину описана кодом під конкретні процеси, а не зібрана з чужих плагінів.
- Каталог 10 000+ товарів із кольоровими варіантами в одній картці замість окремих товарів на кожен колір
- Понад 13 тисяч старих адрес переносяться на нові автоматично — позиції збережені
- CRM всередині сайту: замовлення, клієнти, статуси й відправлення в тій самій системі, що й магазин
- Підключення постачальника — це налаштування, а не розробка: формат фіда, адреса, інтервал оновлення й зіставлення колонок
- Прайси оновлюються за розкладом самі: ціна, акційна ціна й наявність; товарів, яких більше немає у фіді, система знімає з продажу
- У кожного постачальника свої способи доставки й свій графік відправлення — картка товару сама рахує, коли посилка поїде
- Оплата карткою, криптовалютою й наложеним платежем; доставка Новою поштою та Meest
- Накладні створюються автоматично, статуси посилок підтягуються самі, клієнт отримує SMS
- Бонусна програма, вхід за номером телефону, відгуки, перевірка IMEI, вигрузка в Google Merchant
Окремо про переїзд. Магазин із такою історією не можна просто «перенести»: у нього роками накопичувались адреси сторінок, за якими його знаходять у Google. Тому кожна стара адреса веде на свою нову — таких перенаправлень понад тринадцять тисяч.
Заодно виправили те, що заважало роками: раніше кожен колір товару був окремою карткою, і вони конкурували між собою в пошуку. Тепер кольори — це варіанти однієї картки, а покупець перемикає їх на місці.
Найцікавіше вийшло з постачальниками. Раніше оновлення цін і наявності — це була ручна робота: завантажити прайс, звірити, оновити. Тепер постачальник у системі — це просто картка з налаштуваннями: формат файлу (CSV чи XML), адреса прайсу, як часто його забирати і яка колонка що означає.
Далі система робить усе сама за розкладом: забирає прайс, оновлює ціни, акційні ціни й наявність, а товари, яких у постачальника більше немає, знімає з продажу. Кожен запуск пишеться в журнал — видно, скільки позицій оновилось і що саме сталося.
Важливо, що постачальники різні. У кожного свої дні відправлення й час, до якого треба встигнути замовити, а ще свої доступні способи доставки. Усе це задається в його картці, і покупець на сторінці товару бачить не загальну фразу, а конкретне: коли саме поїде саме цей товар. Завдяки цьому магазин однаково спокійно працює і з власним складом, і з дропшипінг-постачальниками — в одному каталозі, без окремих сайтів і таблиць.
Адмінка зроблена під роботу менеджера, а не під те, що дозволяє платформа. На головному екрані — графік продажів і швидкі переходи до того, що потрібно щодня. У шапці — залишок SMS, щоб розсилка не зупинилась посеред дня, і сповіщення про нові замовлення.
У замовленні менеджер бачить усе одразу: склад замовлення, статус оплати, кнопку створення накладної та статус SMS клієнту. Прайс постачальника можна залити вручну, вказавши, яка колонка за що відповідає, — і одразу подивитись журнал, що саме оновилось.
Головне ж у тому, що система відкрита до зростання. Наступна специфічна вимога бізнесу — це задача на розробку всередині своєї системи, а не пошук плагіна, який приблизно вміє потрібне.