Dropship Partner Cabinet — особистий кабінет дропшипера для OpenCart
Модуль протестовано на OpenCart 3.x. Робота на інших версіях не гарантується.
Продаж та технічна підтримка модуля для інтернет-магазинів на території РФ та РБ не здійснюються.
Код модуля не зашифровано, без ionCube чи обфускації. Ви зможете вільно переглядати та змінювати код.
Модуль Dropship Partner Cabinet додає до OpenCart повноцінну систему роботи з дропшипінг-партнерами. Розширення об’єднує реєстрацію партнерів, персональні ціни, створення замовлень, облік балансу, резервування коштів, виплати, товарні XML(YML)-фіди та сповіщення в одному окремому кабінеті.
Партнер отримує власний робочий простір, у якому може створювати замовлення для своїх покупців, обирати фінансову модель, керувати персональними фідами, подавати запити на поповнення балансу та виплату коштів, переглядати фінансовий журнал і налаштовувати сповіщення.
Адміністратор керує партнерами, доступними товарами, мінімальними націнками, способами доставки й оплати, статусами замовлень, балансами, виплатами, чергою фідів та каналами сповіщень. Усі фінансові зміни фіксуються в окремому журналі.
Як працює модуль
- Клієнт реєструється на сайті та подає заявку на участь у партнерській програмі
- Адміністратор перевіряє заявку, налаштовує персональні умови та схвалює партнера
- Партнер отримує доступ до окремого кабінету дропшипера
- Ціни для партнера розраховуються від закупівельної ціни товару та мінімальної націнки адміністратора
- Партнер може створювати замовлення для своїх покупців без використання стандартного кошика теми
- Замовлення створюється як повноцінне замовлення OpenCart і відображається у стандартній адміністративній частині
- Фінансові операції виконуються відповідно до вибраної моделі: викуп / передоплата або комісійний продаж
- Партнер може створювати статичні товарні XML(YML)-фіди з персональними цінами
- Статуси замовлень, виплат, поповнень і фідів можуть надсилатися на e-mail або в Telegram
Що вміє модуль
- Приймати заявки на підключення до партнерської програми
- Створювати партнерів вручну з адміністративної частини
- Переводити схвалених партнерів до окремої групи покупців
- Зберігати початкову групу покупця та відновлювати її після блокування або видалення партнера
- Задавати загальну та персональну мінімальну націнку
- Створювати правила націнки для окремих товарів, категорій і виробників
- Підтримувати відсоткову та фіксовану націнку
- Створювати дропшипінг-замовлення через окрему форму
- Працювати з моделлю викупу / передоплати
- Працювати з комісійною моделлю
- Вести баланс, резерв, очікуваний заробіток і доступну до виплати суму
- Враховувати пряму та зворотну доставку
- Створювати запити на поповнення балансу
- Створювати запити на виплату коштів
- Фіксувати всі зміни у фінансовому журналі
- Створювати декілька персональних профілів фідів для одного партнера
- Формувати статичні XML(YML)-фіди, сумісні з імпортом Prom.ua
- Вибирати мову, валюту, товари, категорії, виробників і поля фіда
- Перепризначати категорії магазину на категорії порталу через portal_category_id
- Формувати повні фіди для первинного імпорту та скорочені для швидкого оновлення цін і залишків
- Формувати фіди вручну або через захищений CRON
- Надсилати сповіщення через Telegram, e-mail або обидва канали
- Показувати адміністратору нові заявки, замовлення, виплати, поповнення та помилки фідів
- Працювати з українською, англійською та російською мовами
Реєстрація дропшипінг-партнера
Партнером є звичайний зареєстрований покупець магазину, для якого створюється окремий партнерський профіль. Під час подання заявки клієнт зазначає:
- Назву магазину
- URL магазину
- Контактний e-mail
- Номер телефону в міжнародному форматі
Адміністратор може схвалити, відхилити або заблокувати заявку. Доступ до робочих розділів отримує лише партнер зі статусом «Схвалено».
Після схвалення модуль переводить покупця до налаштованої групи дропшиперів. Початкова група запам’ятовується та відновлюється після блокування, відхилення або видалення партнера.
Адміністратор також може створити партнера вручну для вже наявного облікового запису покупця.
Дані партнера
У кабінеті партнер може редагувати свої контактні та платіжні дані:
- Назву магазину
- URL магазину
- Контактний e-mail
- Номер телефону
- Отримувача виплати
- ІПН / ЄДРПОУ
- IBAN
Партнер бачить свій унікальний ID. Його можна використовувати у призначенні платежу, щоб адміністратор міг однозначно визначити платника під час поповнення балансу.
Закупівельна ціна
Базою розрахунків є закупівельна ціна товару, яка зберігається у полі product.cost. Модифікатор додає поле закупівельної ціни до стандартної форми редагування товару.
Якщо стовпець cost уже створено іншим модулем закупівельних цін, Dropship Partner Cabinet використовує наявне поле. Під час видалення модуля стовпець cost не видаляється.
Товар із нульовою закупівельною ціною не бере участі у партнерському продажі та не експортується до персональних фідів.
Правила мінімальної націнки
Адміністратор задає мінімальну ціну, нижче якої партнер не може продавати товар. Розрахунок починається із закупівельної ціни.
Приклад: закупівельна ціна становить 1000, мінімальна націнка адміністратора — 5%. Розрахункова ціна партнера становитиме 1050.
Модуль підтримує:
- Загальну мінімальну націнку для всіх партнерів
- Персональну мінімальну націнку для окремого партнера
- Правила для конкретного товару
- Правила для категорії
- Правила для виробника
- Відсоткову націнку
- Фіксовану суму
Пріоритет правил:
- Окремий товар
- Категорія
- Виробник
- Персональна націнка партнера
- Загальна націнка модуля
Якщо товар належить до декількох категорій із різними правилами, використовується правило, яке формує найбільшу підсумкову ціну.
Приклад пріоритету: для виробника задано 5%, для категорії — 8%, а для конкретного товару — фіксовану суму 150. Для товару із закупівельною ціною 1000 застосовується правило товару, тому розрахункова ціна становитиме 1150.
Створення замовлень
Партнер створює замовлення через окрему форму кабінету. Стандартний кошик і оформлення замовлення теми для цього не використовуються.
- Партнер обирає фінансову модель
- Знаходить товар за назвою, моделлю або артикулом
- Додає товари до таблиці замовлення
- Вказує необхідну кількість
- За потреби задає власну ціну продажу
- Заповнює дані фактичного одержувача
- Обирає спосіб доставки та оплати
- Створює замовлення
В автодоповненні показується поточна наявність товару. Товари без залишку не приховуються, але позначаються як відсутні. Додати кількість, що перевищує доступний залишок, неможливо.
Створене замовлення сумісне зі стандартною системою замовлень OpenCart. У стандартному замовленні покупцем залишається партнер, а дані доставки належать фактичному одержувачу.
Фінансова модель «Викуп / передоплата»
Модель підходить, коли партнер сам отримав оплату від покупця та повинен оплатити магазину розрахункову вартість товару.
Приклад:
- Закупівельна ціна — 1000
- Мінімальна націнка магазину — 5%
- Розрахункова сума — 1050
- Ціна продажу партнером — 1260
Під час створення замовлення 1050 резервується на балансі партнера. Після успішного виконання замовлення зарезервована сума остаточно списується.
Якщо доступного балансу недостатньо, замовлення все одно зберігається, але отримує фінансовий стан «Недостатньо коштів — очікує поповнення». Адміністратор бачить попередження та не повинен передавати замовлення в роботу до поповнення балансу.
Після поповнення повторне встановлення робочого статусу намагається створити резерв. Виконання замовлення неможливе без успішного резервування розрахункової суми.
Комісійна фінансова модель
Комісійна модель використовується, коли магазин сам отримує оплату від одержувача, а партнеру нараховується різниця між ціною продажу та розрахунковою сумою.
Приклад:
- Розрахункова сума магазину — 1050
- Ціна продажу одержувачу — 1260
- Заробіток партнера — 210
Після передавання замовлення в службу доставки 210 переходять до очікуваного заробітку. Після успішного виконання замовлення ця сума стає доступною для виплати.
Попереднє поповнення балансу для комісійного замовлення не потрібне. Якщо замовлення скасовано або повернено, очікуваний чи вже підтверджений заробіток анулюється.
Статуси замовлення
Адміністратор самостійно зіставляє статуси OpenCart з етапами роботи дропшипінг-замовлення:
- Початковий статус — нове замовлення, яке ще не передано в роботу
- Замовлення прийнято в роботу — адміністратор почав комплектацію
- Передано в службу доставки — відправлення передано перевізнику
- Замовлення виконано — одержувач отримав замовлення
- Замовлення скасовано — замовлення скасовано або відправлення повернулося
До однієї фінансової дії можна прив’язати декілька статусів OpenCart. Один статус не можна одночасно використовувати для різних етапів.
Повторне встановлення того самого статусу не створює повторне резервування, списання або нарахування. Модуль перевіряє поточний фінансовий стан замовлення перед кожною операцією.
У кабінеті партнер бачить історію статусів замовлення разом із датою та коментарями адміністратора.
Конструктор одержувача та доставки
Адміністратор може створити власний набір полів форми замовлення та окремі поля для кожного способу доставки.
Для кожного поля налаштовуються:
- Технічний код
- Назва всіма мовами магазину
- Тип поля
- Поле замовлення, до якого буде записано значення
- Обов’язковість
- Статус
- Порядок сортування
Підтримуються звичайні рядки, багаторядкові поля, список країн і залежний список регіонів / областей.
Країни та області завантажуються з локальної бази даних магазину. Після вибору країни партнер отримує відповідний список регіонів.
Значення декількох полів можна спрямувати до shipping_address_1 або shipping_address_2. Модуль об’єднає їх у читабельний формат разом із локалізованими назвами.
Приклад: «Вулиця: Героїв, Будинок: 22, Квартира: 3».
Способи доставки та оплати
Адміністратор створює доступні партнеру способи доставки та способи оплати одержувача.
Для способу доставки задаються:
- Технічний код, наприклад dropship.novapost
- Назва всіма мовами магазину
- Статус
- Порядок сортування
- Власний набір полів
Для кур’єрської доставки можна запросити місто, вулицю, будинок і квартиру. Для доставки у відділення — місто та номер відділення. Для поштомата — місто та номер поштомата.
Технічний код доставки зберігається у shipping_code, локалізована назва — у shipping_method. Код оплати записується у payment_code, а назва — у payment_method.
Пряма та зворотна доставка
Для кожного замовлення адміністратор окремо зазначає:
- Хто оплачує доставку
- Фактичну вартість прямої доставки
- Коментар до доставки
- Вартість зворотної доставки
- Коментар до повернення
Якщо успішну доставку оплачує одержувач, її вартість не списується з балансу партнера. Якщо доставку оплачує партнер, фактична сума списується з його балансу.
У разі повернення відправлення пряма та зворотна доставка списуються з партнера незалежно від початково вибраного платника.
Перед установленням статусу відправлення або виконання адміністратор повинен підтвердити пряму доставку, навіть якщо її вартість дорівнює 0. Для скасування потрібно окремо підтвердити пряму та зворотну доставку.
Баланс і резерв коштів
Фінансова система розділяє декілька показників:
- Баланс — власні кошти партнера
- Резерв — кошти, зарезервовані під замовлення викупу
- Очікуваний заробіток — дохід за комісійними замовленнями, які ще не виконані
- Доступно до виплати — підтверджений заробіток за виконаними комісійними замовленнями
Доступна для виплати сума враховує вільний баланс, який не перебуває в резерві, та підтверджений комісійний заробіток.
Адміністратор може вручну поповнити або списати баланс партнера. Причина коригування зберігається у фінансовому журналі та може бути надіслана партнеру як сповіщення.
Поповнення балансу
У налаштуваннях модуля адміністратор зазначає реквізити магазину:
- Отримувача платежу
- ІПН / ЄДРПОУ
- IBAN
- Телефони підтримки
- Email підтримки
Партнер бачить реквізити в кабінеті, виконує платіж і створює запит на поповнення. У запиті вказуються сума та дані, за якими адміністратор може знайти платіж.
Адміністратор перевіряє надходження та підтверджує або відхиляє запит. Баланс збільшується лише після ручного підтвердження.
Виплати партнеру
Партнер може створити запит на виплату суми, яка не перевищує його вільний баланс і підтверджений заробіток.
Для створення запиту партнер повинен заповнити:
- Отримувача
- ІПН / ЄДРПОУ
- IBAN
Кошти не переказуються автоматично. Адміністратор перевіряє заявку, виконує платіж вручну та встановлює статус:
- Очікує
- Виплачено
- Відхилено
У разі відхилення або видалення необробленої заявки зарезервована для виплати сума повертається партнеру.
Фінансовий журнал
Кожна фінансова операція записується в окремий журнал:
- Резервування коштів під замовлення
- Списання розрахункової суми
- Звільнення резерву
- Повернення вартості товару
- Списання прямої доставки
- Списання зворотної доставки
- Нарахування очікуваного заробітку
- Підтвердження комісійного заробітку
- Поповнення балансу
- Виплата коштів
- Ручне коригування адміністратором
Для операцій, пов’язаних із замовленням, відображається його номер і посилання на перегляд. У журналі видно зміну балансу, резерву, очікуваного заробітку, доступної до виплати суми та коментар.
Персональні XML(YML)-фіди
Кожен схвалений партнер може створювати персональні статичні товарні фіди. Максимальна кількість профілів задається адміністратором глобально або окремо для конкретного партнера.
Профіль фіда містить:
- Власну назву
- Мову
- Валюту
- Режим наявності товарів
- Категорії
- Виробників
- Додаткову націнку
- Персональні правила націнки
- Набір полів XML(YML)
Партнер може експортувати:
- Усі товари
- Тільки товари в наявності
- Тільки товари не в наявності
Адміністратор може обмежити категорії та виробників, які дозволено використовувати у партнерських фідах.
Поля XML(YML)-фіда
Партнер самостійно вибирає дані, які потрібно передати:
- Назва товару
- Категорія
- Опис
- Ціна
- Залишок
- Посилання на товар
- Основне та додаткові зображення
- Виробник
- Модель
- Артикул
- Характеристики
- Вага
- Габарити
- GTIN
- MPN
Ідентифікатор offer та ознака наявності формуються завжди. Поле, яке використовується як offer id, вибирається адміністратором у налаштуваннях модуля.
Повний набір полів підходить для первинного імпорту товарів. Скорочений фід, наприклад із ціною та залишком, можна використовувати для швидкого оновлення вже імпортованого каталогу.
Мова та валюта фіда
Для кожного профілю партнер вибирає одну з активних мов магазину. У фід потрапляють назви товарів, описи, категорії та характеристики, заповнені саме для вибраної мови.
Модуль не перекладає контент автоматично. Якщо дані потрібною мовою не заповнені в каталозі, вони не можуть бути автоматично створені у фіді.
Ціни перераховуються в одну з активних валют магазину. Код вибраної валюти передається у currencyId.
Категорії Prom.ua
Для кожної категорії магазину можна вказати числовий ID категорії порталу Prom.ua. Якщо значення заповнене, модуль передає його у тег portal_category_id.
Це дозволяє зіставити власну структуру каталогу з категоріями маркетплейсу без зміни категорій у магазині.
Націнки у фіді
Додаткова націнка фіда застосовується після мінімальної ціни адміністратора.
Приклад:
- Закупівельна ціна — 1000
- Мінімальна націнка адміністратора — 5%
- Розрахункова ціна — 1050
- Власна націнка фіда — 20%
- Ціна у фіді — 1260
Націнку профілю можна перевизначити для конкретного товару, категорії або виробника. Пріоритет персональних правил фіда: товар, категорія, виробник, загальна націнка профілю.
Статичні файли та CRON
Фіди формуються як статичні XML-файли. Звернення сторонньої системи до URL фіда не запускає важкі SQL-запити й не перебудовує каталог у реальному часі.
- Партнер може вручну поставити свій фід у чергу оновлення
- Посилання фіда залишається незмінним після повторної генерації
- Зміна товару, ціни або залишку ставить пов’язані фіди в чергу без видалення старого файла
- Поки нова версія формується, попередній успішний файл і його URL залишаються доступними
- Фіди обробляються пакетами
- Один виклик CRON використовує доступний час PHP та залишає запас до серверного ліміту
- Після вичерпання часу наступний виклик продовжує роботу з останнього товару
Сповіщення
Партнер може вибрати канал отримання сповіщень:
- Telegram
- Усі канали
Доступні типи подій:
- Зміна статусу замовлення
- Успішне формування фіда
- Помилка формування фіда
- Зміна статусу виплати
- Коригування балансу
- Зміна статусу запиту на поповнення
Повідомлення про виплати та поповнення містять суму операції, новий статус і коментар адміністратора.
Для Telegram адміністратор вказує токен бота, а партнер — власний Chat ID. Для пошти можна налаштувати окремий транспорт Mail або SMTP незалежно від основних поштових налаштувань магазину.
Адміністративна частина
Після встановлення в лівому меню адміністративної частини з’являється окремий розділ кабінету дропшипера.
Адміністратору доступні:
- Загальні налаштування
- Список партнерів
- Додавання та редагування партнерів
- Замовлення дропшиперів
- Запити на виплату
- Запити на поповнення
- Фінансові журнали
- Список і черга фідів
- Налаштування доставки та оплати
- Налаштування статусів замовлень
- Налаштування Telegram і пошти
- Повна вбудована довідка
Інформер у шапці адміністративної частини показує:
- Нові заявки партнерів
- Нові дропшипінг-замовлення
- Запити на поповнення
- Запити на виплату
- Фіди з помилками
На стандартній сторінці замовлення OpenCart відображається окрема мітка з посиланням на дропшипінг-замовлення та його фінансовим станом.
Сторінки кабінету дропшипера
Демонстраційний кабінет містить такі сторінки:
- Кабінет дропшипера — головна сторінка з фінансовими показниками та швидкими посиланнями
- Дані партнера — магазин, контакти та банківські реквізити партнера
- Замовлення дропшипера — список створених партнером замовлень
- Нове замовлення — окрема форма створення замовлення для одержувача
- Персональні фіди — список профілів, статуси формування та статичні URL
- Новий профіль фіда — створення персонального XML(YML)-фіда
- Фінанси та виплати — баланс, поповнення, виплати та фінансовий журнал
- Сповіщення — налаштування Telegram, e-mail і типів подій
Для перегляду робочих сторінок потрібно авторизуватися під обліковим записом схваленого партнера.
Захист і розділення даних
- Усі замовлення, фінанси, фіди та сповіщення прив’язані до внутрішнього partner_id
- Партнер не може переглядати дані іншого партнера
- Видалення партнера не передає його старі замовлення новому обліковому запису
- Фінансові операції виконуються через окремий журнал проводок
- Повторна обробка статусу не дублює списання або нарахування
- CRON захищений секретним ключем
- Доступ до адміністративних сторінок контролюється штатними правами access і modify
Продуктивність
- Статичні XML-файли замість генерації під час кожного звернення
- Пакетна обробка товарів у черзі
- Продовження генерації з останнього обробленого товару
- Використання обмеження часу PHP із резервом до завершення процесу
- Вибірка тільки необхідних для конкретного фіда полів
- Окремі індекси таблиць для партнерів, замовлень, фінансів і черги фідів
- Збереження попереднього робочого файла до успішного завершення нової генерації
- Підтримка каталогів із десятками тисяч товарів
Відкритий код і незалежність
Код модуля не закодований і не обфускований. PHP-, Twig-, JavaScript- та XML-файли доступні для перегляду й редагування.
Модуль не використовує сервер ліцензій, приховану телеметрію або віддалені бібліотеки. Основні розрахунки, замовлення, фінансовий облік і формування фідів виконуються безпосередньо на сайті.
Зовнішні з’єднання виконуються лише для явно налаштованих адміністратором каналів: Telegram-бота, SMTP та отримання статичного файла сторонньою системою імпорту.
Системні вимоги
- OpenCart 3.0.3.x
- PHP 7.4–8.5
- MySQL або MariaDB
- Налаштована базова валюта магазину
- Заповнені закупівельні ціни product.cost
- Можливість запису статичних XML-файлів
- Можливість налаштувати регулярний CRON
- Для Telegram-сповіщень — токен Telegram-бота
- Для поштових сповіщень — налаштований Mail або SMTP
Встановлення
- Виконайте чисте встановлення основного архіву через Extensions / Installer
- Перейдіть у Extensions / Modifications та оновіть кеш модифікаторів
- Перейдіть у Extensions / Extensions
- Виберіть тип розширень Modules
- Знайдіть Dropship Partner Cabinet та натисніть Install
- Відкрийте налаштування та увімкніть модуль
- Оберіть групу покупців для партнерів
- Налаштуйте мінімальні націнки
- Налаштуйте статуси замовлень
- Створіть способи доставки та оплати
- Заповніть реквізити магазину
- Налаштуйте Telegram та поштовий транспорт
- Додайте URL CRON до планувальника
- За потреби встановіть модуль «Навігація кабінету дропшипера» у потрібну позицію макета
Видалення модуля
Вимкнення статусу модуля не видаляє партнерів, замовлення, фінансову історію або файли фідів.
Повне видалення розширення видаляє власні таблиці, події та створені статичні файли фідів. Перед видаленням партнери повертаються до початкових груп покупців.
Стовпець product.cost не видаляється, оскільки він може використовуватися іншими модулями закупівельної ціни.
Перед видаленням модуля з робочого магазину рекомендується створити резервну копію бази даних.
Важливі примітки
Модуль не здійснює автоматичні банківські перекази та не підключається до платіжної системи. Поповнення й виплати перевіряються та підтверджуються адміністратором вручну.
Для коректного фінансового обліку не змінюйте вручну дані власних таблиць модуля. Баланс, резерв, доставка та комісійний заробіток повинні змінюватися через передбачені сторінки й статуси.
Товари без заповненої закупівельної ціни не можуть брати участь у партнерських розрахунках. Перед запуском партнерської програми потрібно заповнити product.cost для доступного каталогу.
Для автоматичного оновлення фідів і обробки відкладених сповіщень необхідно налаштувати регулярний CRON. Частота запуску залежить від активності каталогу та кількості партнерських фідів.
Сумісність із шаблонами
Клієнтські сторінки модуля адаптовані для стандартної теми OpenCart. Сторонні шаблони можуть використовувати іншу HTML-структуру, CSS-класи, сітку та оформлення форм, тому для коректного відображення сторінок партнерського кабінету потрібна окрема адаптація під використовуваний шаблон.
Адаптація під сторонні шаблони не входить до базового комплекту модуля та виконується окремо для конкретної теми магазину.
Ліцензія
Ліцензія поширюється на один домен і його піддомени.
ocStore 3.x
Англійська
Російська
Англійська
Російська
OCTemplates Deals
CyberStore
PHP 8.0-8.3
Немає відгуків про цей товар, станьте першим, залиште свій відгук.