Magento 2 Shipping Restrictions Extension

View Demo

Hide or disable shipping methods at checkout when a rule matches the products, cart, shipping address, customer or time of day.

Restrict by country, state, city or ZIP code, product attributes and categories, backorders and stock source, and show customers a message that explains how to unlock a method. Set separate rules per store view and customer group.

  • Restrict methods by country, state, city or ZIP code
  • Restrict methods for specific products and categories
  • Hide express shipping for backordered items
  • Schedule restrictions by day and time
  • Explain restrictions with a custom message
  • Reuse locations with Shipping Areas
Marketplace Approved
Hyvä
Magento Cloud
WCAG
Mage-OS
Compatible with:
Community:
2.3.* - 2.4.9
Enterprise:
2.3.* - 2.4.9

Hide shipping methods that don't fit the order

Shipping Restrictions hides or disables a shipping method at checkout whenever a rule matches the cart, the products in it, the shipping address, the customer or the time of day. Out of the box, Magento only lets you limit a carrier to certain countries. With this extension you decide method by method: no express shipping for oversized items, no next-day delivery on Friday afternoon, no ground freight to islands.

  • Restrict by country, state, city or ZIP code, including ZIP prefixes and patterns
  • Restrict by product attributes, category or SKU in the cart
  • Restrict by cart subtotal, weight and item quantity
  • Restrict by backordered items, stock source, company and the customer's number of orders
  • Restrict by day of the week and time of day
  • Show customers why a method is unavailable, or hide it silently

Restrict shipping by country, state, city or ZIP code

Offer only the methods that actually reach the customer's address

Shipping method shown as unavailable for a restricted region at checkout

Set which shipping methods are available for each country, state or region, city and ZIP code. A ZIP condition can match an exact code, a prefix (all codes starting with "99") or a regular expression, so a whole postal range takes one line instead of hundreds.

Restrict a single method of a carrier or the whole carrier. If a rule hides every method for a region, you have effectively stopped shipping there.

For example, a florist can block slow delivery methods for cut flowers to regions where delivery takes several days, because the flowers won't survive the trip.

Restrict shipping methods for specific products

Combine product and cart conditions for any rule your business needs

Product attribute conditions in a shipping restriction rule

Build conditions from product attributes, categories and SKUs in the cart, and combine them with cart conditions such as subtotal, total weight and item quantity. Rules use the familiar Magento condition builder, so "if any item in the cart is in the Batteries category" or "if total weight is over 30 kg" takes a minute to set up.

This keeps fragile, perishable, high-value or regulated goods away from methods that can't handle them.

For example, li-ion batteries ship as dangerous goods and need a carrier that accepts them. Restrict every other method for carts that contain batteries. In the same way, you can block truck freight for heavy items to regions where trucks can't deliver.

Stock, backorders and repeat customers

Some restrictions depend on where the goods are and who is buying, not on the address. The extension adds conditions that Magento's own rule builder doesn't have:

  • Backordered items: hide express shipping when all items, or at least one item, in the cart are on backorder.
  • Stock source: with Multi-Source Inventory, offer a method only when a specific warehouse has the item in stock.
  • Number of orders: treat first-time buyers and repeat customers differently, for example offer a premium delivery method only to customers with several orders.
  • Company: apply a rule only when the shipping address includes a company name, which suits B2B freight methods.

Apply restrictions exactly where you need them

Restrict methods per store view, customer group and carrier

Select one or more store views and customer groups for each rule. Choose whole carriers or individual methods, several at once if needed.

Restrictions work with any carrier that returns rates to Magento, including third-party carrier modules and Shipping Table Rates. They apply on the Luma and Hyvä storefronts, including Hyvä Checkout.

Each rule also has an "Apply in admin" switch: keep it on to restrict methods for orders created in the admin, or turn it off so your staff can still choose any method.

Store view, customer group and carrier settings of a restriction rule

Tell customers how to unlock a method

Restriction message shown next to an unavailable shipping method

Write a message for each rule, and customers see it next to the unavailable method at checkout. Use it to say what would unlock the method, for example "Free express shipping is available for orders over $100".

The message goes through Magento's translations, so a multilingual store shows it in each store's language. Leave the message empty to hide the method silently.

Schedule restrictions by day and time

Add day-of-week and time-of-day conditions to any rule. Select one or several days and set the hours when the rule is active.

This is how you set a cut-off: hide next-day delivery from Friday to Sunday and after 3 PM on weekdays, when your warehouse can no longer ship the same day.

Day of week and time of day conditions in a restriction rule

Reuse locations with Shipping Areas

Shipping Area with included and excluded locations

A Shipping Area is a saved set of locations: countries, states, cities and ZIP codes, with some included and others excluded. Build "Remote islands" or "Local delivery zone" once and use it as a condition in any rule instead of repeating the same list.

The same Shipping Areas work in Shipping Rules, Shipping Table Rates and Surcharge. To change shipping prices instead of hiding methods, use Shipping Rules. Setup details are in the user manual.

