Free cookie consent management tool by TermsFeedAktualizacja preferencji plików cookie

Kowal Shipping Rules - Magento 2 extension for shipping methods, delivery restrictions, and extra fees.

€61.50 €50.00
COMPOSER Installation
M2-SHIPPING-RULES
  • 2.4.9
  • 2.4.8
  • 2.4.7
  • 2.4.6
  • 2.4.5
  • 2.4.4
  • 2.4.3
  • 2.4.2
  • 2.4.1
  • 2.4.0
  • 2.3.7
  • 2.3.6
  • 2.3.5
  • 2.3.4
Current version of the module v1.0.16

Shipping in an online store is rarely simple. Standard Magento settings work for basic scenarios, but they quickly become insufficient when a store sells products with different dimensions, weights, transport requirements, or handling costs. In practice, this means the need to hide selected delivery methods, add packaging fees, apply exceptions for specific products, and create rules based on country, cart value, or product attributes.

Kowal ShippingRules was created to handle such rules in a single module. The extension combines three areas that are often split across several separate add-ons: shipping methods, shipping method restrictions, and extra fee. This allows the store to manage delivery logic in a more organized and predictable way.

The module lets you create custom shipping methods in Magento 2, assign rates to them, define when a method should be visible, block unavailable delivery options, and add extra charges only when justified by the order conditions. Rules can be based on cart data, shipping address, selected shipping method, and product attributes.

The greatest value of the module is control. The store administrator can define rules that automatically adjust available shipping methods and fees to a specific order. The customer sees more relevant delivery options, and the store team reduces the number of manual corrections after the order is placed.

The problem the module solves

In many Magento 2 stores, delivery cost and availability depend on more factors than just cart value. Products may differ in weight, size, packaging method, category, transport type, or risk of damage. In addition, the store may have different rules for specific countries, regions, postal codes, customer groups, or shipping methods.

Without dedicated rules, common problems appear:

  • the customer selects a parcel locker for a product that does not fit,
  • the store subsidizes shipping for heavy or oversized products,
  • the staff has to contact the customer after the order is placed,
  • some rules are maintained manually outside Magento,
  • logistics fees are not visible in the cart before purchase,
  • shipping methods are visible even though they should not be available,
  • delivery rules are spread across several modules and are difficult to maintain.

Kowal ShippingRules organizes these situations. The module lets you move logistics rules into the Magento admin panel and apply them automatically during shipping selection.

What makes Kowal ShippingRules stand out?

One module instead of several separate extensions

Kowal ShippingRules combines shipping methods, restrictions, and extra fees. This means the store does not need to maintain a separate module for rate tables, another module for blocking shipping methods, and yet another module for extra fee.

Rules based on order data

Decisions can depend on cart contents, product attributes, order value, weight, product quantity, delivery location, and the selected shipping method. This makes it possible to build real logistics scenarios, not just simple rates by country or weight.

Greater transparency for the customer

The customer sees delivery methods matched to the order. If a method is not available, the store can hide it or show a message explaining why it is unavailable. This reduces the number of misunderstandings during checkout.

Better control of operating costs

Additional fees can be charged only in selected cases: for oversized, fragile, or specially packed products, or for specific delivery methods. This allows the store to recover logistics costs that were previously hidden in the margin.

Ready for migration from Amasty

The module was designed as an independent solution, but it takes into account the scenario of moving from Amasty modules used for shipping, restrictions, and extra fee. This means it can be used as a direction for consolidating delivery configuration in one module.

Who is this module for?

Kowal ShippingRules is designed for Magento 2 stores that need more flexibility in delivery management than the standard Magento configuration offers.

The module will be especially useful for stores that:

  • sell heavy, fragile, long, breakable, or oversized products,
  • have different delivery rules for different product categories,
  • need to hide unavailable shipping methods,
  • add fees for packaging, special transport, or logistics handling,
  • want to create custom delivery methods without requiring development work each time,
  • use rules based on product attributes,
  • want to reduce manual handling of exceptions after the order is placed,
  • plan to organize or replace several modules responsible for shipping.

Key capabilities

Creating custom shipping methods

The module lets you create shipping methods managed directly from the Magento admin panel. Each method can have its own name, code, description, sort order, activity status, and availability conditions.

Examples:

  • Delivery by pallet for heavy products,
  • Special transport for products requiring protection,
  • Courier for oversized items for selected categories,
  • Local delivery for selected postal codes,
  • Logistics pickup for custom orders.

