-20%SALE🛒🛒🛒
  • Інтернет-магазини · OpenCart 4.x

Кабінет дилера: персональні ціни, історія, документи

Кабінет дилера на сайті — це закритий розділ, куди оптовий покупець заходить під своїм логіном і бачить свою ціну, свою кратність, свою історію й свої документи. Збираємо його на OpenCart: реєстрація з підтвердженням статусу менеджером, рівні цін за обсягом або окрема ціна на позицію, повтор замовлення в один крок, рахунок без дзвінка. Строк — 20–40 робочих днів. Суму називаємо після безкоштовного розбору вашої схеми цін: обсяг робіт задає глибина правил, а не кількість екранів.

Подивитись, як це працює
Вартість
після безкоштовного аудиту
Гарантія
30 днів після підписання акта
Строк розробки
20–40 робочих днів від затвердження ТЗ
після безкоштовного аудиту
Вартість
30
Гарантія

днів після підписання акта

20–40
Строк розробки

робочих днів від затвердження ТЗ

ціна, кратність, історія, документи — усе прив'язане до контрагента
Що вмикає вхід у кабінет
1 992
Виміряний B2B-каталог

адреси в карті сайту без жодного дубліката, перша відповідь 388,1 мс

лічильник на властивості, яку Google вимкнув 1 липня 2023 року — дані не збираються
Що знаходимо в діючих B2B-каталогах
передоплата 50%, два раунди правок на дизайні, гарантія 30 календарних днів
Умови
Що входить

Повний перелік робіт і того, що ви отримуєте на виході

  • Закритий вхід із підтвердженням дилера менеджером: доступ до оптових цін відкриває людина, а не форма реєстрації
  • Персональні ціни — рівні за обсягом або окрема ціна на позицію: дилер бачить свою колонку одразу після входу
  • Кратність, мінімальна партія й фасування перевіряються в кошику, тому замовлення не приходить із семи штук із коробки по дванадцять
  • Повтор попереднього замовлення в один крок: регулярна закупівля перестає бути походом по каталогу
  • Замовлення таблицею й завантаження списку артикулів файлом — кількість вводиться напроти позицій, без відкривання сотні карток
  • Історія замовлень зі статусами: дилер сам бачить, що відвантажено, і не пише менеджеру «де моє»
  • Рахунок із замовлення без участі менеджера — з ПДВ або без, за статусом контрагента
  • Документи в кабінеті за узгодженим переліком: рахунки, накладні, стан взаєморозрахунків
  • Персональний прайс на вивантаження: дилер забирає свої ціни файлом до себе в облік
  • Розділення вітрини — неавторизований бачить роздріб, напис «ціна після входу» або нічого; наслідки кожного варіанта для індексації називаємо до старту
  • Обмін з обліковою системою для персональних цін і залишків, якщо ціни живуть саме там
  • Умови роботи: передоплата 50%, два раунди правок на етапі дизайну, гарантія 30 календарних днів
Коли ця послуга не підходить

Що не входить у роботу — щоб не було сюрпризів на здачі

  • Бухгалтерський облік взаєморозрахунків — кабінет показує дані вашої системи, а не веде їх
  • Юридичні шаблони дилерських договорів
  • Кредитний контроль і робота з простроченою заборгованістю як процес
  • Реклама після запуску
  • Хостинг, домен, еквайринг
Кому підходить

Ситуації, у яких ця послуга дає результат

Ситуація 1 з 4

Менеджер щоранку розсилає прайс і руками виставляє рахунки

Дилер пише у Viber «скиньте актуальні ціни», отримує файл, за тиждень замовляє за старою колонкою, далі йде звірка. Кабінет прибирає розсилку як клас: ціна лежить на сайті, дилер бачить її після входу, а менеджер займається спірними випадками, а не пересиланням того самого файлу двадцятьом людям.

Розберемо вашу ситуацію на безкоштовному аудиті

Безкоштовний розбір вашої оптової схеми

Перш ніж робити кабінет, треба зрозуміти, як у вас насправді влаштована ціна для дилера. Найчастіше виявляється, що правил більше, ніж здавалося, і половина з них живе в голові менеджера. Аудит виводить їх на папір.

