Back

VibeFox GIG Logistics for OpenCart — Help

Requirements

OpenCart: 3.0.x (tested on 3.0.5.0) or 4.0.2 and later (tested on 4.1.0.3).

PHP: 8.0 or later.

GIG Logistics API credentials (for live prices only): live prices use the GIG Logistics third-party API. GIG Logistics issues an API username (usually an e-mail address) and password to business customers. Request them on the GIG Logistics developer page (giglogistics.com/developer). Test credentials work only with the test API. If you only use the price table and the fallback cost, you do not need API credentials.

Nigeria in your store: live prices are requested for delivery addresses in Nigeria only. OpenCart already has the country Nigeria with its 37 states; it must be enabled in System > Localisation > Countries.

VibeFox license key: bought on vibefox.net. One key works on one domain.

Installation

The download is one zip file with the packages for both OpenCart versions. Unpack it on your computer. It contains README.txt, the OpenCart 3 package vfd_gig_logistics-oc3-(version).ocmod.zip and the OpenCart 4 package vfd_gig_logistics.ocmod.zip. Install only the package for your OpenCart version. The license key is the same for both versions.

OpenCart 3

1. In the admin go to Extensions > Installer, click Upload and choose the file vfd_gig_logistics-oc3-(version).ocmod.zip. The extension adds no OCMOD modifications, so you do not need to refresh Extensions > Modifications. Instead of the Installer, you can copy the contents of the upload folder of this package into the root folder of your store.

2. Go to Extensions > Extensions and choose the extension type Shipping. Find VibeFox GIG Logistics and click Install (the green + button).

3. Click Edit (the pencil button) to open the settings page.

4. Paste your VibeFox license key into License key in the license block at the top of the Edit page and click Activate (see License key).

5. Fill in the price table and/or the fallback cost. For live prices, also enter the API username and password, the pickup phone, street, city and state, and the currency conversion rate if your default currency is not NGN (see Configuration). Turn on Enable/Disable and click Save.

OpenCart 4

1. In the admin go to Extensions > Installer, click Upload and choose the file vfd_gig_logistics.ocmod.zip. Do not rename the file: OpenCart 4 takes the extension code from the file name, and a renamed package does not work.

2. The package appears in the list of installed extensions on the same page. Click Install (the green + button) next to it.

3. Go to Extensions > Extensions and choose the extension type Shipping. Find VibeFox GIG Logistics, click Install (the green + button), then Edit (the pencil button).

4. Enter the license key and the settings as in steps 4 and 5 for OpenCart 3. The settings page and its fields are the same in both versions.

After install the method is off until you turn on Enable/Disable and save. If you install the extension again after an uninstall, the settings you kept are used again.

Configuration

All settings are on the extension page: Extensions > Extensions > Shipping > VibeFox GIG Logistics > Edit. The sections are listed on the left. One Save button at the bottom saves the whole page without reloading it. Every save also clears the cached GIG Logistics prices, API tokens and address coordinates. Only admin users with the modify permission for this extension can save the settings.

At the top of the page, and again after each save, the extension shows warnings when live prices cannot be used: only one of the API username and password is entered, Sender phone or the pickup city and state are missing, or your default currency is not NGN and no Currency conversion rate is set. It also warns when your store has no weight class with the unit kg (System > Localisation > Weight Classes); product weights are then converted by their unit name (kg, g, lb, oz), and other units are read as kg. When you save, a wrong number (a negative amount, a Currency conversion rate of 0, a latitude outside -90 to 90, a longitude outside -180 to 180), a Min weight (kg) above Max weight (kg), an empty or invalid Method title, a sort order that is not a whole number, or an unknown tax class or geo zone is reported, and nothing is saved.

General

The method is offered for the geo zone selected in Conditions, or for the countries of Ignore shipping zones. The settings on this page apply to every zone.

Enable/Disable: shows or hides GIG Logistics at checkout (the status of this extension). Default: off.