Shipping rates based on conditions

Rates can be assigned to methods based on order parameters. Rates can be filtered by country, region, postal code, subtotal, weight, product quantity, and shipping type, among other factors.

Examples:

  • a different delivery price for orders above a specified weight,
  • a separate rate for selected countries,
  • a price based on cart value,
  • different rates for standard and oversized products,
  • rate priority when several rules match at the same time.

Shipping method restrictions

Kowal ShippingRules lets you limit the availability of shipping methods. A rule can hide a method or show the customer a message that a given delivery option is not available for this order.

Examples:

  • hiding parcel lockers for products that are too large,
  • blocking international shipping for selected products,
  • hiding express delivery for orders with products that require assembly,
  • showing the message: This delivery method is not available for oversized products.

Extra Fee, or additional charges

The module enables charging extra fees based on rules. Extra fee can be charged for the entire cart, for each product unit, or for products that meet specific conditions.

Examples:

  • non-standard packaging fee,
  • oversized transport fee,
  • surcharge for products requiring additional protection,
  • logistics fee for a specific delivery method,
  • surcharge for orders to selected regions.

Conditions similar to Magento rules

Kowal ShippingRules uses the condition builder known from Magento. For store staff, this means a way of working similar to cart price rule configuration: choose a condition, operator, and value.

Conditions can apply to:

  • SKU,
  • product category,
  • product type,
  • weight,
  • price,
  • selected product attributes,
  • cart value,
  • product quantity,
  • shipping country,
  • region,
  • city,
  • postal code,
  • coupon code,
  • selected shipping method.

Business benefits

Reducing shipping losses

Not all orders cost the same to handle logistically. Oversized, fragile, or specially packed products often generate additional costs. Kowal ShippingRules lets you add these costs in a controlled way instead of hiding them in the margin or handling them manually after the order.

Fewer incorrect orders

If a customer selects a delivery method that does not fit the product, the store must resolve the issue manually later. The module limits such situations because it can hide unavailable methods before the order is placed.

Better communication with the customer

Instead of removing a method without explanation, the store can show the customer a message. This is especially useful when the restriction results from product characteristics, location, or transport requirements.

Faster order processing

Automatic rules reduce the number of exceptions handled by the sales or logistics team. If the store clearly defines delivery rules at the cart stage, fewer cases require correction after purchase.

One place to manage shipping

Methods, restrictions, and additional fees are linked together. Keeping them in one module reduces the risk of conflicts and makes configuration control easier.

Example use cases

Store with oversized products

The store sells products that cannot be shipped by a standard courier or to a parcel locker. The administrator can mark such products with an attribute and then prepare a rule that hides the parcel locker, shows pallet delivery, and adds an oversized fee.

Result: the customer immediately sees the correct delivery method, and the store does not need to contact them after purchase about an additional charge.

Store with fragile products

Products requiring additional protection can generate a packaging cost. The module lets you add the fee only when the cart contains a product that meets the condition.

Result: the store recovers the packaging cost, and the customer knows the full price before placing the order.

Store with local delivery

The store can make the Local delivery method available only for selected postal codes or regions. For other locations, the method will not be visible.

Result: the customer will not choose a delivery option that the store cannot fulfill.

B2B store

In B2B sales, delivery cost may depend on customer group, order value, region, or product type. The module lets you prepare rules that better match the store's sales policy.

Result: the store can apply different rules for different customer types without maintaining several separate processes.

Store with international delivery

Selected products may not be available for international shipping. The module lets you limit delivery methods for specific countries or product conditions.

Result: the store reduces the risk of orders it cannot fulfill in accordance with its terms or carrier restrictions.

Surcharge for a specific shipping method

If the selected delivery method generates an additional handling cost, you can link an extra fee to it.

Result: the fee appears only when the customer selects a specific shipping method.

Examples of rules you can configure

  • If a product has the gabaryt attribute, hide the parcel locker.
  • If the cart weight exceeds the defined limit, show pallet delivery.
  • If the shipping country is outside Poland, hide selected methods.
  • If the cart contains a product from the delicate category, add a packaging fee.
  • If the cart value is below the defined amount, charge an additional logistics fee.
  • If the customer selects special transport, add extra fee.
  • If the postal code is outside the serviced area, hide local delivery.
  • If the order contains a product of a specific type, show only selected delivery methods.

