VibeFox Bob Go for PrestaShop — Help
Requirements
PrestaShop: 8.0 to 9.x.
PHP: 8.0 or later. The module refuses to install on older PHP versions.
Bob Go account (for live rates only): Bob Go has no API keys. You need a Bob Go account (bobgo.co.za), your shop installed as a WooCommerce sales channel in your Bob Go account (Sales channels) and "Rates at checkout" enabled for that channel. Services, prices and rules are configured on Bob Go. If you only use fixed prices, you do not need a Bob Go account.
VibeFox license key: bought on vibefox.net. One key works on one domain.
Installation
1. In the back office go to Modules > Module Manager and click Upload a module. Choose the module ZIP file.
2. When the upload finishes, click Configure, or find VibeFox Bob Go in the module list later and click Configure.
3. Paste your VibeFox license key into License key in the license block at the top of the Configure page and click Activate (see License key).
4. In your Bob Go account, install your shop as a sales channel. Enable "Rates at checkout" for that channel and set up your services and prices.
5. On the Configure page check the store domain, the origin (ship from) address and, if your shop currency is not ZAR, the ZAR conversion rate (see Configuration). If South African addresses in your shop have no province, click Add South African provinces. Click Save.
On install the module creates the Bob Go carrier with the delivery time text Courier delivery (South Africa). The carrier is active, assigned to all zones and all customer groups, and uses live Bob Go rates by default. You can change zones, customer groups, delivery time, logo and size limits in Shipping > Carriers. Do not set prices there: the price always comes from the module.
Configuration
All settings are on the module page: Modules > Module Manager > VibeFox Bob Go > Configure. They apply to every zone of the carrier. Each section has its own Save button, which saves the whole page. Every save also clears the cached Bob Go rates. Numbers accept a point or a comma as the decimal separator. If a value is wrong, the page shows an error and nothing is saved: a value that is not a number ("…" must be a number.), a negative amount or weight ("…" must be a number of 0 or more.), a ZAR conversion rate of 0 or less, a Minimum weight above the Maximum weight, or a Method title longer than 64 characters.
Above the form the page warns when live rates cannot work: Live rates are not requested: your store currency is … — set the "ZAR conversion rate"., when South African addresses have no province (see South African provinces below), or when the shop weight or dimension unit is not recognised and is treated as kg or cm. Set the units in International > Localization (Local units).
General
Enable Bob Go: switches the carrier on or off. This is the same switch as the carrier status in Shipping > Carriers.
Method title: the carrier name shown to the customer. The Bob Go services, for example "The Courier Guy - Economy", are listed under it at checkout with the names from Bob Go. Default: Bob Go. Required, at most 64 characters.
Shipping cost: how the price is calculated.
The reason for missing live rates is written to the log. It is never shown to the customer.
Bob Go account
This section explains what you need on Bob Go and shows the last response from Bob Go for your store domain: connected, the WooCommerce channel is not installed on Bob Go (HTTP 404), "Rates at checkout" is not enabled for this channel (HTTP 401), or request failed with the error code or no connection.
Store domain: Bob Go identifies your shop by its domain. Leave it empty to use your shop domain, which is shown as the placeholder. Enter another domain only if your channel on Bob Go is installed under a different address, for example example.co.za/shop for a shop in a subfolder. The scheme and a trailing slash are removed.
ZAR conversion rate: Bob Go quotes in South African rand (ZAR). If your shop default currency is not ZAR, enter how much 1 ZAR is in your currency, for example 0.05. Rates are converted with it and product prices are sent to Bob Go in ZAR. Leave it empty to not use live Bob Go rates in your currency (fixed prices still work). The rate must be greater than 0. If your shop currency is ZAR, leave it empty.
Delivery dates: shows the estimated delivery date range from Bob Go next to each service at checkout. The estimate is always saved with the order and visible on the order page.
Ship from (origin address)
The origin address is sent to Bob Go with every rate request. If the shop address in Shop Parameters > Contact > Stores is in the same country, empty fields are taken from it.
Origin country: the country you ship from. Default: South Africa. Bob Go ships within South Africa.
Origin province: a South African province, or Store province (if in South Africa).
Origin city / suburb: the city or suburb you ship from, for example Johannesburg.
Origin postal code: the postal code you ship from, for example 2001.
Origin street address: the street address you ship from.
South African provinces: PrestaShop has no provinces for South Africa, so customer addresses there have no province, while Bob Go expects one. Click Add South African provinces to add the 9 provinces (codes EC, FS, GP, KZN, LP, MP, NC, NW, WC) as states of South Africa and show the state field in South African addresses. Provinces that already exist, by code or name, are not added again. Nothing changes until you click the button. When the provinces are in place, the field shows South African addresses have a province with their number.
Fixed prices (used when Shipping cost is Fixed prices (below), and as the fallback when Bob Go returns no rates)
Price per country: one line per country: a 2-letter country code, an equals sign and the price in your shop default currency, tax excluded, for example ZA=99.99. Use * for all other countries, for example *=199.99 on the next line. Lines in another format are removed when you save, and the page lists them in a warning.
Flat price: the price for countries without a line above. Leave it empty to hide the carrier for them.
Fixed price applies: Per order charges the price once. Per item (price × quantity) multiplies it by the number of items in the cart. Live Bob Go rates are always for the whole shipment.
Conditions
Minimum weight: hide the carrier below this cart weight, in kg. 0 means no limit (default).
Maximum weight: hide the carrier above this cart weight, in kg. 0 means no limit (default). When both limits are set, the minimum cannot be above the maximum.
Minimum order amount: show the carrier only when the cart subtotal (products that need shipping, after discounts, before tax) is at least this amount. Leave empty to always show it.
Free shipping: turn on free shipping when the order amount below is reached.
Free shipping from: the cart subtotal (after discounts, before tax) for free shipping. Used only when Free shipping is on. Bob Go is not asked for rates then.
Tax: the tax rule of the carrier, or No tax (default). Bob Go rates usually already include VAT. In that case keep No tax so tax is not charged twice.
Availability without shipping zones
Ignore shipping zones: when on, the carrier is linked to all zones, including zones created later, and offered for the countries below. When off, it is offered only in the zones of the carrier in Shipping > Carriers; the zones it had before are given back.
Countries: the destination countries for that mode. Leave empty to allow all countries you ship to. Only used when Ignore shipping zones is on.
Advanced
Debug log: logs rate calculations and Bob Go requests to logs/vfd_bobg_debug.log.php in the module folder. The file cannot be opened from the web. Customer addresses are not logged. Bob Go errors are logged even when this is off. Turn the log off when you are done.
Log: shows the size and the latest entries of the log. Click Clear log to empty it.
Remove data on uninstall: when on, uninstalling the module deletes the Bob Go settings, the carrier, cached rates and logs. The Bob Go service saved with orders is kept. When off, everything is kept for a re-install.
How it works at checkout
At the shipping step PrestaShop asks the module for the Bob Go price. Only physical products count: virtual products add no weight and are not included in the order amount. The module first checks the destination country (with Ignore shipping zones), the cart weight and Minimum order amount. If free shipping applies, the carrier is shown as free and no request goes to Bob Go.
In the live modes the module sends Bob Go your store domain, the origin and delivery addresses (with the province) and the cart items, with product prices in ZAR. Live rates are requested only after the customer has entered a city or postal code. Rates in ZAR are converted with ZAR conversion rate when your shop currency is not ZAR. The price is calculated in your default currency and then shown in the customer's cart currency.
Under the Bob Go carrier the customer sees Choose a delivery service: and one option per Bob Go service, with its name, price and, if Delivery dates is on, the estimated delivery dates. The first service is selected by default. When the customer picks another service, the choice is saved right away and the carrier price and the cart total are updated. The carrier costs what the chosen service costs. If a service is no longer offered for the address, the customer sees This service is not available for your address any more. Please choose another one. If saving fails, the message is The service could not be saved. Please try again. The service list works with the Classic and Hummingbird themes.
Rates are cached for 1 hour per full request, so the same cart does not trigger a new request. A failed request is cached for 5 minutes, and the timeout is 12 seconds, so a Bob Go outage does not slow down every checkout update. A failed request never breaks the checkout: the carrier is hidden, or the fixed price is used in the fallback mode. The reason goes to the log.
If you edit the carrier in Shipping > Carriers after it has orders, PrestaShop saves it as a new carrier version. The module follows the new version automatically.
The module shows rates only. It does not create shipments, waybills or labels, track parcels, sync orders to Bob Go or send notifications. Use the Bob Go dashboard for fulfilment. It has no pickup point or locker selection. Bob Go ships within South Africa only.
Orders
When the order is placed, the chosen Bob Go service, its code and the delivery estimate are saved with the order. Later changes to the cart or to Bob Go prices do not change them.
In the back office the order page shows a Bob Go block with Bob Go service (name and code) and Estimated delivery. The customer sees Bob Go service and Estimated delivery on the order details page in their account. Orders with a fixed price or free shipping have no Bob Go service.
License key
The module works with a VibeFox license key from vibefox.net. The license block License — VibeFox Bob Go is the first block on Modules > Module Manager > VibeFox Bob Go > Configure, above the settings. Paste the key into License key and click Activate. After that the block shows the key masked, the status (for example the date the license is active until and your domain) and the buttons Check now to check the status again, Change key to enter another key and Remove key to remove the key from this shop. Below them are the line Product: presta-shipping-bob-go and the link Manage licenses and domains in your account, which opens your vibefox.net account. Only employees with the Configure permission for the module can change the key. The texts of the block follow the back office language (English and Russian are included).
If the key is not accepted, the block says why, for example Key not found, This key belongs to another product, Domain limit reached or License expired on a date. After the shop address changes, or after you free a domain slot in your account, click Check now. If the license server cannot be reached, the module keeps working on the last known status.
One key works on one domain: the domain of the main shop, also in a multistore setup. Removing the key from the shop does not free its domain slot. Free the slot in your vibefox.net account.
Without an active key, the Bob Go carrier is not shown to customers at checkout and no rate is calculated. The PrestaShop storefront does not know that you are logged in to the back office, so the carrier is hidden for you too: you can set up the module before you buy a key, but not test it at checkout. A reminder appears in Modules > Module Manager on the Alerts tab. Existing orders are not affected.
When a license expires, the module keeps working, but updates and support need a renewal. The status is checked again automatically while you work in the back office: once a day for the first 14 days after the key is entered, then once a week. No cron job is needed. Uninstalling or resetting the module always removes the license key and license status.
Troubleshooting
Bob Go does not appear at checkout: check that the license is active and Enable Bob Go is on. In Shipping > Carriers check that the carrier covers the zone of the customer's country and the customer's group, or turn on Ignore shipping zones and check Countries. Check the weight limits and Minimum order amount. In the fixed mode, check that the country, * or Flat price has a price. Products can also be limited to certain carriers in the product page.
No Bob Go rates are shown: open the module page. The Bob Go account section shows the last response from Bob Go. "The WooCommerce channel is not installed on Bob Go" (HTTP 404) means the store domain is not a sales channel on Bob Go: check Store domain. "Rates at checkout is not enabled" (HTTP 401) means the feature is off for the channel. Also make sure the customer has entered a city or postal code and, for non-ZAR shops, that ZAR conversion rate is set. Turn on Debug log, reload the checkout and look at the Log field. With Bob Go live rates, fixed prices if Bob Go returns no rates customers still get the fixed price while you fix the problem.
My shop is not in rand: Bob Go quotes in ZAR. Enter how much 1 ZAR is in your shop currency. Without it the module does not ask Bob Go for rates. Fixed prices still work.
The page warns that South African addresses have no province: click Add South African provinces in the Ship from (origin address) section. Existing customer addresses get a province only when they are edited.
Tax is charged twice on shipping: Bob Go rates normally include VAT. Set Tax to No tax.
Rates look outdated after a change: click Save on the module page. This clears the cached Bob Go rates. Changes in your Bob Go account are picked up after the 1-hour cache or when you save the settings.
The page says the Bob Go carrier was not found: the carrier was deleted in Shipping > Carriers. Reset the module in Modules > Module Manager to create it again.
Uninstall
Go to Modules > Module Manager, open the menu next to VibeFox Bob Go and choose Uninstall. The license key, the license status and the cached rates are always removed. If Remove data on uninstall is on, the carrier is deleted (orders keep their history) and the settings, the log and the service choices of open carts are removed. If it is off, the carrier is only disabled and all settings are kept. Installing the module again, or Reset, gives the saved carrier back the status it had before: an active carrier is switched on again, a disabled one stays disabled. The Bob Go service saved with orders is always kept.
Bob Go is a trademark of its respective owner. This module is not affiliated with or endorsed by Bob Go.