Method title: the shipping method name shown in the cart and at checkout. Default: GIG Logistics. Required, 1 to 64 characters, without the characters < > ; = # { }.

Tax class: the tax class of the shipping cost, or No tax. A tax class adds your shipping tax on top of the cost. Choose No tax if the GIG price already includes everything you want to charge.

Sort order: the position of the method among the shipping methods. A whole number.

GIG Logistics API (live prices) (optional)

With API credentials, the price is requested from GIG Logistics for every Nigerian address and cached for an hour. Without credentials, or when the API gives no price, the price table and the fallback cost are used. The section has a link to the GIG Logistics developer page.

API username: your GIG Logistics third-party API username, usually your e-mail address.

API password: your GIG Logistics third-party API password. It is used only to log in to the API and is never logged. After saving, the field stays empty and shows Saved — leave empty to keep it. To remove it, clear the API username and save. Type a new value only to change it.

Test mode: use the GIG Logistics test (dev) API. Test credentials work only with the test API. Turn it off for real prices. Default: off.

Currency conversion rate: GIG Logistics returns prices in NGN. If your store default currency is not NGN, enter how much one NGN is worth in your default currency (1 NGN = ? of your currency, for example 0.0006). The rate must be above 0. Without it, live GIG prices are not used. If your default currency is NGN, the field says so and is not needed.

Pickup (sender) address

Where GIG Logistics picks up the parcels, in Nigeria. OpenCart has no structured store address, so enter the street and the city here. When your store country is Nigeria, an empty State uses the store region from System > Settings > Store > Local.

Sender name: the sender name sent to GIG Logistics. Empty means the store name.

Sender phone: your phone number, for example 08030000000. Required by GIG Logistics for live prices.

Street address: the pickup street address, for example 1 Adeola Odeku Street.

City / area: the pickup city or area, for example Victoria Island. Required for live prices.

State: the Nigerian state of the pickup address, chosen from the 37 states. The default option, Store region (System > Settings > Store > Local), uses the region of your store when the store is in Nigeria. Required for live prices.

Pickup latitude: optional map latitude of the pickup point, for example 6.4281. GIG Logistics prices by distance. Empty means the coordinates are looked up from the address.

Pickup longitude: optional map longitude of the pickup point, for example 3.4219.

Address lookup: find map coordinates of addresses with OpenStreetMap (Nominatim). GIG Logistics calculates the price from the pickup and delivery coordinates. The customer's street, city and state are sent to nominatim.openstreetmap.org, and the results are cached for 30 days. Without it only the address text is sent, and GIG Logistics may not return a price. Default: on.

Price table and fallback

Used for other countries, when live prices are not configured, or when GIG Logistics gives no price. Prices are in your store default currency, tax excluded.

Country prices: a table with a base price per country. Click Add country to add a row. Choose * Any other country for all countries without their own row. The columns XS ≤1 kg, S ≤2 kg, M ≤3 kg, L ≤5 kg and XL >5 kg are optional weight tier prices: a tier price above 0 replaces the base price for carts in that tier. A price of 0 means free shipping. Empty or invalid price cells are saved as 0, so fill in the base price for every row you add. Corrected values are listed after saving in a warning that starts with Country prices:. Countries without a row (when there is no * row) get no table price.

Fallback cost: used when neither GIG Logistics nor the table gives a price. Empty means the method is hidden in that case.

Table / fallback price is: Per order charges the price once. Per item (multiplied by the number of items) multiplies it by the number of items in the cart. Live GIG prices are always for the whole order.

Conditions

Free shipping from: the cart subtotal (products that need shipping, after the coupon, tax excluded) from which shipping is free. Empty means never free.

Minimum subtotal: show the method only when the cart subtotal reaches this amount. Empty means always.

Min weight (kg): the minimum cart weight in kg. Product weights are converted with their weight class. 0 means no limit.