What does working with the module look like?

The store administrator works in the Magento admin panel. First, they create a shipping method, then assign rates and conditions to it. If restrictions are needed, they can add a restriction for a specific method or group of methods. If the order should include an additional fee, the administrator creates an extra fee rule.

Example process:

  1. Create the Pallet delivery method.
  2. Add a rate for the country Poland and weight above a specified limit.
  3. Add a condition that the method applies to products with the shipping_type = pallet attribute.
  4. Add a restriction hiding the parcel locker for the same products.
  5. Add an extra fee for handling special transport.
  6. Check a test cart and confirm that the customer sees the correct options.

Approach comparison

Standard Magento configuration

Standard Magento allows you to configure basic delivery methods, but more complex scenarios require additional extensions or custom modifications.

Several separate modules

A store can use a separate module for rates, another for restrictions, and another for fees. The problem then is maintaining consistency between configurations.

Kowal ShippingRules

Kowal ShippingRules brings methods, restrictions, and extra fee together in one module. This makes delivery rules easier to understand, maintain, and test.

Elements affecting store SEO

The module is not a direct SEO tool, but it can indirectly support the shopping experience, which matters for conversion and store quality:

  • the customer sees real delivery costs faster,
  • checkout is more predictable,
  • fewer orders require correction after purchase,
  • the store can clearly communicate logistics limitations,
  • delivery rules are more consistent with the product offering.

Better delivery handling can reduce the number of abandoned carts caused by unclear costs or unavailable shipping methods.

Kowal ShippingRules — installation, configuration, and user guide

Purpose of this document

This document describes the practical implementation and operation of the Kowal_ShippingRules module in Magento 2. It is intended for people responsible for module installation, store configuration, implementation testing, and day-to-day management of shipping rules.

The document covers:

  • module installation,
  • basic configuration,
  • creating shipping methods,
  • rate configuration,
  • managing shipping method restrictions,
  • managing Extra Fee additional charges,
  • diagnostics,
  • migration from Amasty modules,
  • a post-implementation testing checklist.

Basic information

Module technical name:

Kowal_ShippingRules

Module location:

app/code/Kowal/ShippingRules

Carrier code:

kowal_shippingrules

The shipping method code in checkout has the following format:

kowal_shippingrules_

Example:

kowal_shippingrules_dostawa_paletowa

Requirements before installation

Before installation, confirm that:

  • the store is running on Magento 2.4.x,
  • the environment uses PHP >=8.1,
  • the Kowal_Base module is available,
  • a backup of files and the database has been created,
  • deployment is first performed in a test or staging environment,
  • it will be possible to run setup:upgrade and setup:di:compile after installation,
  • the tester has access to the admin panel and checkout.

Module installation

1. Upload the module

The module should be located in the directory:

app/code/Kowal/ShippingRules

2. Enable the module

bin/magento module:enable Kowal_ShippingRules

If Kowal_Base is not enabled yet, enable it earlier or together with the module:

bin/magento module:enable Kowal_Base Kowal_ShippingRules

3. Update the database

bin/magento setup:upgrade

This command creates the module tables and adds the columns required to support Extra Fee in quote, order, invoice, and creditmemo.

4. Compile DI

In production:

bin/magento setup:di:compile

5. Clear cache

bin/magento cache:flush

6. Check module status

bin/magento module:status Kowal_ShippingRules

The module should appear on the list of active modules.

Post-installation check

After installation, run diagnostics:

bin/magento kowal:shippingrules:stabilization:check

Full JSON variant:

bin/magento kowal:shippingrules:stabilization:check --json

The command is read-only and does not change data. It checks, among other things:

  • the presence of module tables,
  • the number of records,
  • invalid JSON in conditions,
  • active methods without active rates,
  • Extra Fee rules with a tax class when tax mode is disabled.

If the command returns errors, do not switch the module to production use until they have been clarified.

Basic configuration

Carrier

Path in the Magento admin panel:

Stores / Configuration / Sales / Delivery Methods / Shipping Methods & Rules

Fields:

  • Enabled — enables or disables the kowal_shippingrules carrier.
  • Title — the method group name visible in checkout.
  • Test Method Name — the name of the test configuration method.
  • Test Method Price — the price of the test configuration method.
  • Sort Order — the carrier order in the list of delivery methods.
  • Show Method If Not Applicable — whether to show an error when no methods are available.
  • Displayed Error Message — the message shown when the method is not available.