Full Features List

  • Restrict a whole carrier or individual methods
  • Conditions on product attributes, category and SKU
  • Conditions on cart subtotal, weight and item quantity
  • Day-of-week and time-of-day schedule
  • Hide a method silently or show a message
  • Translatable restriction messages

Address conditions:

  • Country
  • State or province
  • City
  • ZIP code, prefix or regular expression
  • Company
  • Shipping Area

Order and customer conditions:

  • Backordered items (all or at least one)
  • Stock source with available quantity (MSI)
  • Customer's number of orders
  • Payment method
  • Store views and customer groups
  • Apply to admin orders or skip them
Install Shipping Restrictions and show every customer only the shipping methods you can deliver.
No hidden fees
Our developers install the extension on your store and configure it for your setup, free of charge.
Lifetime access to source code
Access to free support and updates for 1 year
Updates and support prolongation - $90

Pay today $149 for the first year.

Then $90 for updates and support services per year.

Cancel anytime.

30 days money back guarantee
See it in action!
Pick a quick tutorial to learn about various aspects of this extension
Customer Reviews 6
Earn points for your review about this extension modules. $1 = 10 points
Write Your Own Review

check-circle You submitted your review for moderation.

BBMC Verified Buyer
From Carol Stream, United States
Using the module for over 3 years
Essential for stores with geographic or compliance restrictions
For businesses that cannot sell or ship every product to every location, Shipping Restrictions provides functionality that Magento is badly missing.

Rules are straightforward to create and can be customized around the locations or conditions that apply to your business. This is especially important for companies dealing with regulatory, compliance or product-specific shipping limitations where simply allowing an order and cancelling it afterward is not acceptable.

Installation and configuration are relatively simple, and the extension does its job without unnecessarily complicating checkout.

For certain industries this is not just a convenience—it is a requirement.
Also installed:
Help Desk MX,  Knowledge Base,  Full Page Cache Warmer,  Advanced Product Feeds,  Follow Up Email,  Reward Points,  Promo Banners and 28 more
Allmakes Verified Buyer
From Abingdon, United Kingdom
Using the module for almost 1 year
Quick & Simple
A simple, elegantly written module by Mirasvit to solve quite a niche, but important problem where certain places have special rules. Hits the nail on the head.
Also installed:
Elastic Search Ultimate,  Layered Navigation,  Advanced SEO Suite
BB Verified Buyer
From Carol Stream, United States
Using the module for over 2 years
Does what it says
If you can't ship specific products to specific places, then this is for you. It does exactly what it says.

I wish the notification shown when its is triggered could be customized more, but other than that, it does exactly what I need it to.
Also installed:
Help Desk MX,  Knowledge Base,  Full Page Cache Warmer,  Advanced Product Feeds,  Follow Up Email,  Reward Points,  Promo Banners and 28 more
BB Verified Buyer
From Carol Stream, United States
Using the module for over 2 years
Simple, works, and easy to configure
No issues with the extension, and works as expected. Great functionality for filters of what to restrict and not restrict based on customer or shipping variables. Great extension
Also installed:
Help Desk MX,  Knowledge Base,  Full Page Cache Warmer,  Advanced Product Feeds,  Follow Up Email,  Reward Points,  Promo Banners and 28 more
wrc Verified Buyer
From Istanbul, Turkey
Using the module for 14 days
Finally a solution to complicated shipping!
The extension allows restricting shipping methods that maximizes profit! Features are excellent. Helps me make shipping options look and be relevant to shoppers. This is good to avoid any possible mess. Thank you Mirasvit.
Also installed:
Health & Performance Monitoring Suite,  Full Page Cache Warmer,  Reward Points,  Follow Up Email,  Advanced Reports,  Help Desk MX,  Advanced SEO Suite and 30 more
Manual & Support
Need more help?

Save time by starting your support request online and we'll connect you to an expert.

Frequently asked questions
chevron-down chevron-right

Can the shipping restriction be applied to particular products?

Yes. Build the rule's conditions from product attributes, categories or SKUs in the cart, and combine several attributes to target exactly the products that need limited shipping.

chevron-down chevron-right

Can a customer see why a shipping method is unavailable in their cart?

Yes, if the restriction rule has a message: the customer sees it next to the unavailable method at checkout. You write a separate message for each rule, or leave it empty to hide the method silently.

chevron-down chevron-right

Can the module restrict selected shipping methods on specified days?

Yes. The extension adds day-of-week and time-of-day conditions to the standard Magento conditions. Use them to schedule a restriction, for example to hide next-day delivery on weekends or after your daily cut-off time.

chevron-down chevron-right

Is it possible to entirely restrict shipping to certain regions?

Yes. Create a rule that hides every shipping method for that region, and customers there won't be able to select any method.

You can specify locations by country, state, city and ZIP code, including ZIP prefixes and regular expressions. Use a Shipping Area to apply the same rule to several locations.

chevron-down chevron-right

Does it work with third-party shipping carriers and table rate modules?

Yes. The extension filters the rates of any carrier that returns them to Magento, including third-party carrier modules and Shipping Table Rates.

chevron-down chevron-right

Can I block one product from shipping to a country and show a message?