Max weight (kg): the maximum cart weight in kg. Default: 30. 0 means no limit.

Geo zone: offer the method only for addresses in this geo zone. All zones means no limit. Not used with Ignore shipping zones. Geo zones are managed in System > Localisation > Geo Zones.

Availability without shipping zones

Ignore shipping zones: offer the method for the countries below, whatever the geo zone is. The Geo zone in Conditions is then not checked.

Countries: the destination countries for that mode, chosen from the enabled countries of your store. Empty means all countries you ship to. Used only with Ignore shipping zones.

Advanced

Debug log: writes price calculations to storage/logs/vfd_gigl_debug.log.php (on OpenCart 4 system/storage/logs/vfd_gigl_debug.log.php). The file cannot be read from the web. API and address lookup errors are always logged, even with the log off. No passwords, tokens or customer addresses are written. When the file reaches 5 MB, it is moved to vfd_gigl_debug.old.log.php and a new log is started.

Log: shows the size and the latest entries of the debug log. Click Clear log to empty it.

Remove data on uninstall: when on, uninstalling the extension deletes the settings and the logs. When off, everything is kept for a re-install. Cached prices are always removed. Orders are always kept.

Import / Export

Export: click Download JSON to save the settings as a JSON file. The API password is not exported.

Import: paste previously exported JSON and click Import to restore the settings, for example on another store. The values are checked like a normal save. The saved API password is kept.

How it works at checkout

When OpenCart shows the shipping methods, it asks the extension for the GIG Logistics price. If a Geo zone is set (and Ignore shipping zones is off) and the address is outside it, the method is not offered. Only products with Requires Shipping set to Yes count: other products add no weight and are not included in the subtotal. The subtotal is the price of these products after the coupon discount, tax excluded. Gift certificates, reward points and store credit are not taken into account. The extension first checks the conditions: the delivery country (with Ignore shipping zones), cart weight and minimum subtotal. If the subtotal reaches Free shipping from, the price is 0 and no request goes to GIG Logistics.

Then the price is taken from the first source that gives one. First, the live GIG Logistics price, if API credentials are entered, the address is in Nigeria, the address has a city or state, the pickup phone, city and state are set, and a conversion rate is set for stores whose default currency is not NGN. The extension logs in to the GIG Logistics API and sends the pickup and delivery addresses and coordinates and the cart items with names, quantities, weights and values. Products without a weight are sent as 1 kg. The price is requested for bike delivery. Second, the Country prices table. Third, the Fallback cost. If none gives a price, the method is hidden for that cart. The price is calculated in your default currency, rounded to its decimals and shown to the customer in their currency with the tax of the selected Tax class.

Each GIG answer is cached for 1 hour, so the same cart does not trigger a new request. A failed request or a failed login is cached for 10 minutes, so the checkout does not wait for GIG Logistics on every refresh. The login token is kept for 30 minutes and renewed automatically when GIG rejects it. Address coordinates are kept for 30 days, an address that was not found for 1 day. The API timeout is 10 seconds, and the address lookup timeout is 5 seconds.

If GIG Logistics returns an error or a zero price, the customer sees no error. The table or fallback price is used, and the error is written to the debug log.

The extension calculates prices only. It does not create GIG Logistics shipments, waybills or labels, book pickups, track parcels or let customers choose a service centre. It adds nothing to orders: the order shows the method title and the shipping cost like any other OpenCart shipping method. Live prices are requested for Nigerian addresses only. For other countries, use the price table.

On OpenCart 4 the customer clicks Choose in the shipping method block of the checkout page and picks GIG Logistics in the window Shipping method options, where the option shows the method title and the price, for example GIG Logistics - $4.50. The method works the same way as on OpenCart 3.

License key