Що міряємо

  • Схема цінСкільки рівнів, чи є персональні ціни на позицію, як рахується знижка за обсягом. Це головний множник трудомісткості.
  • Кратність і мінімальна партіяОбмеження на кількість і фасування. У виміряному оптовому магазині білизни підбір іде за розмірами й кольорами всередині моделі плюс фасування — саме такі правила й переносяться в кошик кабінету.
  • ДокументообігЩо дилер має отримувати сам: рахунок, накладну, акт звірки. Кожен документ — окрема робота, і не кожен варто виводити в кабінет на першому етапі.
  • Повторні замовленняЯк часто дилер бере те саме. У виміряному B2B-каталозі запчастин це основний сценарій, і він задає, як виглядатиме головна сторінка кабінету.
  • Спосіб розрахункуЩо працює зараз. У виміряному оптовому магазині білизни вісім способів розрахунку описані і в тексті, і в машинній розмітці, а онлайн-оплати немає свідомо: замовлення узгоджується до оплати.
  • Обмін з облікомЗвідки братимуться персональні ціни й залишки. Найчастіше з облікової системи — і це окремий обсяг робіт із власним строком.

Що ви отримуєте на руки

  • Схему цін і правил, виписану на папері так, як вона реально працює.
  • Перелік функцій кабінету з поділом на обов'язкові й ті, що можуть почекати другий етап.
  • Оцінку робіт по документах і обміну з обліковою системою.
  • Розмову на 30–40 хвилин по документу.

Строк: 3–5 робочих днів — оптова логіка розбирається довше за звичайний каталог

Чому це безкоштовно

Бо половину оптових правил не дізнатися з опису задачі — їх доводиться витягувати питаннями. Ця робота однаково потрібна, і чесніше зробити її до договору, ніж закладати в кошторис наосліп.

Що далі

Після аудиту — сума й строк по етапах із датами, договір, рахунок, акт.

Форма коротка: контакт і адреса сайту

Працюємо офіційно

Договір, акт і рахунок — на кожен проєкт, а не тільки на великий. Без документів у вас немає ні прав на роботу, ні підстави провести витрати.

  • Договір, акт і гарантія 30 днів

    На кожен проєкт письмовий договір: обсяг, строки, сума, порядок приймання. Після здачі — акт і рахунок, а далі 30 календарних днів гарантії: помилки з нашої вини усуваємо безоплатно. Усне з дзвінка дублюємо письмово того ж дня — домовленість, якої немає в тексті, не рахується.

  • ФОП і безготівковий розрахунок

    Виконавець — зареєстрований ФОП. Оплата на рахунок із закривними документами, які бухгалтерія проведе як витрати. Курс для гривневої оплати фіксується договором, а не з’ясовується постфактум.

  • Права й доступи — ваші

    Код, дизайн і матеріали переходять до вас після повної оплати. Домен, хостинг, репозиторій, аналітику й рекламні кабінети оформлюємо на вас — щоб сайт не залежав від підрядника. NDA підписуємо на запит, після завершення свої доступи видаляємо самі.

  • Портал клієнта замість переписки

    На час роботи ви отримуєте доступ до порталу: договори, рахунки, акти й стан проєкту в одному місці. Документи формуються з даних угоди, тому реквізити й суми в них не розходяться, а про оплати й дедлайни нагадує система, а не пам’ять менеджера.

  • Замовники з Європи

    Серед робіт — проєкти для Норвегії, Болгарії та Іспанії: болгарський магазин трьома мовами з кур’єрською доставкою, іспанський з оплатою карткою й переказом, норвезький сайт клініки. Це видно в портфоліо, а не тільки в описі.

  • Цифри, які можна перевірити

    Кожен кейс у портфоліо — з посиланням на живий сайт і технічним виміром: швидкість відповіді, вага сторінки, обсяг каталогу, знайдені дефекти. Ці цифри можна зняти самому й звірити з нашими.

  • Спершу аудит, потім сума

    Прайсу на сайті немає навмисно: обсяг тієї самої роботи у двох клієнтів відрізняється в рази, і цифра «від» нічого не пояснює. Спершу безкоштовний розбір — рахуємо ваші сторінки, дублі й швидкість, — потім називаємо суму й строк і фіксуємо їх у договорі.

  • Кажемо «ні», коли не впевнені

    Якщо задача не наша, строк нереальний або послуга вам просто не потрібна — скажемо це першим листом, а не після передоплати. Гарантій позицій у пошуку не даємо: їх не дає ніхто, а обіцянка без механізму — це продаж, а не робота.

NDA підписуємо на запит. Після завершення співпраці наші доступи до ваших сервісів видаляємо самі й повідомляємо про це.

Що впливає на вартість