Yes. Combine a product condition (attribute, category or SKU) with a country condition and add a message to the rule. The message text is set per rule, so write it with the product in mind: the product name isn't inserted automatically.

chevron-down chevron-right

Do restrictions apply to orders created in the admin?

That's up to you. Each rule has an "Apply in admin" switch: on by default, so admin orders follow the same restrictions, or off, so your staff can choose any method.

chevron-down chevron-right

Can I hide express shipping when an item is backordered?

Yes. Use the Backordered Items condition and choose whether the rule applies when all items or at least one item in the cart are on backorder.

Changelog
Version 1.2.0Oct 16, 2026
Hyvä support now ships with the extension — The companion package mirasvit/module-shipping-restriction-hyva is gone: the restriction messages in the Hyvä cart shipping estimate and in the Hyvä Checkout shipping step are now part of Shipping Restrictions itself. There is no second package to find and keep in step, and on a Luma store the Hyvä part simply stays dormant. Composer removes the companion package by itself when you upgrade.
⚠️ Hyva_MirasvitShippingRestriction is gone, not renamed — Its templates and layouts now live inside Mirasvit_ShippingRestriction, and the extension no longer depends on hyva-themes/magento2-compat-module-fallback. You only need to act if you referenced Hyva_MirasvitShippingRestriction yourself — in a custom di.xml, a layout file, or a deployment script that enables modules by name.
⚠️ If you overrode a Hyvä shipping template in your theme, repoint it — Hyva_MirasvitShippingRestriction::cart/shipping.phtml is now Mirasvit_ShippingRestriction::cart/shipping-hyva.phtml, and Hyva_MirasvitShippingRestriction::checkout/shipping/method-list.phtml is now Mirasvit_ShippingRestriction::checkout/shipping/method-list-hyva.phtml. Both stay Hyvä-only: Luma shows the same messages with its own Knockout templates, which did not change. An override at the old path is simply not read, with no error to say so.
⚠️ Hyvä stores need hyva-themes/magento2-theme-module 1.3.14 or later, and Hyvä Checkout 1.3.1 or later — The Hyvä templates now apply on every Hyvä store, not only where the companion package was installed, and they use view models those versions introduced. Composer refuses the upgrade on an older Hyvä instead of letting the cart or checkout break.
After upgrading a Hyvä store, run bin/magento hyva:config:generate and rebuild your theme's Tailwind CSS, so the build picks up the templates from their new location.
The extension's entry in the admin role permissions tree is now titled "Shipping restriction" and is translated into all 16 supported languages, instead of always showing in English.
The Luma cart lost its shipping estimate when the Hyvä package was installed — On a store with both a Luma and a Hyvä store view, the companion package put its Hyvä template on the Luma cart too, where it could not render, so the "Estimate Shipping and Tax" block disappeared from the Luma cart. The Hyvä template now only applies to Hyvä store views.
A long restriction message no longer spills out of its box — A message with a long unbroken word pushed past the cart summary and the checkout shipping step, on both Luma and Hyvä and most visibly on mobile. It now wraps inside its box.
Restriction messages in the Hyvä Checkout shipping step are now always translated — In one of the two ways the shipping method list can be shown, the message was printed exactly as entered in the admin, ignoring store view translations. Both now use the translated text.
Version 1.1.13Sep 23, 2026
Internal code improvements and maintenance.
Version 1.1.12Aug 17, 2026
Fixed a case where saving a shipping restriction could clear its conditions.
Version 1.1.11Jul 21, 2026
Migrated saved table-rate method references (mstrate/mstrate_<id> → mstrate/mstrate<id>) to match the new underscore-free method code format introduced in Mirasvit_ShippingTable 0.2.1. Without this, restrictions targeting a Table Rates method would silently stop matching after the update.
Version 1.1.10May 19, 2026
Localized to 15 core e-commerce locales (ar, cs, de, es, fr, it, ja, nl, pl, pt-BR, pt-PT, sv, tr, uk, zh-Hans)
Reasons to choose Mirasvit
Client focusing and satisfaction

These are our primary. A major portion of our new clients come from referrals from our existing clients. Our professional team of developers, marketers and support staff have invested the best knowledge and experience in the field into our work, so you know you can come back to us again and again.

Remarkable support

One year free and high quality support. We go to great lengths to provide maximum satisfaction with every module you have purchased in our store. By helping you with installation, configuration, answering your every question, we do all our best to eliminate any possible problems.

Risk-free Investment

30-days money back guarantee. If you are not satisfied with our extension performance for any reason, we provide a full refund.

Constant improvements and upgrades

We constantly add new features to all our modules, and are always interested in hearing your opinion and implementing your suggested features in our future developments.

Comprehensive Documentation

We provide an expanded user guide for every aspect of our extension, so you can find answers for all your burning questions.

Unencrypted source code of our products

You can customize extension according to your needs and requirements.

Usability and Performance

The Module is easy to install and upgrade, just follow our step-by-step user guide. Additionally, the extension is ready to use with the Hyvä theme.

Ready for Magento Cloud

No core modifications. The extension has been tested in a Magento Cloud environment and is fully compatible with it.

Loading...