Back

VibeFox Loggi 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.

Loggi account (for live prices only): the live price uses the Loggi GraphQL API with an API key that Loggi issues for business accounts. Ask your Loggi account manager or Loggi integration support (integracoes@loggi.com), see also the Loggi API documentation at docs.api.loggi.com. You need three values: the e-mail of your Loggi account, the API key and the numeric ID of your shop. If your Loggi account only has credentials for the newer Loggi REST platform API (client ID and secret), the live price is not available and the fixed prices are used. If you only use fixed prices, you do not need a Loggi account.

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_loggi-oc3-(version).ocmod.zip and the OpenCart 4 package vfd_loggi.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_loggi-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 Loggi 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. Enter the Loggi API e-mail, API key, Shop ID and the pickup address and, if your store default currency is not BRL, the BRL exchange rate. Add fixed prices as a safety net (see Configuration), turn on Enable Loggi and click Save.

OpenCart 4

1. In the admin go to Extensions > Installer, click Upload and choose the file vfd_loggi.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 Loggi, 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.

On install the extension creates a small table for cached Loggi prices. The method is off until you turn on Enable Loggi and save. If you install the extension again after an uninstall, the Loggi settings you kept are used again.

Configuration

All settings are on the extension page: Extensions > Extensions > Shipping > VibeFox Loggi > Edit. The sections are listed on the left. They apply to every geo zone. One Save button at the bottom saves the whole page without reloading it. Every save also clears the cached Loggi prices. If a value is invalid, for example a negative number, an invalid e-mail or a Shop ID that is not a number, the page shows an error and nothing is saved. Only admin users with the modify permission for this extension can save the settings.

Warnings above the settings (shown again after each save) point out an incomplete setup: no API credentials (only fixed prices are used), no API credentials and no fixed prices (the method is never shown), no pickup address, or no BRL exchange rate. Another warning appears when the store has no weight class with the unit kg or no length class with the unit cm and the unit of the default class is not known. Product weights are then counted as kg and dimensions as cm. Add the classes in System > Localisation > Weight Classes and Length Classes.

General

Enable Loggi: shows or hides Loggi at checkout. Default: off.

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

Sort order: the position of Loggi among the shipping methods at checkout. A whole number.

Loggi API (live price) (leave the credentials empty to use fixed prices only)

API e-mail: the e-mail of your Loggi account. The API key belongs to it. It must be a valid e-mail address. Clearing it also clears the saved API key.

API key: your Loggi API key. It is sent only to Loggi and never logged. After saving, the field stays empty and shows Saved — leave empty to keep it; clear the API e-mail to remove it. Type a new value only to change it. If you change API e-mail, enter the API key for the new e-mail as well, otherwise the page shows an error and nothing is saved.

Shop ID: the numeric ID (pk) of your shop in the Loggi dashboard, for example 12345. Another value is rejected with an error.

Staging: use the Loggi staging environment with test credentials. Staging and production have different accounts and keys. Default: off.

Pickup address: where Loggi collects the parcels, in one line: street and number, neighbourhood, city, state and CEP, for example Rua Example, 123 - Bairro, São Paulo - SP, 01310-100. Required for live prices: the OpenCart store address is free text, so it is never used instead. Without a pickup address Loggi cannot estimate and only fixed prices are used.

BRL exchange rate: Loggi prices are in Brazilian reais. If your store default currency is BRL, this field is not needed and the page says so. Otherwise enter how much 1 BRL is in your store currency, for example 0.16. Without it live prices are not used. Only a positive number is accepted. Both a point and a comma are accepted as the decimal separator.

Fixed prices (in your store default currency, tax excluded)

Fixed prices are used when the Loggi API is not configured, for destinations outside Brazil or without a full CEP, and whenever Loggi returns no price (API down, key rejected, address out of coverage).

Price table: one row per destination country. Click Add country to add a row and the remove button to delete one. Choose * All other countries for every country without its own row. Each row has a Base price and weight columns: XS up to 1 kg, S up to 2 kg, M up to 3 kg, L up to 5 kg and XL over 5 kg. An empty (or 0) weight column uses the base price. Base price 0 means free shipping. Both "9.99" and "9,99" are accepted. Empty rows and a second row for the same country are dropped when you save.

Price for countries not in the table: used when there is no live Loggi price and the table has no row for the destination country (and no * row). Leave it empty to hide the method in that case.

Fixed price applies: the way fixed prices are counted. A live Loggi price already covers the whole cart and is never multiplied.

Per order (one parcel, tier by total cart weight): one price for the cart, with the weight column chosen by the total cart weight. This is the default.
Per item (every item is a separate parcel, tier by its own weight): every item is priced by its own weight and the prices are added up.

Conditions

Minimum weight (kg): hide the method below this cart weight. 0 means no limit (default).

Maximum weight (kg): hide the method above this cart weight. Default: 30. 0 means no limit. Minimum weight cannot be greater than Maximum weight.

Minimum order amount: show the method only when the subtotal of the products that need shipping (after the coupon, before tax) reaches this amount. Leave it empty to always show it.

Free shipping from: the subtotal of the products that need shipping (after the coupon, before tax) from which Loggi delivery is free. Leave it empty for no free shipping.

Tax class: the tax class of the shipping cost, or No tax (default). Choose No tax if your prices and the Loggi price already include taxes.

Geo zone: offer Loggi only for addresses in this geo zone. All zones (default) means no limit. Geo zones are managed in System > Localisation > Geo Zones. The geo zone is not checked when Ignore shipping zones is on.

For the weight limits and the weight columns, a product without a weight counts as 0 kg.

Countries

