VibeFox Frenet for PrestaShop — Help
Requirements
PrestaShop: 8.0 to 9.x.
PHP: 8.0 or later. The module refuses to install on older PHP versions.
Frenet account (for live quotes only): create a free account in the Frenet panel (painel.frenet.com.br), enable the carriers you use and copy your API token. If you only use fixed prices, you do not need a Frenet account.
Products: fill in weight and dimensions for accurate prices. Products without them are quoted as 0.3 kg and 16 × 11 × 2 cm (the minimum Correios box).
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 Frenet 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. Paste the API token and enter the origin CEP. If your default currency is not BRL, enter the BRL exchange rate. Optionally add fixed prices and a fallback cost. Click Save.
On install the module creates the Frenet carrier with the delivery time text Delivery by the carriers of your Frenet account. The carrier is assigned to all zones and all customer groups. 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 Frenet > 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 Frenet quotes. Price fields accept both a point and a comma as the decimal separator; a value that is not a number is rejected with the message "…" must be a number. Negative amounts and weights, a BRL exchange rate of 0 or less, and a Minimum weight above the Maximum weight are rejected too. When there is an error, nothing is saved.
At the top of the page the module shows warnings: no API token (only fixed prices are used, or the carrier is never shown if there are no fixed prices either), no 8-digit origin CEP, or a default currency other than BRL without an exchange rate. It also warns when your shop weight or dimension unit is one the module does not recognise; such a unit is treated as kg or cm. Set a standard unit (kg, g, lb or oz; cm, mm, m or in) in International > Localization (Local units).
General
Enable Frenet: turns the carrier on or off. This is the same switch as the carrier status in Shipping > Carriers.
Method title: the carrier name shown in the cart and at checkout. Default: Frenet. Required, 64 characters at most.
Frenet live quotes
Frenet compares the carriers enabled in your Frenet account and returns their prices for the cart. Live quotes are requested only for addresses in Brazil with a full 8-digit CEP. The section has a link to the Frenet panel.
API token: your Frenet API token from the Frenet panel. Leave it empty to use fixed prices only. After saving, the field stays empty and shows A token is saved — leave empty to keep it. Type a new value only to change it. To delete the saved token, tick Remove the saved token and save.
Origin CEP: the postal code (CEP) the parcels are shipped from, for example 00000-000. Leave it empty to use the shop postcode from Shop Parameters > Contact > Stores, if the shop address is in Brazil. A CEP without 8 digits is saved as typed, and the page shows Frenet: the origin CEP must have 8 digits.
Service to offer: Cheapest service (default) or Fastest service. Frenet returns several services, and the carrier shows one price.
BRL exchange rate: Frenet quotes in Brazilian reais. If your default currency is not BRL, enter how much 1 BRL is in your default currency, for example 0.16. The quote and the declared order value are converted with it. Without it live quotes are not used. When your default currency is BRL, the field shows Not needed (shop currency is BRL).
Fixed prices
Used when there is no API token, for countries Frenet does not serve, and whenever Frenet returns no price (API down, CEP not served).
Price per country: a table with the columns Country, Price, XS, S, M, L and XL, prices in your default currency, tax excluded. Click Add country to add a row and the trash icon to remove one. The size columns depend on the cart weight: XS up to 1 kg, S up to 2 kg, M up to 3 kg, L up to 5 kg, XL above 5 kg. Price is used when the size column is empty. A Price of 0 means free shipping for that country. Use * Default for all other countries. Rows without any price are removed when you save.
Fallback cost: used when neither Frenet nor the table gives a price. Leave it empty to hide the carrier.
Fixed price applies: Per order charges the price once. Per item (price × quantity) multiplies it by the number of items. This applies only to fixed prices and the fallback cost. Frenet quotes already cover the whole cart.
Conditions
Minimum weight: hide the carrier below this cart weight, in kg. 0 means no limit.
Maximum weight: hide the carrier above this cart weight, in kg. Default: 30 (also used when the field is empty). 0 means no limit. It cannot be lower than Minimum weight.
Minimum order amount: show the carrier only when the cart subtotal (after discounts, before tax) is at least this amount. Leave it empty to always show it.
Free shipping from: the cart subtotal (after discounts, before tax) from which shipping is free. Leave it empty to never give free shipping.
Tax: the tax rule of the carrier, or No tax. Frenet prices are final carrier prices. Choose No tax if PrestaShop must not add tax to them.
Product weights and dimensions are converted from your shop units to kg and cm.
Availability without shipping zones
Normally the carrier is offered in the zones it is assigned to in Shipping > Carriers.
Ignore shipping zones: offer Frenet for the countries below, whatever zone matches. On save the carrier is added to all zones, and zones you create later are added too. When you turn it off again, the carrier gets back the zones it had before.
Countries: the destination countries for that mode, chosen from the active countries of your shop. Leave it empty to use all countries you ship to. Used only when Ignore shipping zones is on.
Advanced
Debug log: logs every quote request and response to logs/vfd_frn_debug.log.php in the module folder. The file cannot be opened from the web. API errors are always logged. The token is never logged and the customer CEP is shortened. Turn it 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 all Frenet settings, the carrier and the log. When off, everything is kept for a re-install. Cached quotes are always removed. The Frenet services saved with orders are order history and are kept.
How it works at checkout
At the shipping step PrestaShop asks the module for the Frenet price. Only physical products count: virtual products add no weight and are not included in the order amount. Before the customer enters an address, the module uses the country your shop estimates for the visitor. The module first checks the country list (when Ignore shipping zones is on), the cart weight and the minimum order amount. If free shipping applies, the price is 0 and no request goes to Frenet.
For an address in Brazil with a full 8-digit CEP, the module sends Frenet the origin and destination CEP, every cart item (weight in kg, dimensions in cm, quantity, product reference and categories), the order value in BRL and the first voucher code of the cart. No request is made while the CEP is incomplete. Frenet returns the services of your enabled carriers. Services with an error or without a price are skipped. The module picks the cheapest or the fastest service and converts the price to your default currency. The price is then shown in the customer's cart currency.
Each answer is cached for 1 hour for the same cart and address. A failed request, or a CEP that no enabled carrier serves, is remembered for 10 minutes. The API timeout is 10 seconds. In these cases the customer sees no error: the fixed price or the fallback cost is used, or the carrier is hidden if there is none. The reason is written to the log. For addresses outside Brazil only fixed prices are used.
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 calculates rates only. It does not create shipments, print labels or track parcels. It shows one Frenet service per cart, not several, and has no pickup points or lockers. Frenet quotes within Brazil only; use the fixed prices for other countries.
Orders
When an order is placed with the Frenet carrier, the module saves how its shipping price was calculated. The back office order page then shows a Frenet block with these lines:
Carrier: the Frenet carrier and service, for example a Correios or Jadlog service. Shown for live quotes.
Delivery time: the delivery time in business days returned by Frenet. Shown for live quotes.
Price source: Live Frenet quote, Fixed price (price per country), Fallback cost or Free shipping.
This data is kept when the module is uninstalled, also with Remove data on uninstall.
License key
The module works with a VibeFox license key from vibefox.net. The license block License — VibeFox Frenet is the first block on Modules > Module Manager > VibeFox Frenet > 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-frenet 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 Frenet 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
Frenet does not appear at checkout: check that the license is active and Enable Frenet is on. In Shipping > Carriers check that the carrier covers the zone of the customer's country and the customer's group, or that Ignore shipping zones is on and the country is allowed. Check the warnings at the top of the module page, the weight limits and Minimum order amount. Typical reasons: the customer has not entered a full 8-digit CEP yet and there are no fixed prices, or Frenet returned no service for the route and there is no fixed price. Products can also be limited to certain carriers in the product page.
Live quotes do not appear: turn on Debug log, reload the checkout and look at the Log field on the module page. It shows the reason: no origin CEP, no BRL exchange rate, an incomplete customer CEP, a weight or amount limit, or the messages of the skipped services.
The log says the API token was rejected (HTTP 401 or 403): copy the token again from the Frenet panel and paste it into API token.
The log says Frenet returned no services: enable at least one carrier in the Frenet panel.
My shop sells in euros or dollars: Frenet answers in BRL. Enter the BRL exchange rate (how much 1 BRL is in your default currency).
Tax is charged on top of the Frenet price: Frenet prices are final carrier prices. Set Tax to No tax.
Rates look outdated after a change: click Save on the module page. This clears the cached Frenet quotes.
The page says the Frenet carrier was not found: the carrier was deleted in Shipping > Carriers. Reset the module in Modules > Module Manager to create it again. Until then, saving shows The settings were saved, but the carrier could not be updated.
Uninstall
Go to Modules > Module Manager, open the menu next to VibeFox Frenet and choose Uninstall. The license key and the license status are always removed. The cached quotes are always removed. If Remove data on uninstall is on, the carrier is deleted (orders keep their history) and the settings and log are removed. If it is off, the carrier is only disabled and all settings are kept. Installing the module again, or a Reset, gives the saved carrier back the status it had before: a carrier you had switched off stays off. Existing orders keep the Frenet carrier and the Frenet block on the order page.
Frenet is a trademark of its respective owner. This module is not affiliated with or endorsed by Frenet.