Most important setting:

carriers/kowal_shippingrules/active = 1

If the carrier is disabled, methods created in the module will not be available in checkout.

Diagnostics and emergency features

Path in the Magento admin panel:

Stores / Configuration / Sales / Shipping Methods & Rules

General Diagnostics section:

  • Enable Debug Logging — saves decision details to the log.
  • Shadow Mode — a mode prepared for comparing behavior during migration.

Restrictions section:

  • Enable Restrictions — enables or disables only restrictions.

Extra Fees section:

  • Enable Extra Fees — enables or disables only additional fees.
  • Fee Tax Mode — defines how tax is handled for Extra Fee.

Available tax modes:

  • Do Not Calculate Tax — the module does not calculate tax on Extra Fee.
  • Calculate by Fee Tax Class — the module calculates tax according to the tax class set on the fee rule.

Default safe settings:

kowal_shippingrules/general/debug = 0kowal_shippingrules/general/shadow_mode = 0kowal_shippingrules/restrictions/enabled = 1kowal_shippingrules/fees/enabled = 1kowal_shippingrules/fees/tax_mode = none

Path:

Sales / Shipping Methods & Rules

Available sections:

  • Shipping Methods — shipping methods and rates,
  • Shipping Restrictions — delivery method restrictions,
  • Extra Fees — additional fees.

Managing shipping methods

When should you create a shipping method?

A shipping method should be created when the store needs its own delivery option, for example:

  • pallet delivery,
  • special transport,
  • local delivery,
  • courier for oversized products,
  • logistics pickup,
  • a method available only for selected products or regions.

Creating a method

Go to:

Sales / Shipping Methods & Rules / Shipping Methods

Then select Add New or edit an existing method.

Typical method fields:

  • Is Active — whether the method is active.
  • Code — the technical method code.
  • Name — the name visible to the customer.
  • Description — the method description.
  • Sort Order — the display order.
  • Store Views — store view visibility.
  • Customer Groups — customer group visibility.
  • Conditions — method availability conditions.

Recommendations for the Code field:

  • use lowercase letters,
  • do not use Polish characters,
  • do not use spaces,
  • use underscores instead of spaces.

Examples:

dostawa_paletowatransport_specjalnykurier_gabarytdostawa_lokalna

The full method code in checkout will have the carrier prefix:

kowal_shippingrules_dostawa_paletowa

Method rates

An active method should have at least one active rate. If the method does not have a matching rate, it will not appear in checkout.

A rate may depend on:

  • country,
  • region,
  • postal code,
  • cart value,
  • weight,
  • product quantity,
  • shipping type,
  • priority.

Price modes:

  • fixed — fixed price,
  • percent_subtotal — percentage of subtotal.

Examples:

  • price 29 zł for shipments up to 30 kg,
  • price 149 zł for pallet delivery,
  • 5% of cart value for special transport,
  • a separate rate for selected postal codes.

Method conditions

Conditions define when the method should be available.

Examples:

  • method available only for products from a selected category,
  • method available only for a specific product attribute,
  • method available only for a cart above a specified value,
  • method available only for a selected shipping country.

If conditions are empty, the method is limited only by status, store view, customer group, and a matching rate.

Managing shipping method restrictions

When should you use restrictions?

Restrictions are used to hide or block shipping methods that should not be available for a specific order.

Examples:

  • hide parcel lockers for oversized products,
  • block international shipping for a selected category,
  • show a message that express transport is unavailable for made-to-order products,
  • hide a delivery method for a selected country.

Creating a restriction

Go to:

Sales / Shipping Methods & Rules / Shipping Restrictions

Then select Add New or edit an existing restriction.

Typical fields:

  • Is Active — whether the restriction is active.
  • Name — internal name.
  • Target Carrier — the carrier affected by the restriction.
  • Target Method — the method affected by the restriction.
  • Action — how it works.
  • Message — message for the customer.
  • Priority — priority.
  • Stop Processing — whether to stop further rule checks.
  • Store Views — store view scope.
  • Customer Groups — customer group scope.
  • Conditions — matching conditions.

Restriction actions

hide:

  • the method will be hidden,
  • the customer will not see it,
  • good for obvious restrictions, such as parcel lockers for oversized items.

