Introduction to OpenCart shipping
A correct shipping setup is critical for any eCommerce store. OpenCart gives you flexible ways to calculate shipping costs by area, weight, order value, and business rules.
This guide explains the core shipping concepts, the built-in OpenCart options, and when it makes sense to move to dedicated courier integrations.
Basic Concepts
- Shipping Methods: Rules and charges that apply to product delivery, such as flat rate or free shipping.
- Geographical Zones (Geo Zones): Groups of countries or regions where specific shipping methods and charges apply.
- Weight Classes: Weight units, such as kilograms or grams, used to calculate shipping costs, especially with Weight Based Shipping.
- Tax Classes: They determine whether and how to tax shipping costs.
Geographical zones
Geographic Zones allow you to set different shipping charges for different areas. For example, you can have a zone for "Inside Attica", one for "Other Greece" and one for "Outside".
To manage Geographic Zones, go to System > Localization > Geo Zones.
- Click "Add New".
- Enter a "Geo Zone Name" (e.g., "Greece - Mainland").
- Add a short description.
- Click on "Add Geographic Zone" to select Country and Area (Zone). You can add multiple countries/regions to a geographical area.
- Save.
Important to Zones
A country or region can belong to multiple geo zones. OpenCart applies the shipping method that matches the configured zone and sort order.
Weight Classes
Weight classes are required if you plan to use Weight Based Shipping or courier extensions that calculate cost by weight.
To manage the Weight Classes, go to System > Localization > Weight Classes.
- Click "Add New".
- Enter a "Weight Class Name" (e.g., "Kilogram").
- Enter the unit (e.g., "kg").
- Set the value as a ratio against the default weight class. The default class should be 1.00000. For example, if the default is "Kilogram", the value for "Gram" should be 0.001.
- Save.
The default weight class is defined in System > Settings > Edit Store > Local tab > Weight Class.
Tax classes for shipping
You can specify whether the shipping costs will be subject to VAT. This is done through Tax Classes.
To manage Tax Classes, go to System > Localization > Tax Classes.
- Either create a new tax class or edit an existing one.
- Add a "Tax Rate" and in the "Based On" field select "Shipping Address".
- Then, in each shipping method (e.g., Flat Rate), you can choose the corresponding "Tax Class".
Built-in shipping methods
OpenCart includes several built-in shipping methods. To activate and adjust them, go to Extensions > Extensions, select "Shipping" from the filter, then install or edit the desired methods.
Flat Rate (fixed cost)
Charges a fixed amount for shipping, regardless of weight or quantity.
- Cost: The fixed shipping cost.
- Tax Class: Select the tax class for shipping.
- Geo Zone: Select the geographical area to which this method will apply.
- Status: Enabled/Disabled.
- Sort Order: The display order at checkout.
Free Shipping
Offers free shipping, usually when the order exceeds a certain amount.
- Total: Minimum order amount to activate free shipping.
- Geo Zone: Select the geographical zone.
- Status: Enabled/Disabled.
- Sort Order: Sort order.
Weight Based Shipping
Charges shipping based on the total order weight. It requires correctly configured weight classes and product weights.
- Rates: Set the charges in this format
Weight: Cost, Weight: Cost. For example: 1:5.00, 2:7.00, 5:10.00 means up to 1kg costs 5.00, up to 2kg costs 7.00, and up to 5kg costs 10.00. - Tax Class: Tax class.
- Geo Zone: Geographical zone.
- Status: Status.
- Sort Order: Sort order.
Per Item
Charges a fixed amount for each item on the order.
- Cost: The cost per item.
- Tax Class: Tax class.
- Geo Zone: Geographical zone.
- Status: Status.
- Sort Order: Sort order.
Shipping Extensions (Couriers)
For more complex needs, such as direct cost calculation by courier companies (e.g., ACS Courier, Geniki Taxydromiki Courier, ELTA Courier), you will need specialized extensions.
- Many of these extensions are available through our courier plugins hub and, where needed, through the official OpenCart Marketplace.
- These extensions often require API keys from the courier company and can support voucher creation, shipment tracking, and status updates.
- Installation and setup are usually done through
Extensions > Extension Installer and then Extensions > Extensions > Shipping.
Best Practices
- Clear charges: Make sure customers understand how shipping costs are calculated before reaching checkout.
- Exact Geographic Zones: Set the geographical zones correctly to avoid wrong charges.
- Consistent Product Weight: If you are using weight-based shipping, make sure that all products have the right weight registered.
- Free shipping offer: Consider offering free shipping above a certain order amount, as it can be a strong purchasing incentive.
- Test: Always test shipping settings with different scenarios, including products, quantities, and locations, to make sure they work as expected.
- Customer communication: Provide clear information on delivery times and shipment policies.
Dealing with Problems
- No shipping method appears:
- Check if you have activated at least one shipping method.
- Make sure the customer's address matches a configured geo zone with an active shipping method.
- Check if the items in the cart require shipping (in the "Data" tab of the product).
- If you are using "Free Shipping", check if the entire order meets the limit.
- If you use "Weight Based Shipping", make sure products have weights and the total weight is covered by defined rules.
- Wrong shipping charge:
- Check the settings of this shipping method, including cost and weight rules.
- Check the Geographical Zone and Weight Classes.
- Check the tax class assigned to the shipping method.
- Problems with courier extensions:
- Make sure you have entered the API keys correctly.
- Check the compatibility of the extension with your OpenCart version.
- See the extension's documentation or contact its developer.
Shipping automation with courier plugins
As order volume grows, manually creating vouchers in each courier panel starts costing time and creating errors. OpenCart courier plugins connect checkout and admin workflows with ACS, Speedex, Geniki Taxydromiki, Box Now, ELTA, or Courier Center so shipping work can start from the order itself.
Automation can include shipping-cost calculation, visibility rules, pickup points, voucher creation, labels, tracking links, and order-status updates. The team manages fewer tabs and the customer receives clearer delivery information.
- Less manual copying of order details
- More reliable voucher creation and tracking
- Better control over cash on delivery and shipping cost
Shipping setup: common mistakes
Most shipping issues are not caused by OpenCart itself. They come from mismatched geo zones, weight classes, tax classes, and checkout rules. A small mistake can hide a shipping method or show the wrong cost.
Before a change goes live, test different addresses, weights, free-shipping products, cash on delivery, and the courier plugin flow.
Wrong weight classes
Products without weight or with the wrong unit make weight-based shipping unreliable.
Missing geo zones
If the address does not match an active zone, the method will not appear.
Tax on shipping
The wrong tax class creates differences in the final order total.
Free shipping rules
The free-shipping threshold must be tested with coupons, VAT, and mixed carts.