VibeFox Packeta for PrestaShop — Допомога
Вимоги
PrestaShop: 8.0–9.x.
PHP: 8.0 або новіша версія. Модуль не встановлюється на старіших версіях PHP.
API-ключ Packeta: знайти його можна в клієнтському розділі Packeta (client.packeta.com) у розділі Client support. Він містить 16 літер і цифр. Віджету він потрібен, щоб відкритися на оформленні замовлення, тож перевізник показується покупцям лише після введення API-ключа.
Країни: Чехія, Словаччина, Угорщина або Румунія мають бути активними країнами вашого магазину, у зоні, з якою пов'язаний перевізник.
Ліцензійний ключ VibeFox: купується на vibefox.net. Один ключ працює на одному домені.
Встановлення
1. В адмін-панелі перейдіть до Modules > Module Manager і натисніть Upload a module. Оберіть ZIP-файл модуля.
2. Після завершення завантаження натисніть Configure або пізніше знайдіть VibeFox Packeta у списку модулів і натисніть Configure.
3. Введіть ліцензійний ключ VibeFox у поле License key у блоці ліцензії вгорі сторінки налаштувань і натисніть Activate (див. Ліцензійний ключ).
4. Введіть API key Packeta та свої ціни: принаймні один рядок у Country prices (наприклад * Default) або Fallback cost. Натисніть Save. На сторінці буде показано, чи прийняв Packeta ключ.
Під час встановлення модуль створює перевізника Packeta pickup point з текстом строку доставки Packeta pickup point or Z-BOX. Він пов'язаний із зонами Чехії, Словаччини, Угорщини та Румунії і з усіма групами клієнтів. Зони, групи клієнтів, строк доставки та логотип можна змінити в розділі Shipping > Carriers. Не встановлюйте там ціни: ціна завжди береться з модуля.
Налаштування
Усі налаштування розміщені на сторінці модуля: Modules > Module Manager > VibeFox Packeta > Configure. Кожен розділ має власну кнопку Save, яка зберігає всю сторінку.
Перевізник пропонується лише для країн власної мережі пунктів видачі Packeta: CZ, SK, HU та RO. Над налаштуваннями сторінка показує результат перевірки API-ключа та попередження про проблеми: немає API-ключа, немає ціни, обрано країни поза мережею Packeta, відсутній перевізник або одиниця ваги магазину, яку модуль не розпізнає.
Усі ціни та обмеження приймають кому або крапку як десятковий роздільник (4,99 або 4.99). Некоректне чи від'ємне число відхиляється з повідомленням, і зберігається попереднє значення.
Загальні
Enable/Disable: вмикає або вимикає Packeta на оформленні замовлення.
Name: назва перевізника, яку бачить покупець. Це також назва перевізника в Shipping > Carriers. За замовчуванням: Packeta pickup point. Обов'язкове поле, не більше 64 символів.
API key: ваш API-ключ Packeta з розділу client.packeta.com > Client support. Можна також вставити 32-символьний API-пароль: зберігаються лише його перші 16 символів, тобто API-ключ. API-ключ є публічним: він надсилається у браузер покупця, щоб відкрити віджет. Під час збереження нового ключа його перевіряють за стрічкою перевізників Packeta, і сторінка показує Packeta API key verified або повідомляє, що Packeta відхилила ключ. Якщо перевірку не вдалося виконати, ключ зберігається і буде перевірений знову під час наступного збереження.
Widget language: мова віджета вибору пункту видачі. Store / visitor language (за замовчуванням) дотримується мови сторінки. Можна також зафіксувати чеську, словацьку, угорську, румунську, англійську, німецьку, польську або українську.
Pickup point types: які пункти Packeta пропонує віджет.
Tax status: податкові правила, що застосовуються до вартості доставки. None (no tax on shipping) або Taxable з однією з ваших груп податкових правил. Вибір зберігається в перевізнику.
Ціни
У Packeta немає публічного API тарифів. Ціни беруться з цієї таблиці та вводяться в основній валюті вашого магазину без податків. Покупці, які платять в іншій валюті, бачать ціну, перераховану за курсом.
Calculation type: Per order стягує ціну один раз. Per item (price x quantity) множить її на кількість фізичних товарів у кошику.
Country prices: ціна для кожної країни призначення та ваги посилки. Натисніть Add country, щоб додати рядок, і хрестик, щоб видалити рядок. Кожен рядок має Price і колонки ваги: XS до 1 кг, S 1–2 кг, M 2–3 кг, L 3–5 кг і XL понад 5 кг. Колонка ваги, залишена на 0, використовує колонку Price. Рядок * Default застосовується до країн, які не мають власного рядка. Новий рядок створюється як * Default з усіма цінами 0, що означає безкоштовну доставку. Перед збереженням оберіть країну та введіть ціни або видаліть рядок. Якщо та сама країна (або * Default) є у двох рядках, під час збереження лишається лише перший. Якщо значення в таблиці не є коректним числом, таблиця не зберігається, і сторінка показує неправильні значення.
Fallback cost: використовується, коли в таблиці країн немає рядка для країни призначення і немає рядка * Default. Залиште поле порожнім, щоб не пропонувати там перевізника.
Free shipping from: сума кошика (після знижок, без податків), починаючи з якої доставка Packeta безкоштовна. Вона перевіряється раніше за таблицю цін: від цієї суми доставка безкоштовна в кожній країні Packeta, де пропонується перевізник, навіть якщо в ній немає рядка чи запасної вартості. Залиште поле порожнім, щоб ніколи не пропонувати безкоштовну доставку.
Доступність
Minimum weight (kg): приховує перевізника, якщо кошик важить менше. Вага кошика перераховується з одиниці ваги вашого магазину. Порожнє поле або 0 означає відсутність обмеження.
Maximum weight (kg): приховує перевізника, якщо кошик важить більше. За замовчуванням: 15. Пункти видачі та Z-BOX Packeta зазвичай приймають посилки до 15 кг; уточніть це у своєму договорі з Packeta. Порожнє поле або 0 означає відсутність обмеження. Мінімальна вага більша за максимальну відхиляється під час збереження, і зберігаються обидва попередні значення.
Minimum cart subtotal: пропонувати перевізника лише тоді, коли сума кошика (після знижок, без податків) досягає цієї суми.
Ignore shipping zones: якщо увімкнено, перевізник прив'язується до всіх зон і пропонується для країн, обраних нижче. Зони, створені пізніше, прив'язуються одразу. Коли це вимкнути, перевізник повертає зони, які мав раніше. Коли вимкнено, перевізник пропонується лише в зонах, заданих для нього в Shipping > Carriers.
Countries (ignore zones mode): країни призначення для цього режиму. Залиште порожнім, щоб використовувати всі країни Packeta. Країни поза мережею пунктів видачі Packeta пропускаються. Щоб вибрати кілька, тримайте Ctrl і клацайте. Це поле використовується лише тоді, коли ввімкнено Ignore shipping zones.
Додатково
Debug log: записує розрахунки тарифів і вибір пунктів видачі в modules/vfd_packeta/logs/. Файл не можна відкрити через веб. Персональні дані клієнтів і API-ключ не записуються. Помилки та невдалі перевірки API-ключа завжди записуються. Вимкніть журнал, коли закінчите.
Log (last lines): показує останні записи журналу налагодження. Натисніть Clear log, щоб очистити його.
Remove data on uninstall: якщо увімкнено, під час видалення модуля видаляються налаштування та журнал. Пункт видачі, збережений у замовленнях, завжди зберігається.
Як це працює на оформленні замовлення
На етапі доставки PrestaShop запитує в модуля ціну Packeta. Враховуються лише фізичні товари: віртуальні товари не додають ваги і не входять до суми кошика. Модуль перевіряє умови: країна доставки входить до мережі Packeta, наявність API-ключа, список країн у режимі ігнорування зон, вага кошика та мінімальна сума кошика. Якщо застосовується безкоштовна доставка, ціна дорівнює 0. Інакше ціна береться з таблиці країн, а потім із запасної вартості. Якщо ціни немає, перевізник приховується.
Коли покупець обирає перевізника Packeta, під ним з'являється кнопка Choose pickup point. Вона відкриває в браузері покупця офіційний віджет Packeta з країною призначення, вагою кошика, обраними типами пунктів і мовою віджета. Після того як покупець обере пункт, його назва та адреса показуються під перевізником, а кнопка змінюється на Change pickup point. Пункт зберігається разом із кошиком і не скидається після перезавантаження сторінки. Пункт, обраний для іншої країни, скидається під час зміни адреси доставки.
Ваш сервер під час оформлення замовлення нічого не запитує в Packeta. Скрипт віджета завантажується з widget.packeta.com. Якщо його заблоковано (блокувальником реклами чи приватності, політикою безпеки вмісту або через збій Packeta), покупець бачить повідомлення: «The Packeta pickup point widget could not be loaded. Please reload the page or choose another shipping method.»
Якщо ви змінюєте перевізника в Shipping > Carriers після того, як у нього з'явилися замовлення, PrestaShop зберігає його як нову версію перевізника. Модуль автоматично слідує за новою версією.
Ціни Packeta не запитуються в реальному часі — вони беруться з вашої таблиці. Модуль не створює відправлень Packeta, не друкує етикетки та не відстежує посилки, а також за замовчуванням не пропонує доставку додому та пункти видачі інших партнерських перевізників. Передайте ID пункту видачі із замовлення до Packeta звичним способом, наприклад імпортом у client.packeta.com.
Пункти видачі
Пункт видачі обов'язковий. Якщо покупець натискає Continue на етапі доставки, не обравши пункт, етап не завершується, і покупець бачить повідомлення: «Please choose a Packeta pickup point.» Якщо обраний пункт знаходиться в іншій країні, ніж адреса доставки, покупець бачить повідомлення: «The selected Packeta pickup point is not in your shipping country. Please choose a pickup point again.» Модуль не перевіряє ID пункту в Packeta — він лише перевіряє, що пункт обрано і що його країна збігається.
Пункт прив'язується до замовлення під час його створення:
Сторінка замовлення в адмін-панелі: блок Packeta pickup point з назвою, адресою, Pickup point ID і країною. Якщо в замовленні Packeta немає пункту, блок показує повідомлення: «No pickup point was selected for this order.»
Сторінки підтвердження та деталей замовлення: Packeta pickup point: з назвою та адресою.
Листи про замовлення: назва та адреса пункту додаються до перевізника в листі з підтвердженням замовлення. Лист продавцю про нове замовлення також містить Pickup point ID.
Пункт зберігається в таблиці модуля vfd_pckt_point (кошик, замовлення, ID пункту, назва і адреса, країна).
Ліцензійний ключ
Модуль працює з ліцензійним ключем VibeFox з vibefox.net. Блок ліцензії License — VibeFox Packeta є першим блоком на сторінці Modules > Module Manager > VibeFox Packeta > Configure, над налаштуваннями. Введіть ключ у поле License key і натисніть Activate. Після цього блок показує ключ у замаскованому вигляді, статус (наприклад, дату, до якої ліцензія активна, і ваш домен) та кнопки Check now для повторної перевірки статусу, Change key для введення іншого ключа і Remove key для видалення ключа з цього магазину. Нижче розташовані рядок Product: presta-shipping-packeta і посилання Manage licenses and domains in your account, яке відкриває ваш обліковий запис vibefox.net. Змінювати ключ можуть лише співробітники з правом Configure для модуля. Тексти блоку відповідають мові адмін-панелі (включено англійську та російську).
Якщо ключ не прийнято, блок пояснює причину, наприклад Key not found, This key belongs to another product, Domain limit reached або License expired on із датою. Після зміни адреси магазину або після звільнення слота домену у вашому обліковому записі натисніть Check now. Якщо сервер ліцензій недоступний, модуль продовжує працювати за останнім відомим статусом.
Один ключ працює на одному домені: домені основного магазину, також у конфігурації з кількома магазинами. Видалення ключа з магазину не звільняє його слот домену. Звільніть слот у своєму обліковому записі vibefox.net.
Без активного ключа перевізник Packeta не показується покупцям на оформленні замовлення, і вартість доставки не розраховується. Вітрина PrestaShop не знає, що ви увійшли в адмін-панель, тож перевізник приховується і для вас: модуль можна налаштувати до купівлі ключа, але не можна перевірити на оформленні замовлення. Нагадування з'являється в Modules > Module Manager на вкладці Alerts. Наявні замовлення не змінюються.
Коли термін дії ліцензії спливає, модуль продовжує працювати, але для оновлень і підтримки потрібне продовження. Статус автоматично перевіряється під час роботи в адмін-панелі: раз на день протягом перших 14 днів після введення ключа, далі раз на тиждень. Cron-завдання не потрібне. Видалення або скидання модуля завжди видаляє ліцензійний ключ і статус ліцензії.
Усунення несправностей
Packeta не відображається на оформленні замовлення: перевірте, що ліцензія активна, Enable/Disable увімкнено, API key введено і країна доставки — CZ, SK, HU або RO. Перевірте, що для країни встановлено ціну (рядок країни, рядок * Default або Fallback cost), обмеження ваги та суми кошика, а також що перевізник охоплює зону країни покупця та групу покупця в Shipping > Carriers (або увімкнено Ignore shipping zones). Товари також можуть бути обмежені певними перевізниками на сторінці товару. Сторінка налаштувань угорі показує проблеми конфігурації. Увімкніть Debug log, щоб побачити причину в Log (last lines).
Packeta відхилила API-ключ: скопіюйте API-ключ ще раз з client.packeta.com > Client support і збережіть. Доки цього не зроблено, віджет не може відкритися на оформленні замовлення.
Віджет не відкривається: скрипт Packeta заблоковано блокувальником реклами чи приватності, політикою безпеки вмісту або збоєм Packeta. Дозвольте widget.packeta.com у своїй політиці безпеки вмісту. Розробники можуть змінити URL скрипта за допомогою хука actionVfdPcktWidgetUrl.
Доставка безкоштовна помилково: перевірте в Country prices рядки з Price 0, особливо рядок * Default, доданий через Add country і не заповнений, а також перевірте Free shipping from.
Обмеження ваги або колонки ваги виглядають неправильно: якщо сторінка попереджає про одиницю ваги магазину, встановіть kg, g, lb або oz в International > Localization (Local units). Інші одиниці читаються як кілограми.
Інші країни або перевізники: за замовчуванням перевізник працює для CZ, SK, HU та RO. Розробники можуть додавати країни за допомогою хука actionVfdPcktCountries і передавати ID перевізників у віджет за допомогою хука actionVfdPcktWidgetOptions.
Сторінка повідомляє, що перевізника Packeta немає: перевізника видалено в Shipping > Carriers. Скиньте модуль у Modules > Module Manager, щоб створити його знову.
Видалення
Перейдіть до Modules > Module Manager, відкрийте меню поруч із VibeFox Packeta і виберіть Uninstall. Ліцензійний ключ і статус ліцензії завжди видаляються. Перевізник Packeta завжди видаляється (замовлення зберігають свого перевізника), разом із збереженим результатом перевірки API-ключа. Якщо Remove data on uninstall увімкнено, видаляються налаштування, журнал і пункти видачі кошиків, які так і не стали замовленнями. Якщо вимкнено, налаштування зберігаються для повторного встановлення, яке знову створює перевізника. Наявні замовлення завжди зберігають збережений пункт видачі.
Packeta є торговельною маркою її власника. Цей модуль не пов'язаний із Packeta і не схвалений нею.