error:

  • the method will be shown as unavailable,
  • the customer will see a message,
  • good when it is worth explaining the reason for unavailability.

Priority and Stop Processing

Rules are checked by priority. Higher priority means earlier evaluation.

Stop Processing = Yes means that after this restriction matches, the module does not check further restrictions for that method.

Recommendation:

  • use higher priorities for more specific rules,
  • use lower priorities for general rules,
  • enable Stop Processing if the rule should make the final decision on method availability.

Managing Extra Fee

When should you use Extra Fee?

Extra Fee is used to add additional charges to the order.

Examples:

  • non-standard packaging fee,
  • surcharge for oversized transport,
  • fee for fragile products,
  • logistics fee for a specific delivery method,
  • surcharge for selected regions.

Creating Extra Fee

Go to:

Sales / Shipping Methods & Rules / Extra Fees

Then select Add New or edit an existing fee.

Typical fields:

  • Is Active — whether the fee is active.
  • Name — internal name.
  • Label — fee name visible in totals.
  • Target Carrier — the carrier affected by the fee.
  • Target Method — the method affected by the fee.
  • Price Type — price type.
  • Price — fee value.
  • Apply Mode — charging method.
  • Tax Class ID — tax class if tax mode is used.
  • Priority — priority.
  • Stop Processing — whether to stop further fee calculation.
  • Store Views — store view scope.
  • Customer Groups — customer group scope.
  • Conditions — charging conditions.

Price modes

fixed:

  • fixed amount,
  • for example 19 zł for packaging.

percent_subtotal:

  • percentage of cart value,
  • for example 3% of the order value.

Apply modes

cart:

  • one fee for the entire cart.

per_item:

  • fee multiplied by the product quantity.

per_matching_item:

  • fee charged only for products that meet the conditions.

Example:

If the fee for special protection is 5 zł and there are 3 products in the cart that meet the condition, the per_matching_item mode will charge 15 zł.

Extra Fee tax

By default, tax on Extra Fee is not calculated:

kowal_shippingrules/fees/tax_mode = none

To calculate tax:

  1. Set Fee Tax Mode to Calculate by Fee Tax Class.
  2. Fill in Tax Class ID on the Extra Fee rule.
  3. Test the cart, order, invoice, and creditmemo.

Extra Fee tax should always be verified against the tax configuration of the specific store.

Managing conditions

The module uses a condition builder similar to Magento rules.

Conditions may apply to, among other things:

  • product attributes,
  • SKU,
  • categories,
  • product type,
  • weight,
  • price,
  • cart value,
  • product quantity,
  • shipping country,
  • region,
  • city,
  • postal code,
  • coupon,
  • selected shipping method.

Example condition for an oversized product

Assumption:

  • the product has the shipping_type attribute,
  • the value for oversized shipping is pallet.

Rule:

If a product in the cart has shipping_type = pallet

Possible actions:

  • show the Pallet delivery method,
  • hide the parcel locker,
  • add the Oversized transport fee.

Recommendations when working with conditions

  • create a simple rule first and test it in the cart,
  • avoid too many conditions in one rule,
  • describe rules with clear names,
  • for important rules, use unambiguous product attributes,
  • after changing product attributes, test the cart again.

Diagnostics and logging

Dedicated log file:

var/log/kowal_shipping_rules.log

Debug can be enabled in:

Stores / Configuration / Sales / Shipping Methods & Rules / General Diagnostics

Enable:

Enable Debug Logging = Yes

Recommendations:

  • do not leave debug logging permanently enabled in production,
  • enable debug only for diagnosis,
  • disable debug after testing is complete,
  • analyze logs together with the test cart and rule configuration.

Emergency features

If a problem occurs after deployment, you can independently disable:

The entire carrier

Stores / Configuration / Sales / Delivery Methods / Shipping Methods & Rules / Enabled = No

Effect:

  • methods from the kowal_shippingrules carrier will not be available.

Only restrictions

Stores / Configuration / Sales / Shipping Methods & Rules / Restrictions / Enable Restrictions = No

Effect:

  • methods will not be hidden or blocked by restrictions.

Only Extra Fee

Stores / Configuration / Sales / Shipping Methods & Rules / Extra Fees / Enable Extra Fees = No

Effect:

  • additional fees will not be charged.

Migration from Amasty

Migration goal

