The ProductRate shipping extension is the original Magento solution developed by ShipperHQ that enables you to charge per‑product shipping fees. Set a shipping fee on each product in your catalog and ProductRate will total the charges at checkout.
For businesses seeking even greater shipping customization, real‑time carrier rates, multi‑origin shipping, delivery dates, and more, consider upgrading to ShipperHQ.
- Per‑Product Shipping Fees: Define a specific shipping charge on each product.
- Quantity Surcharges: Optionally add a flat or percentage surcharge when multiple units of the same product are in the cart.
- Simple Admin Workflow: Configure directly on the product—no CSVs required.
- Works Alongside Other Methods: Can run alongside other carrier rates; For advanced capabilities such as dimensional shipping and time‑in‑transit, check out ShipperHQ.
Install using Composer and run the Magento setup commands:
composer require webshopapps/module-productrate
# Enable the module (if not auto-enabled)
php bin/magento module:enable WebShopApps_ProductRate
# Apply database schema/data updates
php bin/magento setup:upgrade
# (Recommended) Clear caches and reindex
php bin/magento cache:flush
php bin/magento indexer:reindex
# (Production mode) Compile DI
php bin/magento setup:di:compile- Magento 2.4.4+
- Compatibility with earlier editions is possible but not maintained
- Supports both Magento Opensource (Community) and Magento Commerce (Enterprise)
Follow these steps to get ProductRate running quickly:
-
Enable ProductRate
- Log in to your Magento Admin.
- Go to
Stores > Configuration > Sales > Shipping Methods > WebShopApps Product Rate. - Set
EnabledtoYesand save.
-
Set a Shipping Fee on Products
- Go to
Catalog > Productsand edit a product. - Open the
Shippingsection. - Enter the per‑item amount in
Shipping Fee(ProductRate) and save.
- Go to
-
Optional: Quantity Surcharges
- ProductRate can add a flat or percentage surcharge when more than one of the same product is in the cart.
- See the ProductRate configuration guide for setup details and examples.
-
Test Checkout
- Add your product to the cart.
- Go to the cart or checkout to estimate shipping. The ProductRate method will reflect the product’s fee plus any configured surcharge.
As a free extension, ShipperHQ ProductRate is provided as‑is without support.
ShipperHQ ProductRate is provided AS IS and we are not accepting feature requests at this time. Extended functionality and full support is available via ShipperHQ.
The per‑product Shipping Fee is applied, and if configured, a flat or percentage surcharge is added when multiple units of the same product are in the cart. If several products have ProductRate fees, those fees are summed.
Yes. Set the product’s Shipping Fee to 0.00. You can still offer other carrier methods alongside ProductRate if desired.
- Ensure the method is enabled and the product has a
Shipping Feeset. - Confirm the product is shippable (not virtual) and you are viewing the correct website/store scope.
- Check Magento logs:
var/log/system.logandvar/log/exception.log.
This extension borrows standard Magento shipping patterns to remain familiar and reliable for merchants.
The composer structure is taken from various sources, most heavily using structure from https://github.com/sjparkinson/static-review.
Assistance around composer, Magento2 structure, etc was also taken from these sources:
- https://github.com/Genmato/MultiStoreSearchFields
- https://alankent.wordpress.com/2014/08/03/creating-a-magento-2-composer-module/
- https://github.com/SchumacherFM/mage2-advanced-rest-permissions
Any contribution is highly appreciated. The best way to contribute code is to open a pull request on GitHub.
See license files.
We also dutifully respect the Magento OSL license.
Copyright (c) 2015 Zowta LLC & Zowta Ltd.