Чому дві однакові на вигляд задачі рахуються по-різному — і що саме ми міряємо на аудиті

  • Глибина цінової схемиТри рівні за обсягом — це налаштування груп покупців. Окрема ціна на кожну пару «контрагент — товар» вимагає власної таблиці цін і правок у трьох місцях: у каталозі, у кошику й при формуванні замовлення. Різниця між цими двома випадками більша за всі інші фактори разом.
  • Звідки беруться ціниПравила на сайті рахуються самі. Вивантаження з обліку — це окремий обмін зі своїм строком. Чесна межа: обмін не виправляє облік. Якщо в обліковій системі пересорт і невідображені списання, сайт покаже неточні дані швидко й акуратно, а між вивантаженнями завжди лишається вікно зі старою ціною.
  • Перелік документів у кабінетіРахунок формується із замовлення й коштує небагато. Накладні тягнуться з обліку. Найдорожчий — стан взаєморозрахунків: він має право з'явитися в кабінеті лише тоді, коли обмін працює надійно, інакше дилер бачить чужий борг і телефонує менеджеру.
  • Способи швидкого замовленняПовтор із історії робиться швидко. Замовлення таблицею — середня робота. Розбір файлу зі списком артикулів найдорожчий, бо в дилера свої коди й їх треба зіставляти з вашими, а частина рядків приїжджає з помилками, які має ловити не менеджер.
  • Кількість винятків у правилахОдна кратність на весь каталог — це рядок логіки. Фасування, що змінюється по категоріях, і «для цих трьох клієнтів працює по-іншому» перетворюють правило на таблицю винятків.
Кейси

Задачі та результат у цифрах — усі показники зняті нашим виміром

B2B-каталог запчастин і комплектуючих до промислових швейних машин

Задача
Дати технічному спеціалісту знайти деталь за кодом або моделлю обладнання за мінімум кроків: помилка в підборі коштує простою виробництва.
Рішення
Каталог на OpenCart із підбором деталей за моделлю машини, технічними схемами й формою запиту наявності. Розрахунок безготівкою без ПДВ на рахунок ФОП за IBAN, оплата після отримання товару на складі перевізника. Дві мовні версії з коректним hreflang.
Результат
1 992 адреси в карті сайту без жодного дубліката — 1 848 карток товару і 138 категорій. Перша відповідь сервера 388,1 мс, повне завантаження 419,5 мс при вазі HTML 120,2 КБ: третя найлегша розмітка серед 16 виміряних сайтів. Знайдений дефект: у коді досі висить лічильник Universal Analytics, який Google вимкнув 1 липня 2023 року, а GA4 немає взагалі — три роки без даних. Вимір 31.07.2026.

оптовий магазин нижньої білизни з розмірними сітками, каталог понад 13 тис. позицій

Задача
Дати оптовому покупцю підбір за розмірами й кольорами всередині моделі, ціни за рівнями замовлення й швидкий повтор.
Рішення
OpenCart із розмірними сітками, фасуванням у картці та оптовими рівнями цін. Вісім способів розрахунку винесені не лише в текст, а й у машинну розмітку через acceptedPaymentMethod. Онлайн-оплати немає свідомо: щоб не оплачували те, чого немає в наявності.
Результат
13 428 товарних сторінок і 161 категорія — 13 590 адрес у карті сайту, з них лише один дубль. Перша відповідь 289 мс, повне завантаження 455,1 мс на каталозі в 13 тисяч позицій. Знайдений дефект: стандартна адреса карти сайту віддає 200 з порожнім тілом, а робоча лежить на нестандартній. Вимір 31.07.2026.

оптовий магазин косметики для б'юті-індустрії, каталог майже 4 тис. позицій

Задача
Зібрати оптовий каталог для професійних закупівельників: навігація за брендами, оптові ціни, швидке оформлення.
Рішення
Магазин на OpenCart із канонічною картою сайту, оголошеною в robots.txt. Розрахунок через платіжний сервіс, післяплатою і на рахунок у банку. Шість типів структурованих даних, включно з контактами й графіком роботи.
Результат
4 167 адрес у канонічній карті сайту: 3 947 товарів, 166 брендів, 47 категорій, 6 інформаційних сторінок і головна. Перша відповідь 576,8 мс при вазі HTML 192,4 КБ. Знайдений дефект: паралельно живе стара карта сайту — 7 782 записи на 2 755 унікальних адрес, тобто вона одночасно дубльована й неповна. Вимір 31.07.2026.

Не знайшли свій випадок?