Migration from Amasty is intended to help move restriction and extra fee configuration to Kowal_ShippingRules.

The Kowal module does not require Amasty for normal operation. Amasty can be used as a migration data source and as a reference point during testing.

Supported data sources

The migrator analyzes:

amasty_shiprestriction_ruleamasty_extrafeeamasty_extrafee_option

Target tables:

kowal_shipping_restrictionkowal_shipping_fee

Migration safety rules

The migration was designed carefully:

  • the report is read-only,
  • dry-run does not save data,
  • apply works as preview by default,
  • saving requires the explicit --execute option,
  • only records with the ready status are saved,
  • manual_review and unsupported records are skipped,
  • migration is idempotent thanks to the migration_source and migration_source_key fields,
  • migration does not disable Amasty,
  • migration does not switch traffic automatically.

Step 1 — base report

Run:

bin/magento kowal:shippingrules:amasty:report

The report will be saved to:

var/report/kowal_shippingrules_amasty_report.json

The report shows the presence and record counts of Amasty tables and Kowal tables.

Step 2 — transformation dry-run

Run:

bin/magento kowal:shippingrules:amasty:report --dry-run --limit=100

Dry-run prepares the transformation plan, but does not save anything.

Record statuses:

  • ready — the record can be moved automatically,
  • manual_review — the record requires manual review,
  • unsupported — the record is not supported by the automatic migrator.

If the report contains many manual_review or unsupported items, those rules should be reviewed before apply.

Step 3 — apply preview

Run:

bin/magento kowal:shippingrules:amasty:apply --limit=100

This still does not save data. The command shows how many records would be created, skipped, or end with an error.

Step 4 — apply restrictions

After accepting the preview:

bin/magento kowal:shippingrules:amasty:apply --type=restrictions --limit=100 --execute

The command will save only restrictions with the ready status.

Step 5 — apply Extra Fee

After accepting the preview:

bin/magento kowal:shippingrules:amasty:apply --type=fees --limit=100 --execute

The command will save only extra fees with the ready status.

Step 6 — post-migration diagnostics

Run:

bin/magento kowal:shippingrules:stabilization:check

Also check the admin panel:

Sales / Shipping Methods & Rules / Shipping RestrictionsSales / Shipping Methods & Rules / Extra Fees

Step 7 — comparative tests with Amasty

Before disabling or replacing Amasty configuration, compare the results for test carts.

Recommended carts:

  • standard product,
  • oversized product,
  • fragile product,
  • several products with different conditions,
  • an order with different shipping countries,
  • an order with different postal codes,
  • an order with a coupon,
  • an order with a method covered by Extra Fee.

For each cart, check:

  • available shipping methods,
  • hidden methods,
  • error messages,
  • charged extra fees,
  • gross/net amounts if tax fee is used,
  • order,
  • invoice,
  • creditmemo.

Step 8 — switch-over decision

Only after approving the results should you plan switching the production configuration.

Recommendations:

  • do not disable Amasty without a backup,
  • do not remove Amasty data immediately after migration,
  • first disable operation on the configuration side,
  • preserve rollback capability,
  • prepare a list of rules requiring manual correction.

Rollback after migration

If a problem occurs:

  1. Disable the Kowal ShippingRules carrier.
  2. Disable Enable Restrictions.
  3. Disable Enable Extra Fees.
  4. Restore the previous Amasty configuration.
  5. Check checkout.
  6. Keep migration reports for analysis.

Post-implementation checklist

Technical

  • module:status shows Kowal_ShippingRules as active,
  • setup:upgrade completed without errors,
  • setup:di:compile completed without errors,
  • cache:flush executed,
  • stabilization:check returns no errors,
  • the admin panel shows the Shipping Methods & Rules menu,
  • the log file is being written when debug is enabled.

Configuration

  • the carrier is enabled,
  • at least one shipping method has been created,
  • the active method has an active rate,
  • store views are set correctly,
  • customer groups are set correctly,
  • restrictions are enabled or intentionally disabled,
  • extra fees are enabled or intentionally disabled,
  • tax mode matches the store tax configuration.

Checkout

  • the method appears for a cart that meets the conditions,
  • the method does not appear when there is no matching rate,
  • the hide restriction hides the method,
  • the error restriction shows a message,
  • extra fee appears in totals after selecting the method,
  • changing the shipping method recalculates the fee,
  • the order includes fee amounts,
  • the invoice includes fee amounts,
  • the creditmemo refunds the fee correctly.

