VibeFox Bob Go for OpenCart — Помощь
Требования
OpenCart: 3.0.x (проверено на 3.0.5.0) или 4.0.2 и новее (проверено на 4.1.0.3).
PHP: 8.0 или новее.
Аккаунт Bob Go (только для тарифов в реальном времени): Bob Go не использует API-ключи. Вам нужен аккаунт Bob Go (bobgo.co.za), ваш магазин, установленный в вашем аккаунте Bob Go как канал продаж WooCommerce (Sales channels), и включённый для этого канала «Rates at checkout». Услуги, цены и правила настраиваются на стороне Bob Go. Если вы используете только фиксированные цены, аккаунт Bob Go не нужен.
Лицензионный ключ VibeFox: покупается на vibefox.net. Один ключ работает на одном домене.
Установка
Загрузка представляет собой один zip-файл с пакетами для обеих версий OpenCart. Распакуйте его на своём компьютере. Он содержит README.txt, пакет для OpenCart 3 vfd_bob_go-oc3-(version).ocmod.zip и пакет для OpenCart 4 vfd_bob_go.ocmod.zip. Устанавливайте только пакет для вашей версии OpenCart. Лицензионный ключ одинаков для обеих версий.
OpenCart 3
1. В админке перейдите в Extensions > Installer, нажмите Upload и выберите файл vfd_bob_go-oc3-(version).ocmod.zip. Расширение не добавляет модификаций OCMOD, поэтому обновлять Extensions > Modifications не нужно. Вместо установщика можно скопировать содержимое папки upload из пакета в корневую папку вашего магазина.
2. Перейдите в Extensions > Extensions и выберите тип расширения Shipping. Найдите VibeFox Bob Go и нажмите Install (зелёная кнопка +).
3. Нажмите Edit (кнопка с карандашом), чтобы открыть страницу настроек.
4. Введите лицензионный ключ VibeFox в поле License key в блоке лицензии в верхней части страницы Edit и нажмите Activate (см. Лицензионный ключ).
5. В аккаунте Bob Go установите ваш магазин как канал продаж. Включите «Rates at checkout» для этого канала и настройте услуги и цены.
6. На странице Edit проверьте домен магазина, адрес отправления (откуда отправляете) и, если валюта магазина не ZAR, курс пересчёта в ZAR (см. Настройка). Включите Enable Bob Go и нажмите Save.
OpenCart 4
1. В админке перейдите в Extensions > Installer, нажмите Upload и выберите файл vfd_bob_go.ocmod.zip. Не переименовывайте файл: OpenCart 4 берёт код расширения из имени файла, и переименованный пакет не работает.
2. Пакет появляется в списке установленных расширений на той же странице. Нажмите рядом с ним Install (зелёная кнопка +).
3. Перейдите в Extensions > Extensions и выберите тип Shipping. Найдите VibeFox Bob Go, нажмите Install (зелёная кнопка +), затем Edit (кнопка с карандашом).
4. Настройте Bob Go, введите лицензионный ключ и настройки так же, как в шагах 4–6 для OpenCart 3. Страница настроек и её поля одинаковы в обеих версиях.
После установки способ выключен, пока вы не включите Enable Bob Go и не сохраните настройки. По умолчанию используются тарифы Bob Go в реальном времени. Если вы установите расширение повторно после удаления, сохранённые настройки Bob Go снова будут использованы.
Настройка
Все настройки находятся на странице расширения: Extensions > Extensions > Shipping > VibeFox Bob Go > Edit. Разделы перечислены слева. Одна кнопка Save сохраняет всю страницу без перезагрузки. Каждое сохранение также очищает кэш тарифов Bob Go. Числа принимают точку или запятую в качестве десятичного разделителя. Если значение неверно, ничего не сохраняется, и страница показывает причину: пустое поле Method title или заголовок длиннее 64 символов, значение, которое не является числом ("…" must be a number.), отрицательная сумма или вес ("…" must be a number of 0 or more.), ZAR conversion rate меньше или равен 0, Minimum weight (kg) больше Maximum weight (kg), либо неизвестный налоговый класс или географическая зона. Сохранять настройки могут только администраторы с правом изменения этого расширения.
Над настройками страница предупреждает, когда тарифы в реальном времени не могут работать: Live rates are not requested: your store currency is … — set the "ZAR conversion rate"., когда в вашем магазине нет зон (провинций) для Южной Африки, или когда в магазине нет класса веса с единицей «kg» или класса длины с единицей «cm». В последнем случае вес и габариты переводятся по названию единицы их класса (kg, g, lb, oz; cm, mm, m, in), а остальные единицы читаются как kg или cm.
Общие
Настройки действуют для каждой географической зоны. При оформлении заказа каждая услуга Bob Go является отдельным вариантом доставки под названием способа.
Enable Bob Go: показывает или скрывает Bob Go при оформлении заказа. По умолчанию: выключено.
Method title: название способа доставки, которое видит покупатель. Услуги Bob Go, например «The Courier Guy - Economy», перечисляются под ним с названиями из Bob Go. По умолчанию: Bob Go. Обязательное поле, не более 64 символов.
Shipping cost: способ расчёта цены.
Причина отсутствия тарифов в реальном времени записывается в журнал. Покупателю она никогда не показывается.
Sort order: позиция Bob Go среди способов доставки при оформлении заказа. Целое число.
Аккаунт Bob Go
Этот раздел объясняет, что нужно сделать в Bob Go, со ссылками на ваш аккаунт Bob Go, Sales channels и Rates at checkout. Он также показывает последний ответ Bob Go для домена вашего магазина: connected, the WooCommerce channel is not installed on Bob Go (HTTP 404), "Rates at checkout" is not enabled for this channel (HTTP 401 или 403), или request failed с кодом ошибки, либо no connection.
Store domain: Bob Go определяет ваш магазин по домену. Оставьте поле пустым, чтобы использовать домен вашего магазина, который показан в описании поля. Указывайте другой домен, только если ваш канал в Bob Go установлен по другому адресу, например example.co.za/shop для магазина в подпапке. Схема и завершающий слэш удаляются.
ZAR conversion rate: Bob Go рассчитывает тарифы в южноафриканских рэндах (ZAR). Если основная валюта вашего магазина не ZAR, укажите, сколько ZAR стоит 1 единица вашей валюты, например 0.05. Тарифы пересчитываются по этому курсу, а цены товаров передаются в Bob Go в ZAR. Оставьте поле пустым, если не хотите использовать тарифы Bob Go в вашей валюте (фиксированные цены продолжат работать). Курс должен быть больше 0. Если валюта вашего магазина — ZAR, оставьте поле пустым.
Delivery dates: показывает расчётный диапазон дат доставки из Bob Go рядом с каждой услугой при оформлении заказа. Оценка всегда сохраняется с заказом и видна на странице заказа.
Отправка из (адрес отправления)
Адрес отправления передаётся в Bob Go с каждым запросом тарифов. Адрес магазина в OpenCart — это свободный текст, поэтому используются только страна и регион вашего магазина (System > Settings > Store > Local): если страна магазина является страной отправления, пустая провинция берётся из региона магазина. Укажите здесь город, почтовый индекс и улицу.
Origin country: страна, из которой вы отправляете. По умолчанию: South Africa. Bob Go доставляет только внутри Южной Африки.
Origin province: южноафриканская провинция или Store region (if in South Africa).
Origin city / suburb: город или пригород, из которого вы отправляете, например Johannesburg.
Origin postal code: почтовый индекс, из которого вы отправляете, например 2001.
Origin street address: адрес улицы, с которой вы отправляете, например 123 Main Street.
Фиксированные цены (используются, когда Shipping cost установлен в Fixed prices (below), а также как запасной вариант, когда Bob Go не возвращает тарифов)
Price per country: одна строка на страну: двухбуквенный код страны, знак равенства и цена в основной валюте вашего магазина без налога, например ZA=99.99. Используйте * для всех остальных стран, например *=199.99 на следующей строке. Строки в другом формате удаляются при сохранении, а страница перечисляет их в предупреждении.
Flat price: цена для стран, для которых нет строки выше. Оставьте поле пустым, чтобы скрыть способ для этих стран.
Fixed price applies: Per order (по умолчанию) взимает цену один раз. Per item (price × quantity) умножает её на количество товаров в корзине. Тарифы Bob Go в реальном времени всегда относятся ко всей отправке.
Условия
Minimum weight (kg): скрывает способ, если вес корзины меньше этого значения. 0 означает отсутствие ограничения (по умолчанию).
Maximum weight (kg): скрывает способ, если вес корзины больше этого значения. 0 означает отсутствие ограничения (по умолчанию).
Minimum order amount: показывает способ, только если промежуточный итог товаров, требующих доставки (после купона, без налога), достигает этой суммы. Оставьте поле пустым, чтобы показывать способ всегда.
Free shipping: включает бесплатную доставку, когда достигнута сумма заказа, указанная ниже.
Free shipping from: промежуточный итог товаров, требующих доставки (после купона, без налога), начиная с которого доставка бесплатна. Используется только когда включена опция Free shipping. В этом случае тарифы у Bob Go не запрашиваются.
Tax class: налоговый класс стоимости доставки или No tax (по умолчанию). Тарифы Bob Go обычно уже включают НДС. В этом случае оставьте No tax, чтобы налог на доставку не начислялся дважды.
Geo zone: предлагать Bob Go только для адресов в этой географической зоне. All zones (по умолчанию) означает отсутствие ограничений. Не используется, когда включена опция Ignore shipping zones. Географические зоны настраиваются в System > Localisation > Geo Zones.
Доступность без зон доставки
Ignore shipping zones: когда опция включена, географическая зона не проверяется, и способ предлагается для стран, указанных ниже.
Countries: страны назначения для этого режима. Оставьте поле пустым, чтобы разрешить все страны. Используется только когда включена опция Ignore shipping zones.
Дополнительно
Debug log: записывает расчёты тарифов и запросы к Bob Go в файл storage/logs/vfd_bobg_debug.log.php. Файл нельзя прочитать через веб. Адреса покупателей не записываются. Ошибки Bob Go записываются даже тогда, когда опция выключена. Выключите журнал, когда закончите. Когда файл достигает 5 МБ, он переносится в vfd_bobg_debug.old.log.php, и начинается новый журнал.
Log: показывает размер и последние записи журнала. Нажмите Clear log, чтобы очистить его.
Remove data on uninstall: когда опция включена, удаление расширения стирает настройки Bob Go, кэш тарифов и журналы. Услуга Bob Go, сохранённая с заказами, остаётся. Когда опция выключена (по умолчанию), всё сохраняется для повторной установки.
Импорт / экспорт
Export: нажмите Download JSON, чтобы сохранить настройки в файл JSON.
Import: вставьте ранее экспортированный JSON и нажмите Import, чтобы восстановить настройки, например в другом магазине. Значения проверяются так же, как при обычном сохранении.
Как это работает при оформлении заказа
Когда OpenCart показывает способы доставки, он запрашивает у расширения тарифы Bob Go. Если задана Geo zone (и Ignore shipping zones выключено) и адрес находится вне её, Bob Go не предлагается. Учитываются только товары с Requires Shipping, установленным в Yes: другие товары не добавляют вес и не входят в сумму заказа. Затем расширение проверяет страну назначения (при Ignore shipping zones), вес корзины и Minimum order amount. Сумма заказа — это цена товаров, требующих доставки, после скидки по купону и без налога. Подарочные сертификаты, бонусные баллы и кредит магазина не учитываются. Если применяется бесплатная доставка, покупатель видит Bob Go (free) (ваш Method title), и запрос в Bob Go не отправляется.
В режимах тарифов в реальном времени расширение отправляет в Bob Go домен вашего магазина, адреса отправления и доставки (с провинцией) и товары корзины: цены товаров в ZAR, веса и габариты, а также модель товара как SKU. Для южноафриканских адресов зона OpenCart передаётся как код провинции (EC, FS, GP, KZN, LP, MP, NC, NW, WC). Тарифы в реальном времени запрашиваются только после того, как покупатель ввёл город или почтовый индекс. Тарифы в ZAR пересчитываются по ZAR conversion rate, если валюта вашего магазина не ZAR. Цена рассчитывается в основной валюте, округляется до её знаков после запятой и показывается покупателю в его валюте с налогом выбранного Tax class.
Под заголовком способа покупатель видит один вариант на каждую услугу Bob Go, с её названием, ценой и, если включена опция Delivery dates, расчётными сроками доставки в скобках. Покупатель выбирает услугу, как любой другой вариант доставки в OpenCart. При фиксированной цене есть один вариант с заголовком способа.
В OpenCart 4 покупатель нажимает Choose в блоке способа доставки на странице оформления заказа и выбирает услугу Bob Go в окне Shipping method options, например SkyNet - Overnight (by 17/10/2026) с ценой. Способ работает так же, как в OpenCart 3.
Тарифы кэшируются на 1 час для каждого полного запроса, поэтому та же корзина не вызывает новый запрос. Неудачный запрос кэшируется на 5 минут, а тайм-аут составляет 12 секунд, чтобы сбой Bob Go не замедлял каждое обновление оформления заказа. Неудачный запрос никогда не прерывает оформление заказа: способ скрывается или, в режиме запасного варианта, используется фиксированная цена. Причина записывается в журнал.
Расширение только показывает тарифы. Оно не создаёт отправления, накладные или этикетки, не отслеживает посылки, не синхронизирует заказы с Bob Go и не отправляет уведомления. Для выполнения заказов используйте панель Bob Go. Выбора пункта выдачи или постамата нет. Bob Go доставляет только внутри Южной Африки.
Заказы
Название выбранной услуги становится способом доставки заказа, поэтому оно появляется в письмах о заказе, в разделе Sales > Orders и в аккаунте покупателя. При оформлении заказа услуга Bob Go, её код и оценка доставки также сохраняются с заказом. Последующие изменения корзины или цен Bob Go их не меняют. В OpenCart 4 оформление заказа сохраняет один заказ: если покупатель вернётся назад и подтвердит заказ снова с другой услугой Bob Go, сохранённая услуга обновится, а при другом способе доставки или фиксированной цене будет удалена.
В админке на странице заказа в разделе Sales > Orders показан блок Bob Go с Bob Go service (название и код) и Estimated delivery. Покупатель видит Bob Go service и Estimated delivery на странице сведений о заказе в своём аккаунте. У заказов с фиксированной ценой или бесплатной доставкой нет услуги Bob Go.
Лицензионный ключ
Расширение работает с лицензионным ключом VibeFox с vibefox.net. Блок лицензии License — VibeFox Bob Go — это первый блок на странице Extensions > Extensions > Shipping > VibeFox Bob Go > Edit, над настройками. Введите ключ в поле License key и нажмите Activate. После этого блок показывает ключ в маскированном виде, статус (например, дату, до которой лицензия действует, и ваш домен) и кнопки Check now для повторной проверки статуса, Change key для ввода другого ключа и Remove key для удаления ключа из этого магазина. Ниже находятся строка Product: opencart-shipping-bob-go и ссылка Manage licenses and domains in your account, которая открывает ваш аккаунт на vibefox.net. Изменить ключ могут только администраторы с правом Modify для расширения. Тексты блока следуют языку админки (включены английский и русский).
Если ключ не принят, блок сообщает причину, например Key not found, This key belongs to another product, Domain limit reached или License expired on с датой. После смены адреса магазина или после освобождения слота домена в вашем аккаунте нажмите Check now. Если сервер лицензий недоступен, расширение продолжает работать по последнему известному статусу.
Один ключ работает на одном домене: адрес магазина из настроек OpenCart. Удаление ключа из магазина не освобождает слот домена. Освободите слот в своём аккаунте на vibefox.net.
Без действующего ключа Bob Go не показывается покупателям при оформлении заказа, и тарифы не рассчитываются. Администратор, вошедший в админку в том же браузере, всё равно видит способ в магазине с пометкой (unlicensed — visible to admins only), так что вы можете настроить и проверить расширение до покупки ключа. В OpenCart 4 этот предпросмотр недоступен: магазин не видит вход администратора, поэтому без действующего ключа способ скрыт для всех. После первого открытия страницы Edit на Dashboard админки появляется напоминание. Закройте его кнопкой ×, чтобы скрыть на 7 дней. Существующие заказы не затрагиваются.
Когда лицензия истекает, расширение продолжает работать, но для обновлений и поддержки нужно продление. Статус проверяется снова автоматически при открытии Dashboard или страницы Edit в админке: раз в день в первые 14 дней после ввода ключа, затем раз в неделю. Задание cron не нужно. Удаление расширения всегда удаляет лицензионный ключ и статус лицензии.
Устранение неполадок
Bob Go не появляется при оформлении заказа: проверьте, что лицензия активна и Enable Bob Go включено. Проверьте Geo zone или включите Ignore shipping zones и проверьте Countries. Проверьте ограничения по весу и Minimum order amount. В режиме фиксированных цен проверьте, что для страны, * или Flat price задана цена. Проверьте, что у товаров Requires Shipping установлено в Yes.
Тарифы Bob Go не показываются: откройте страницу расширения. Раздел Аккаунт Bob Go показывает последний ответ Bob Go. «The WooCommerce channel is not installed on Bob Go» (HTTP 404) означает, что домен магазина не является каналом продаж в Bob Go: проверьте Store domain. «Rates at checkout is not enabled» (HTTP 401) означает, что функция выключена для канала. Также убедитесь, что покупатель ввёл город или почтовый индекс, а для магазинов не в ZAR задан ZAR conversion rate. Включите Debug log, перезагрузите оформление заказа и посмотрите поле Log. При Bob Go live rates, fixed prices if Bob Go returns no rates покупатели получают фиксированную цену, пока вы устраняете проблему.
Мой магазин не использует рэнды: Bob Go рассчитывает тарифы в ZAR. Укажите, сколько ZAR стоит 1 единица валюты вашего магазина. Без этого значения расширение не запрашивает тарифы у Bob Go. Фиксированные цены продолжают работать.
Страница предупреждает, что у Южной Африки нет зон: добавьте провинции Южной Африки в System > Localisation > Zones, иначе Bob Go не получит провинцию для южноафриканских адресов.
Налог на доставку начисляется дважды: тарифы Bob Go обычно включают НДС. Установите Tax class в No tax.
Тарифы выглядят устаревшими после изменения: нажмите Save на странице расширения. Это очистит кэш тарифов Bob Go. Изменения в аккаунте Bob Go подхватываются после 1-часового кэша или при сохранении настроек.
Страница пишет «Warning: You do not have permission to modify VibeFox Bob Go!»: ваша группа администраторов, возможно, может только просматривать настройки. Дайте группе право изменения для extension/shipping/vfd_bob_go (OpenCart 3) или extension/vfd_bob_go/shipping/vfd_bob_go (OpenCart 4) в System > Users > User Groups.
Для разработчиков: адрес API Bob Go можно заменить настройкой vfd_bobg_api_url (для тестов); на странице настроек для неё нет поля.
Удаление
Перейдите в Extensions > Extensions, выберите тип Shipping и нажмите Uninstall (красная кнопка −) рядом с VibeFox Bob Go. Лицензионный ключ и статус лицензии этого расширения всегда удаляются. OpenCart всегда сбрасывает Enable Bob Go, Sort order, Tax class и Geo zone. Кэш тарифов всегда удаляется. Если Remove data on uninstall включено, настройки Bob Go и журнал также удаляются. Если выключено, остальные настройки сохраняются и снова используются при повторной установке расширения. Услуга Bob Go, сохранённая с заказами, всегда остаётся, а существующие заказы сохраняют свой способ доставки и стоимость.
В OpenCart 4, чтобы удалить также файлы расширения, после удаления перейдите в Extensions > Installer, нажмите Uninstall (оранжевая кнопка −) рядом с VibeFox Bob Go в списке установленных расширений, затем Delete (красная кнопка с корзиной), чтобы удалить загруженный пакет.
Bob Go — товарный знак его правообладателя. Это расширение не связано с Bob Go и не одобрено Bob Go.
