Розробка сайту-каталогу — це вітрина, де покупець доходить до потрібної позиції за характеристиками й натискає «запитати прорахунок» замість «купити». Таку вітрину роблять тоді, коли ціна залежить від обсягу, комплектації або договору, і ставити її на сторінці як фінальну нечесно. Робота ділиться на три вузли: імпорт прайсу з мапінгом полів, фільтр за характеристиками, які справді звужують вибір, і canonical для позицій, доступних із кількох категорій. Виміряний нами B2B-каталог тримає 1 848 карток і 138 категорій та віддає першу відповідь за 388,1 мс. Строк — 18–35 робочих днів, кошторис називаємо після розбору вашого прайсу.
18–35 робочих днів від затвердження структури каталогу
Наш вимір
Вимір 31.07.2026, B2B-каталог запчастин
1 848 карток і 138 категорій — 1 992 адреси без жодного дубліката
Перша відповідь сервера там же
388,1 мс при 120,2 КБ HTML
Показники зняті нашим виміром на живих сайтах відповідного масштабу.
після безкоштовного аудиту
Вартість
30
Гарантія
днів після підписання акта
18–35
Строк
робочих днів від затвердження структури каталогу
1 848
Вимір 31.07.2026, B2B-каталог запчастин
карток і 138 категорій — 1 992 адреси без жодного дубліката
388,1 мс
Перша відповідь сервера там же
при 120,2 КБ HTML
запит прорахунку, підбір за параметрами або вивантаження прайсу
Що натискає покупець
імпорт CSV чи XML за розкладом — від щодня до щогодини
Оновлення каталогу
після безкоштовного розбору прайсу, 2–4 робочих дні
Кошторис
Що входить
Повний перелік робіт і того, що ви отримуєте на виході
Структура каталогу під вашу номенклатуру: категорії й підкатегорії, за якими покупець доходить до групи товарів за два кліки, а не пошуком навмання
Картка позиції: характеристики таблицею, фото, паспорти й схеми окремими файлами — менеджер перестає пересилати документацію вручну
Фільтр за трьома-п'ятьма характеристиками, які справді звужують вибір, замість усіх колонок прайсу — сторінка категорії лишається швидкою
Пошук із обробкою артикулів і часткових збігів: той, хто прийшов із кодом деталі, знаходить її з першої спроби
Імпорт прайсу — поля вашого CSV або XML змаповані на поля каталогу, оновлення за розкладом: ціни й наявність більше не залежать від того, чи згадав хтось про сайт
Форма запиту прорахунку й підбору з передачею в пошту, Telegram і CRM — заявка лягає в систему, а не в чийсь особистий месенджер
Технічне SEO: ЧПУ, canonical на позиціях, доступних із кількох категорій, карта сайту без дублів — сигнали не розповзаються по трьох адресах одного товару
Мікророзмітка JSON-LD: Product без ціни, BreadcrumbList, Organization — пошуковик читає характеристики й шлях, а не вгадує їх із тексту
Аналітика GTM і GA4 з подіями перегляду позиції, застосування фільтра й відправки запиту — видно, за чим фільтрують і де людина зупиняється
Передача: доступи, письмова інструкція з оновлення прайсу, гарантія 30 календарних днів — далі каталог веде ваш менеджер
Коли ця послуга не підходить
Що не входить у роботу — щоб не було сюрпризів на здачі
Кошик, чекаут і онлайн-оплата — це вже інтернет-магазин, окрема задача
Наповнення каталогу вручну понад узгоджений обсяг
Копірайтинг описів позицій
Фотозйомка товару
Просування й реклама після запуску
Кому підходить
Ситуації, у яких ця послуга дає результат
Ситуація 1 з 4
Ціну називає менеджер, а не сторінка
Обладнання під конфігурацію, комплектуючі партіями, матеріали з розрахунком за обсягом. Кошик тут змушує вигадати цифру, яку менеджер потім переглядає в розмові. Каталог із запитом прорахунку прибирає це протиріччя: асортимент і технічні параметри відкриті, суму називає людина. У виміряному нами каталозі обладнання для шоколадного виробництва зроблено саме так — форма запиту замість чекауту на 106 позиціях у двох мовних версіях.
Розберемо вашу ситуацію на безкоштовному аудиті
Ситуація 2 з 4
Прайс живе в Excel, а замовлення — у месенджері менеджера
Файл із номенклатурою є, але щоразу пересилається вручну, а наявність уточнюється окремим повідомленням. Імпорт переносить той самий файл у каталог із фільтром і пошуком: покупець сам доходить до позиції, менеджер отримує запит із артикулом замість питання «а що у вас є?». Умова одна — характеристики мають бути окремими колонками, а не суцільним текстом опису.
Ситуація 3 з 4
Покупець приходить із кодом деталі, а не з бажанням подивитись
Механік, технолог і закупівельник відкривають пошук, а не гортають категорії. Тут вирішує, чи знаходить пошук позицію за частковим артикулом і чи розкладені сумісності. У виміряному каталозі запчастин для промислових швейних машин під це зібрані 138 категорій на 1 848 карток: глибина структури й тримає підбір за моделлю машини.
Ситуація 4 з 4
Номенклатура від сотні до кількох тисяч рядків
Робоча зона такої вітрини. Двадцять позицій обійдуться розділом продукції на звичайному сайті, кілька десятків тисяч потребують окремої інженерії імпорту й кешу. Між цими межами каталог тримається без хитрощів: у виміряному B2B-проєкті 1 992 адреси карти сайту не дали жодного дубліката.
Безкоштовний розбір прайсу й структури каталогу
Каталог без кошика роблять тоді, коли ціна залежить від обсягу, конфігурації або договору. Тому головне питання розбору — не «як показати товар», а «за чим людина його шукатиме і що вона натисне замість кошика».
Що міряємо
Що в прайсі насправдіВідкриваємо файл: скільки рядків, які поля заповнені, чи стоять характеристики окремими колонками. Прайс, де параметри зліплені в один текстовий опис, — це окремий етап робіт, і побачити його треба до кошторису, а не після.
За чим фільтрують ваші покупціШукаємо ті три-п'ять параметрів, які справді звужують вибір. Фільтр за всіма полями підряд робить сторінку повільною й не допомагає нікому — а кожен параметр ще й вимагає звести значення до одного вигляду.
Що стоїть замість кошикаЗапит прорахунку, покроковий підбір за параметрами, вивантаження прайсу файлом або дзвінок менеджеру. Від цього залежить і картка, і форма, і те, що ми потім міряємо як конверсію.
Стан наявного каталогу, якщо він єСкільки адрес у карті сайту й скільки з них унікальні, чи не дублюється та сама позиція під різними шляхами категорій. У нашій вибірці траплялись і 1 992 адреси без жодного дубліката, і 4 236 записів на 1 300 реальних адрес.
Звідки братимуться дані даліЯк часто змінюються позиції й ціни і хто формує вивантаження. Один чистий CSV раз на тиждень і обмін з обліковою системою щогодини — різні за трудомісткістю сценарії, і другий вимагає вашого програміста 1С чи BAS.
Що ви отримуєте на руки
Схему каталогу: категорії, глибина, які характеристики йдуть у фільтр, як виглядає картка.
Розбір вашого прайсу: які поля куди лягають і чого в ньому бракує для імпорту.
Заміри наявного каталогу з переліком дублів адрес, якщо каталог уже існує.
Розмову на 30–40 хвилин із вами й вашим менеджером з продажу.
Строк: 2–4 робочих дні від отримання вивантаження прайсу
Чому це безкоштовно
Бо різниця між каталогом на сто позицій і каталогом на дві тисячі — у разах, а не у відсотках, і без файлу назвати суму чесно неможливо. Документ лишається у вас незалежно від того, працюємо ми далі чи ні.
Що далі
Після розбору даємо кошторис по етапах із календарними датами. Якщо з файлу стане видно, що вам потрібен саме магазин із кошиком, скажемо це прямо — навіть якщо ви прийшли за каталогом.
Форма коротка: контакт і адреса сайту
Працюємо офіційно
Договір, акт і рахунок — на кожен проєкт, а не тільки на великий. Без документів у вас немає ні прав на роботу, ні підстави провести витрати.
Договір, акт і гарантія 30 днів
На кожен проєкт письмовий договір: обсяг, строки, сума, порядок приймання. Після здачі — акт і рахунок, а далі 30 календарних днів гарантії: помилки з нашої вини усуваємо безоплатно. Усне з дзвінка дублюємо письмово того ж дня — домовленість, якої немає в тексті, не рахується.
ФОП і безготівковий розрахунок
Виконавець — зареєстрований ФОП. Оплата на рахунок із закривними документами, які бухгалтерія проведе як витрати. Курс для гривневої оплати фіксується договором, а не з’ясовується постфактум.
Права й доступи — ваші
Код, дизайн і матеріали переходять до вас після повної оплати. Домен, хостинг, репозиторій, аналітику й рекламні кабінети оформлюємо на вас — щоб сайт не залежав від підрядника. NDA підписуємо на запит, після завершення свої доступи видаляємо самі.
Портал клієнта замість переписки
На час роботи ви отримуєте доступ до порталу: договори, рахунки, акти й стан проєкту в одному місці. Документи формуються з даних угоди, тому реквізити й суми в них не розходяться, а про оплати й дедлайни нагадує система, а не пам’ять менеджера.
Замовники з Європи
Серед робіт — проєкти для Норвегії, Болгарії та Іспанії: болгарський магазин трьома мовами з кур’єрською доставкою, іспанський з оплатою карткою й переказом, норвезький сайт клініки. Це видно в портфоліо, а не тільки в описі.
Цифри, які можна перевірити
Кожен кейс у портфоліо — з посиланням на живий сайт і технічним виміром: швидкість відповіді, вага сторінки, обсяг каталогу, знайдені дефекти. Ці цифри можна зняти самому й звірити з нашими.
Спершу аудит, потім сума
Прайсу на сайті немає навмисно: обсяг тієї самої роботи у двох клієнтів відрізняється в рази, і цифра «від» нічого не пояснює. Спершу безкоштовний розбір — рахуємо ваші сторінки, дублі й швидкість, — потім називаємо суму й строк і фіксуємо їх у договорі.
Кажемо «ні», коли не впевнені
Якщо задача не наша, строк нереальний або послуга вам просто не потрібна — скажемо це першим листом, а не після передоплати. Гарантій позицій у пошуку не даємо: їх не дає ніхто, а обіцянка без механізму — це продаж, а не робота.
NDA підписуємо на запит. Після завершення співпраці наші доступи до ваших сервісів видаляємо самі й повідомляємо про це.
Що впливає на вартість
Чому дві однакові на вигляд задачі рахуються по-різному — і що саме ми міряємо на аудиті
Кількість позицій і глибина структуриСотня рядків заводиться за день. Кілька тисяч — це мапінг полів, звірка категорій і перевірка характеристик по всьому масиву. Саме тут різниця між нижнім і верхнім краєм кошторису, і саме тому ми просимо файл до розмови про суму.
Стан прайсуАртикул, назва, категорія й параметри окремими колонками — імпорт іде як є. Характеристики, зліплені в описовий абзац або залиті картинкою в PDF, доводиться розбирати руками: це окремий етап зі своїм строком.
Скільки характеристик іде у фільтрКожен параметр — це нормалізація значень у прайсі. «Потужність 5 кВт», «5кВт» і «5 kW» для машини три різні значення, і хтось має звести їх до одного, інакше фільтр показує три пункти замість одного.
Що стоїть замість кошикаОдна форма запиту — один сценарій. Покроковий підбір за параметрами, персональне вивантаження прайсу файлом і передача заявки в CRM із розбором полів — три різні за трудомісткістю речі, і рахуються вони окремо.
Мовні версіїДруга мова множить не тексти, а адреси: карта сайту, hreflang і canonical у кожній гілці. У виміряному каталозі на 106 позицій дві мовні версії дали 230 адрес у sitemap-індексі з чотирьох файлів.
Джерело даних після запускуФайл, який ви кладете в домовлену папку, коштує дешевше за обмін з обліковою системою. Другий варіант вимагає узгодження форматів із вашим програмістом 1С або BAS і тестового вікна на боці обліку.
Кейси
Задачі та результат у цифрах — усі показники зняті нашим виміром
B2B-постачальник професійного обладнання для шоколадного виробництва
Задача
Показати каталог темперувальних машин, конш і ліній формування з технічними характеристиками та продуктивністю і зібрати запити на прорахунок — таке обладнання не купують в один клік.
Рішення
Сайт-каталог із формою запиту прорахунку замість кошика, дві мовні версії, картки з технічними параметрами. Способи розрахунку зведені на окрему сторінку для тих, хто вже готовий платити. Підключені GTM, GA4 і колтрекінг.
Результат
Вимір 31.07.2026: 106 позицій у двох мовних версіях — 230 адрес у sitemap-індексі з чотирьох файлів. Перша відповідь сервера 351,4 мс, повне завантаження HTML 490,4 мс при 297,6 КБ розмітки. Шість способів розрахунку на сторінці доставки й оплати — найширший набір серед виміряних проєктів. Знайдена розбіжність: у картці проєкту стек записаний як WordPress, а сайт віддає іншу CMS — запис або застарів, або платформу міняли без нас.
B2B-каталог запчастин і комплектуючих для промислових швейних машин
Задача
Дати технічному спеціалісту знайти деталь за кодом або за моделлю машини мінімумом кроків: помилка в підборі коштує простою виробництва.
Рішення
Каталог із підбором за моделлю обладнання, технічними схемами і формою запиту наявності. Дві мовні версії з коректним hreflang. Розрахунок безготівковий для ФОП і неплатників ПДВ, оплата після отримання на складі перевізника — умови описані на сторінці оплати.
Результат
Вимір 31.07.2026: 1 848 карток і 138 категорій — 1 992 адреси в карті сайту без жодного дубліката. Перша відповідь 388,1 мс, повне завантаження 419,5 мс при 120,2 КБ HTML: третя найлегша розмітка серед 16 виміряних сайтів. Знайдені дефекти, які ми ж і показали власнику: у HTML досі підключений Universal Analytics, вимкнений Google 1 липня 2023 року, а властивості GA4 немає — три роки без даних; нуль блоків JSON-LD на каталозі з 1 848 позицій; robots.txt без директиви Sitemap при робочій карті сайту.
Не знайшли свій випадок?
Опишіть, як це влаштовано у вас, — відповімо, чи підходить «Розробка сайту-каталогу без кошика» і що це означає у вашій ситуації. Без брифу й без дзвінка: одне питання, одна відповідь.
Як проходить робота
Прозорі етапи з погодженням на кожному кроці
Загальний строк:18–35 днів
1
Розбір прайсу і структура каталогу
3–5 робочих днів
Дивимось вивантаження, збираємо дерево категорій і перелік характеристик під фільтр, домовляємось, що людина натискає замість «купити». Структуру підписує ваш менеджер з продажу — переробляти її після верстки дорого.
2
Прототип категорії, картки й фільтра
2–4 робочих дні
Розкладка сторінки категорії зі списком, картка позиції з таблицею характеристик і файлами, поведінка фільтра при порожній вибірці. Погоджуємо на схемах, до дизайну.
3
Дизайн
4–7 робочих днів
Головна, категорія, картка, форма запиту, сторінка умов. Тут же фіксуємо цільову вагу сторінки: у наших вимірах каталог тримається в межах 120,2 КБ HTML, а важчі проєкти доходять до 297,6 КБ на тому самому типі сайту.
4
Збірка каталогу
5–9 робочих днів
Верстка, категорії, картка, фільтр, пошук за артикулом і частковим збігом, форми запиту прорахунку й підбору, ролі в адмінці, сторінка умов роботи.
5
Імпорт прайсу і мапінг полів
2–5 робочих днів
Ваші колонки лягають на поля каталогу, значення характеристик зводяться до одного вигляду, іде тестове заливання і звірка кількості позицій двома способами. Тоді ж ставимо розклад оновлення.
6
Технічне SEO, розмітка й аналітика
1–3 робочих дні
ЧПУ, canonical на позиціях із кількох категорій, карта сайту без дублів і директива Sitemap у robots.txt, JSON-LD без ціни, GTM і GA4 з подіями фільтра та відправки запиту.
7
Тестування й передача
1–2 робочих дні
Прогін сценарію «знайшов позицію — надіслав запит — заявка в CRM», заміри першої відповіді сервера й ваги HTML, прохід адмінки з вашим менеджером, передача доступів та інструкції з оновлення прайсу.
Технології та інтеграції
На чому будуємо і з чим це з’єднується
Стек
Next.js — сервер віддає готовий HTML каталогу; мінус: контент без адмінки править розробник
TypeScript — типи ловлять помилку мапінгу прайсу ще до збірки; мінус: поріг входу вищий за PHP
PostgreSQL — характеристики окремими полями, фільтр іде запитом; мінус: схему атрибутів проєктують наперед
OpenCart — коли кошик планують додати пізніше; мінус: частина модулів досі виходить лише під 3.x
WordPress — коли каталог веде маркетолог без розробника; мінус: на тисячах позицій фільтр упирається в базу
nginx + HTTP/2 — паралельні запити картки й файлів; мінус: повільний бекенд це не лікує
Каталог із запитом прорахунку проти магазину з кошиком
Чим цей варіант відрізняється від «Інтернет-магазин із кошиком»
Інтернет-магазин із кошикомНаш підхід
Ціна на сторінціфіксована — інакше чекаут не порахує суму замовленнядовідкова або діапазон з умовами, фінальну називає менеджер
Що робить покупецьдодає в кошик, обирає доставку й оплачуєнадсилає запит прорахунку чи підбору з артикулом
Розмітка Productз ціною й наявністю, є шанс на розширений сніпетбез ціни й offer: розмітка не обіцяє того, чого на сторінці немає
Обсяг робітдовше — оплати, доставка, повернення, юридичні сторінки18–35 робочих днів: немає чекауту, платіжних провайдерів і статусів замовлень
Куди падає результатзамовлення із сумою та статусом оплати в адмінцілід у пошту, Telegram і CRM, далі його веде менеджер
Що потрібно від вас
Без цього не почнемо — краще підготувати заздалегідь
1Прайс у CSV, XML або Excel — артикул, назва, категорія і характеристики окремими колонками.
2Фото позицій від 800 px по довшій стороні.
3Перелік характеристик для фільтра в порядку важливості — від того, чим покупець звужує вибір першим.
4Відповідь на питання, що робить покупець замість «купити»: запитує прорахунок, дзвонить чи завантажує прайс.
5Документацію до позицій, якщо ви віддаєте її покупцям: паспорти, сертифікати, схеми.
6Одну людину з боку продажу з правом підтвердити структуру каталогу й перелік характеристик.
Якщо чогось із цього немає — скажіть, підкажемо, як зібрати або зробимо самі окремою задачею.
Часті питання
Те, що питають найчастіше — з конкретними відповідями
чому каталог без кошика, а не звичайний магазин?
Бо ціна не завжди фіксована. Якщо вона залежить від обсягу, комплектації, курсу або договору з конкретним покупцем, кошик змушує поставити цифру, яку потім переглядають у розмові. Каталог із запитом прорахунку чесніший: покупець бачить асортимент і параметри, а суму отримує від менеджера. Технічно це й простіше — немає чекауту, платіжних провайдерів і статусів замовлень, тому строк коротший.
чи можна показувати ціни, якщо кошика немає?
Можна, і часто варто: ціна-орієнтир або діапазон утримує людину на сторінці замість того, щоб відправити її гуглити далі. Виводимо її як довідкову з приміткою про умови, а не як суму до сплати. У розмітці Product ціну при цьому не проставляємо: оголосити ціну в структурованих даних і не дати можливості купити — це розходження між розміткою й сторінкою, а за розмітку неіснуючого прилітають ручні санкції, а не переваги.
скільки позицій витримає такий каталог?
Кілька тисяч — спокійно, якщо коректно зроблені імпорт і фільтр. Виміряний нами B2B-каталог тримає 1 848 карток і 138 категорій і віддає першу відповідь за 388,1 мс при 120,2 КБ HTML. Обмежує зазвичай не платформа, а спосіб заливки: кілька тисяч рядків руками через адмінку не заводять. Окремо про фільтр: він генерує комбінаторну кількість адрес, і якщо їх не закрити канонікалами й robots.txt, ви отримаєте тисячі майже однакових сторінок в індексі — це погіршення, а не покращення.
як оновлювати ціни й наявність після запуску?
Імпортом за розкладом. Ви кладете файл у домовлене місце або віддаєте вивантаження з облікової системи, каталог оновлюється щодня чи щогодини — залежно від того, як швидко у вас рухаються дані. Ручне редагування лишається для окремих правок. Чого обмін не робить: він не виправляє облік. Якщо залишки в 1С неточні через пересорт чи невідображені списання, сайт швидко й акуратно покаже неточні дані.
у мене характеристики одним текстом в описі — що з цим робити?
Це найчастіший стан прайсу і окремий етап робіт. Поки потужність, розмір і сумісність лежать усередині абзацу, вони не стають ні колонкою, ні фільтром — машина бачить суцільний рядок. Варіанти два: розібрати парсером за шаблоном, якщо опис однотипний, або звести таблицю руками. Що саме вийде, видно з файлу, тому розбір прайсу й стоїть першим етапом, а не після дизайну.
чи буде каталог знаходитись у пошуку?
Позицій ніхто не гарантує. Технічно закриваємо ось що: кожна позиція має власну адресу з ЧПУ, унікальний title з артикулом, характеристики текстом, а не картинкою, і canonical для позицій, доступних із кількох категорій — саме на останньому будується більшість дублів. Чесна межа: карта сайту не піднімає позиції й не гарантує індексацію, а реальну кількість проіндексованих сторінок видно лише у вашій Search Console, доступу до якої у нас за замовчуванням немає.
чи можна потім додати кошик?
Так, якщо про це відомо на старті. Тоді ми беремо платформу з розрахунком на майбутній чекаут і закладаємо в структуру поля, які знадобляться магазину: залишок, одиницю виміру, мінімальну партію. Дописати кошик до каталогу, зробленого без цього припущення, теж можливо — але це переробка структури, а не доробка інтерфейсу, і рахується вона як окремий проєкт.
як зрозуміти, що каталог працює, якщо продажів на сайті немає?
Міряємо те, що є: кількість запитів прорахунку, які фільтри застосовують, які запити вводять у пошук і скільки з них повертають порожньо. Останнє — найкорисніший список у проєкті: це те, чого від вас хочуть і чого у вас немає. Порада з досвіду: перевірте лічильник до запуску нового каталогу. У виміряному нами каталозі запчастин у розмітці досі стояла Universal Analytics, вимкнена в липні 2023-го, а GA4 не було взагалі — три роки роботи без жодної цифри. І окремо про точність: GA4 показує тенденцію, а не бухгалтерську істину — блокувальники, режим згоди й обмеження браузерів на cookie з'їдають частину даних.
Надішліть вивантаження прайсу — подивимось, що з нього виходить.
У відповідь: схема каталогу, перелік характеристик під фільтр і кошторис по етапах із датами. Якщо з файлу стане видно, що вам потрібен магазин із кошиком, почуєте це першим листом.
Прайса на сайті немає навмисно: обсяг тієї самої роботи у двох клієнтів відрізняється в рази, і цифра «від» у такому разі нічого не пояснює. Спершу безкоштовний аудит — рахуємо ваші сторінки, дублі й швидкість, — потім називаємо суму й строк і фіксуємо їх у договорі.