Опишіть, як це влаштовано у вас, — відповімо, чи підходить «B2B-кабінет дилера в інтернет-магазині» і що це означає у вашій ситуації. Без брифу й без дзвінка: одне питання, одна відповідь.

Як проходить робота

Прозорі етапи з погодженням на кожному кроці

Загальний строк:20–40 днів

  1. Розбір оптової схеми

    3–5 робочих днів

    Витягуємо питаннями всі правила ціни, кратності й документообігу — включно з тими, що ніде не записані. Це і є безкоштовний аудит.

  2. ТЗ: матриця цін, правил і документів

    3–5 робочих днів

    Хто яку ціну бачить, за яких умов, що перевіряє кошик, які документи віддає кабінет і звідки їх бере. Документ, за яким потім приймається робота.

  3. Прототип кабінету

    2–4 робочих дні

    Головна сторінка кабінету під ваш основний сценарій, форми швидкого замовлення, розділ документів. Погоджуємо до дизайну, бо перероблення після збірки дороге.

  4. Збірка: доступ, ціни, кратність, кошик

    6–12 робочих днів

    Реєстрація з модерацією, підстановка ціни контрагента в каталозі й кошику, перевірка кратності на сервері, розділення вітрини для неавторизованих.

  5. Швидке замовлення й документи

    3–7 робочих днів

    Повтор із історії, замовлення таблицею, розбір файлу з артикулами, формування рахунка з ПДВ і без, вивантаження персонального прайсу.

  6. Обмін, тестування під реальним дилером, передача

    3–7 робочих днів

    Підключаємо обмін цінами й залишками, проганяємо повний цикл під живим контрагентом — від входу до рахунка, передаємо доступи й інструкцію менеджеру.

Технології та інтеграції

На чому будуємо і з чим це з’єднується

Стек

  • OpenCart 4.x — ставимо за замовчуванням, це гілка, яку розвивають
  • OpenCart 3.x — коли потрібен модуль без збірки під 4.x; версію фіксуємо в ТЗ до старту
  • групи покупців OpenCart — закривають рівні цін, але не ціну на конкретну пару «контрагент — товар»
  • PHP і MySQL — персональна ціна лежить окремою таблицею й підставляється в моделі каталогу, а не в шаблоні
  • перевірка кратності на сервері, а не в JavaScript: кількість правиться в запиті за десять секунд
  • nginx, HTTP/2
  • HTTPS + HSTS — кабінет із документами інакше не запускаємо
  • обмін з обліковою системою за розкладом: між вивантаженнями завжди є вікно зі старою ціною
  • розділи кабінету під noindex — у пошуку їм робити нічого

Інтеграції

  • 1С / BAS
  • безготівковий розрахунок з ПДВ і без ПДВ
  • оплата за IBAN
  • рахунок-фактура
  • WayForPay
  • LiqPay
  • Нова Пошта
  • Укрпошта
  • Meest Express
  • Google Tag Manager
  • GA4
  • JivoSite
  • Telegram
Кабінет проти прайсу в месенджері й таблиці в менеджера

Чим цей варіант відрізняється від «Прайс у месенджері + Excel»

Ціна для контрагентаодне джерело, дилер бачить свою колонку після входу
Кратність і мінімальна партіяперевіряє кошик до оформлення
Повторна закупівляповтор попереднього замовлення в один крок
Рахунокформується із замовлення, доступний одразу
Спірне замовленнясклад видно в історії кабінету
Що це коштуєразова розробка плюс підтримка
Що потрібно від вас

Без цього не почнемо — краще підготувати заздалегідь

  1. Схему цін: рівні, знижки, персональні умови — у тому вигляді, в якому вона реально працює.
  2. Правила кратності, мінімальної партії й фасування.
  3. Перелік документів, які дилер має отримувати самостійно.
  4. Опис процесу підтвердження дилера: хто його схвалює й за якими критеріями.
  5. Приклад вивантаження з облікової системи, якщо ціни братимуться звідти.
  6. Одну людину з правом ухвалювати рішення по оптовій логіці.

Якщо чогось із цього немає — скажіть, підкажемо, як зібрати або зробимо самі окремою задачею.

Часті питання

Те, що питають найчастіше — з конкретними відповідями

чим кабінет дилера відрізняється від оптового магазину?

Оптовий магазин — вітрина з оптовими цінами для всіх, хто на неї зайшов. Кабінет — закритий контур під конкретного покупця: його ціни, його кратність, його історія й документи. Одне не замінює інше, і часто на сайті живуть обидва режими: публічна вітрина для нових і кабінет для тих, кого вже підтвердив менеджер. Якщо вам потрібна саме вітрина, дивіться сторінку про оптовий магазин.