OpenCart has no carrier zones: the Geo zone limits the method to the addresses of one geo zone. Instead, you can turn on Ignore shipping zones and choose a list of countries.

Ignore shipping zones: offer Loggi for the countries below, whatever the Geo zone is. The geo zone is not checked in this mode. Default: off.

Countries: the destination countries for that mode. Leave it empty to allow all countries enabled in the store. This field is used only when Ignore shipping zones is on.

Advanced

Debug log: writes rate calculations and Loggi requests to storage/logs/vfd_lggi_debug.log.php (on OpenCart 4 system/storage/logs/vfd_lggi_debug.log.php). The file cannot be read from the web. API errors are always logged, even with this option off. The API key and customer addresses are never logged. When the file reaches 5 MB, it is moved to vfd_lggi_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 Loggi settings and the log. When off (default), the settings are kept for a re-install. Cached prices are always deleted.

Import / Export

Export: click Download JSON to save the settings as a JSON file. The API key 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 key is kept.

How it works at checkout

When OpenCart shows the shipping methods, it asks the extension for the Loggi price. If a Geo zone is set, Ignore shipping zones is off and the address is outside the geo zone, Loggi is not offered. Only products with Requires Shipping set to Yes count: other products add no weight and are not included in the order amount. The extension then checks the conditions: allowed countries (with Ignore shipping zones), cart weight and minimum order amount. The order amount is the price of the products that need shipping, after the coupon discount and before tax. Gift certificates, reward points and store credit are not taken into account. If free shipping applies, the price is 0 and no request goes to Loggi.

For an address in Brazil with a full 8-digit CEP, the extension builds Loggi packages: each item is turned so that its smallest side is the height, and items are stacked into one package while it stays within 55 × 55 × 55 cm and 20 kg. Products without weight or dimensions count as 1 cm per side, and every package weighs at least 100 g. Loggi accepts 2 packages per estimate, so bigger carts are sent in several requests and the totals are added up. The extension sends Loggi your Shop ID, the pickup address, the delivery address (street, city, state and CEP) and the packages, and converts the Loggi total from BRL to your store default currency. The price is rounded to the decimals of that currency and shown to the customer in their currency with the tax of the selected Tax class.

Each Loggi price is cached for 1 hour per cart, address, account and environment, so the same cart does not trigger a new request. A failed estimate is cached for 10 minutes. If Loggi cannot be reached at all, requests pause for 2 minutes, so the checkout does not wait for Loggi on every refresh. The API timeout is 10 seconds.

The fixed prices are used instead when the API is not configured, the address is outside Brazil or has no full CEP yet, the BRL exchange rate is missing, there is no pickup address, a product is larger than a Loggi package, the cart needs more than 10 packages, or Loggi returns an error, a rejected package, an address out of coverage or a zero total. If there is no fixed price either, the method is hidden. The customer never sees an API error. The reason is written to the debug log.

On OpenCart 4 the customer clicks Choose in the shipping method block of the checkout page and picks Loggi in the window Shipping method options. The method works the same way as on OpenCart 3.

The extension calculates prices only. It does not create Loggi orders or shipments, print labels, track parcels, show the delivery time at checkout or offer pickup points or lockers. It adds nothing to orders: the order shows the method title and the shipping cost like any other OpenCart shipping method. Create shipments in the Loggi dashboard. Loggi delivers within Brazil only. Use the fixed prices for other countries.

License key

The extension works with a VibeFox license key from vibefox.net. The license block License — VibeFox Loggi is the first block on Extensions > Extensions > Shipping > VibeFox Loggi > 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-loggi 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, the Loggi shipping method 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

Loggi does not appear at checkout: check that the license is active and Enable Loggi is on. Check Geo zone, Ignore shipping zones and Countries, the warnings at the top of the extension page, the weight limits and Minimum order amount. If the customer has not entered a full CEP yet or Loggi returns no price, the method needs a fixed price: a row for the country, a * row or Price for countries not in the table. Check that the products have Requires Shipping set to Yes.

Only fixed prices are shown: look at the Log field on the extension page. Errors are always logged. Turn on Debug log for every step and reload the checkout. Typical reasons: missing API e-mail, key or Shop ID, no pickup address, no BRL exchange rate for a store currency other than BRL, no full 8-digit CEP yet, a product larger than 55 cm or heavier than 20 kg, or an address out of Loggi coverage.

HTTP 401 or 403 in the log: Loggi rejected the API e-mail or key. Check them with Loggi, and check that Staging matches the credentials: staging and production keys are different.

My store sells in euros or dollars: Loggi answers in BRL. Enter BRL exchange rate (how much 1 BRL is in your store default currency). Fixed prices are always in your store default currency.

Prices are not accurate: fill in weight and dimensions for your products. Without them, products count as 1 cm per side and each package as at least 100 g.

Per item does not multiply the Loggi price: this is intended. A live Loggi price covers the whole cart. Per item applies to fixed prices only.

Prices look outdated after a change: click Save on the extension page. This clears the cached Loggi prices.

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

For developers: the Loggi API address can be replaced with the setting vfd_lggi_api_url (for tests); it has no field on the settings page.

Uninstall

Go to Extensions > Extensions, choose the type Shipping and click Uninstall (the red − button) next to VibeFox Loggi. The license key and license status of this extension are always removed. OpenCart always resets Enable Loggi, Sort order, Tax class and Geo zone. The cached Loggi prices (with their table) are always removed. If Remove data on uninstall is on, the Loggi settings and the debug log are deleted as well. If it is off, the other settings 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 Loggi in the list of installed extensions, then Delete (the red bin button) to remove the uploaded package.

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