Most common issues

The method does not appear in checkout

Check:

  • whether the carrier is enabled,
  • whether the method is active,
  • whether the method has an active rate,
  • whether the rate matches the country, region, postal code, weight, and subtotal,
  • whether the store view is correct,
  • whether the customer group is correct,
  • whether the method conditions are met,
  • whether a restriction is hiding the method.

Extra Fee is not being charged

Check:

  • whether Enable Extra Fees = Yes,
  • whether the fee is active,
  • whether target carrier and target method are correct,
  • whether the fee conditions are met,
  • whether a shipping method has been selected,
  • whether the fee price is greater than zero,
  • whether Stop Processing in an earlier rule has not stopped further fee calculation.

The restriction is not working

Check:

  • whether Enable Restrictions = Yes,
  • whether the restriction is active,
  • whether target carrier and target method are correct,
  • whether the restriction conditions are met,
  • whether the rule priority is correct,
  • whether another rule with Stop Processing is not ending processing earlier.

Extra Fee tax is not being calculated

Check:

  • whether Fee Tax Mode = Calculate by Fee Tax Class,
  • whether the fee rule has Tax Class ID set,
  • whether Magento tax configuration returns a tax rate for the address,
  • whether the cart has a shipping address,
  • whether the fee is actually being charged.

Best practices

  • Configure simple rules first, then add more conditions.
  • Prepare a test cart for each important rule.
  • Use clear names for methods, restrictions, and fees.
  • Avoid several very similar rules with the same priority.
  • Document the reason for creating a restriction or fee in the name.
  • After changing product attributes, run a checkout test.
  • Enable debug logging only for diagnosis.
  • Perform Amasty migration in stages: report, dry-run, preview, execute, QA.

Related documents

  • README.md — technical module description for developers.
  • docs/WDROZENIE.md — detailed implementation documentation and architecture.
  • docs/OPIS_MARKETINGOWY.md — module marketing description.

Questions and Answers

Question
Co robi Kowal ShippingRules?
Answer
Kowal ShippingRules pozwala zarządzać metodami wysyłki, restrykcjami dostawy i dodatkowymi opłatami w Magento 2. Reguły mogą zależeć od koszyka, produktów, adresu dostawy i wybranej metody wysyłki.
Question
Czy moduł pozwala tworzyć własne metody wysyłki?
Answer
Tak. Moduł umożliwia tworzenie metod wysyłki w panelu Magento i przypisywanie do nich stawek oraz warunków dostępności.
Question
Czy można ukrywać metody dostawy?
Answer
Tak. Moduł może ukryć metodę dostawy, jeśli zamówienie nie spełnia określonych warunków. Może też pokazać komunikat, że metoda nie jest dostępna.
Question
Czy można doliczać extra fee?
Answer
Tak. Extra fee może być naliczane dla całego koszyka, każdej sztuki produktu albo tylko dla produktów spełniających warunki.
Question
Czy reguły restrykcji mogą działać na atrybutach produktów?
Answer
Tak. Reguły mogą uwzględniać atrybuty produktów, SKU, kategorię, typ produktu, wagę, cenę i inne dane dostępne w koszyku.
Question
Czy moduł obsługuje produkty gabarytowe?
Answer
Tak. To jeden z głównych scenariuszy użycia. Moduł może ukryć niedostępne metody dostawy i doliczyć opłatę za transport gabarytowy.
Question
Czy moduł nadaje się do sklepów B2B?
Answer
Tak. Sklepy B2B często potrzebują reguł zależnych od wartości koszyka, grup klientów, regionów dostawy lub typów produktów. Moduł wspiera takie scenariusze.
Question
Czy moduł zastępuje kilka osobnych rozszerzeń?
Answer
W wielu przypadkach tak. Kowal ShippingRules łączy funkcje metod wysyłki, restrykcji i dodatkowych opłat.
Question
Czy obsługa sklepu może pracować z modułem bez programisty?
Answer
Tak, bieżące reguły można konfigurować w panelu Magento. Programista jest potrzebny głównie przy wdrożeniu, testach technicznych i ewentualnych integracjach z niestandardowym checkoutem.
Write Your Own Review
You're reviewing:Kowal Shipping Rules - Magento 2 extension for shipping methods, delivery restrictions, and extra fees.
Your Rating