The extension works with a VibeFox license key from vibefox.net. The license block License — VibeFox GIG Logistics is the first block on Extensions > Extensions > Shipping > VibeFox GIG Logistics > Edit, 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 store. Below them are the line Product: opencart-shipping-gig-logistics and the link Manage licenses and domains in your account, which opens your vibefox.net account. Only admin users with the Modify permission for the extension can change the key. The texts of the block follow the admin 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 store address changes, or after you free a domain slot in your account, click Check now. If the license server cannot be reached, the extension keeps working on the last known status.

One key works on one domain: the store address from the OpenCart configuration. Removing the key from the store does not free its domain slot. Free the slot in your vibefox.net account.

Without an active key, GIG Logistics is not shown to customers at checkout and no rate is calculated. An admin user who is logged in to the admin in the same browser still sees the method in the store, marked (unlicensed — visible to admins only), so you can set up and test the extension before you buy a key. On OpenCart 4 this preview is not available: the store does not see the admin login, so without an active key the method is hidden for everybody. After you have opened the Edit page once, a reminder appears on the admin Dashboard. Close it with × to hide it for 7 days. Existing orders are not affected.

When a license expires, the extension keeps working, but updates and support need a renewal. The status is checked again automatically when you open the admin Dashboard or the Edit page: once a day for the first 14 days after the key is entered, then once a week. No cron job is needed. Uninstalling the extension always removes the license key and license status.

Troubleshooting

GIG Logistics does not appear at checkout: check that the license is active and Enable/Disable is on. Check Geo zone, or Ignore shipping zones and Countries, the weight limits and Minimum subtotal. Check that the table (the country or *) or Fallback cost gives a price for the country. Check that the products have Requires Shipping set to Yes.

The price comes from the table, not from GIG Logistics: live prices need the API username and password, Sender phone, pickup city and state, a Nigerian delivery address with a city or state, and, for stores whose default currency is not NGN, the Currency conversion rate. Look at the warnings at the top of the Edit page. Turn on Debug log, reload the checkout and look at the Log field on the extension page to see the reason. A failed request is retried after 10 minutes.

Login failed in the log: GIG Logistics rejected the API username or password. Check them, and check Test mode: test credentials work only with the test API. Save the settings to retry at once.

GIG Logistics does not return a price: GIG prices by distance. Keep Address lookup on, or enter Pickup latitude and Pickup longitude. Confirm the prices with your GIG Logistics account before going live.

The pickup city and state warning stays: choose a state in State and fill in City / area. The store region is used only when the store country in System > Settings > Store > Local is Nigeria.

Tax is charged on top of the GIG price: set Tax class to No tax if the GIG price already includes everything you want to charge.

Prices look outdated after a change: click Save on the extension page. This clears the cached prices, tokens and coordinates.

The page says "Warning: You do not have permission to modify VibeFox GIG Logistics!": your admin user group may only view the settings. Give the group the modify permission for extension/shipping/vfd_gig_logistics (OpenCart 3) or extension/vfd_gig_logistics/shipping/vfd_gig_logistics (OpenCart 4) in System > Users > User Groups.

For developers: the GIG Logistics API address and the address lookup address can be replaced with the settings vfd_gigl_api_base_url and vfd_gigl_geocode_url (for tests); they have no fields on the settings page.

Uninstall

Go to Extensions > Extensions, choose the type Shipping and click Uninstall (the red − button) next to VibeFox GIG Logistics. The license key and license status of this extension are always removed. OpenCart always resets Enable/Disable, Sort order, Tax class and Geo zone. The cached prices, tokens and address coordinates are always removed. If Remove data on uninstall is on, the other settings and the debug log are deleted as well. If it is off, they are kept and are used again when you install the extension again. Existing orders keep their shipping method and cost.

On OpenCart 4, to remove the files of the extension as well, go to Extensions > Installer after the uninstall and click Uninstall (the orange − button) next to VibeFox GIG Logistics in the list of installed extensions, then Delete (the red bin button) to remove the uploaded package.

GIG Logistics is a trademark of its respective owner. This extension is not affiliated with or endorsed by GIG Logistics.