у кожного клієнта своя ціна на кожну позицію — так узагалі можна?

Можна, але це не налаштування, а доробка. Групи покупців у OpenCart дають рівні: роздріб, дилер, ключовий клієнт. Ціна на конкретну пару «контрагент — товар» у ядрі не передбачена, тому вона заводиться окремою таблицею й підставляється в моделі каталогу. Важлива деталь: правити треба саме модель, а не шаблон картки. Якщо ціну підмінити у виводі, у кошику й у рахунку опиниться роздрібна сума, і дізнаєтесь ви про це від дилера.

як дилер зробить замовлення на двісті позицій, не відкриваючи двісті карток?

Трьома способами, і зазвичай потрібні не всі. Повтор попереднього замовлення — коли закупівля стабільна. Замовлення таблицею — коли міняється тільки кількість: список позицій із полем кількості напроти кожної. Завантаження файлу зі списком артикулів — коли заявку формують в обліковій системі на боці дилера. Третій варіант найдорожчий: коди в дилера свої, і їх треба зіставляти з вашими, а рядки з помилками показувати одразу, а не після оформлення.

чи можна закрити ціни від сторонніх?

Так, і в оптовій торгівлі це звична річ. Варіанти три: показувати роздрібну ціну, показувати напис «ціна після входу» або не показувати нічого. Компроміс називаємо прямо: сторінка без ціни втрачає частину сенсу для пошуку, а сторінка зовсім без цін конкурує гірше за ту, де ціна є. Рішення ваше, і воно різне для різних ніш — у виміряному нами каталозі запчастин ціни відкриті, бо трафік із пошуку там частина продажу.

рахунок дилер отримає сам?

Так, і це одна з найкорисніших функцій кабінету: замовлення оформлене — рахунок доступний одразу, з ПДВ або без, залежно від статусу контрагента. Чесна межа: рахунок на сайті не робить вас постачальником для юрособи. Договір, відстрочка платежу й наявність під обсяг лишаються поза сайтом — кабінет закриває тільки перший крок, зате закриває його без черги до менеджера.

чи виводити в кабінет борг і акт звірки?

Наша рекомендація — на першому етапі ні. Стан взаєморозрахунків має сенс тільки тоді, коли обмін з обліком уже працює надійно й дані свіжі. Інакше виходить гірше, ніж було: дилер бачить цифру, не розуміє її, телефонує менеджеру, і той пояснює, чому в кабінеті одне, а в бухгалтерії інше. Ми радимо запускати кабінет на цінах, кратності, історії та рахунку, а звірку додавати другим етапом, коли обмін відпрацював кілька місяців.

звідки візьмуться персональні ціни, якщо вони в 1С?

З обміну: облікова система віддає файл або відповідає на запит, сайт розкладає ціни по контрагентах. Обмін ставиться на розклад, і про його межі краще знати заздалегідь. Перша: він не виправляє облік — якщо в 1С пересорт, сайт покаже пересорт. Друга: між вивантаженнями є вікно, і в цьому вікні ціна на сайті стара. Третя: при оновленні облікової системи чи CMS обмін доводиться доробляти, це постійна стаття витрат. Деталі — на сторінці про обмін з 1С і BAS.

скільки триває і що зсуває строк?

20–40 робочих днів від затвердження ТЗ, шість етапів. Найдовший — не програмування, а збірка цін і правил: 6–12 днів. Строк зсуває не обсяг каталогу, а кількість винятків. Класична історія: на третьому тижні з'ясовується, що для трьох старих клієнтів працюють умови, яких немає в жодному документі, і про них пам'ятає один менеджер. Саме тому розбір схеми стоїть першим етапом і робиться до договору.

Надішліть свою схему цін і перелік документів, які просить дилер.

У відповідь — розбір схеми на папері, перелік функцій кабінету з поділом на обов'язкові й другий етап, оцінка робіт по етапах. Якщо кабінет вам зараз не потрібен, скажемо це першим листом.

Переглянути кейси
  • Відповідь протягом 2 годин
  • Без зобов’язань
  • Працюємо за договором

Прайса на сайті немає навмисно: обсяг тієї самої роботи у двох клієнтів відрізняється в рази, і цифра «від» у такому разі нічого не пояснює. Спершу безкоштовний аудит — рахуємо ваші сторінки, дублі й швидкість, — потім називаємо суму й строк і фіксуємо їх у договорі.