Description
Restrictor de Envíos España lets you block WooCommerce checkout for selected Spanish provinces or regions, or restrict orders to mainland Spain only — with one click and a message you control.
What it does
- Block checkout for the Canary Islands, Ceuta, Melilla, or any combination of Spanish provinces you choose.
- One-click shortcut to sell to mainland Spain only, automatically excluding the Canary Islands, Ceuta, Melilla and the Balearic Islands.
- Show your own custom message explaining why the order can’t be placed, instead of a generic WooCommerce error.
- Double-checked: the restriction is shown on the page and verified again when the order is placed, so it can’t be bypassed by editing the address after the notice appears.
- Compatible with WooCommerce High-Performance Order Storage (HPOS).
Use cases
- Sell only to mainland Spain, automatically excluding the Canary Islands, Ceuta, Melilla and the Balearic Islands.
- Block orders from the Canary Islands when your carrier or logistics don’t reach them.
- Block orders from Ceuta and Melilla for the same reason.
- Replace a confusing generic checkout error with a clear explanation your customers understand.
- Add a safety net against orders placed from outside your delivery zone, re-checked right before the order is confirmed.
Works with any carrier
Restrictor de Envíos España restricts orders based on the customer’s address during checkout, before any shipping method is chosen — so it works alongside whatever carrier or shipping plugin you already use, including Correos, SEUR, MRW, GLS, Correos Express or Nacex. There’s nothing to configure on the carrier side.
Screenshots


Installation
- Upload the plugin files to
/wp-content/plugins/restrictor-envios-espana, or install the plugin through the Plugins screen in WordPress directly. - Activate the plugin through the ‘Plugins’ screen in WordPress.
- Go to WooCommerce > Settings > Restricción España to choose which provinces or regions to restrict and to write your own custom message.
FAQ
-
Does it work with the new block-based WooCommerce checkout?
-
Yes, but there’s a difference in when the message appears. In the classic checkout, it updates live as the customer edits their address. In the block-based checkout, the message is shown when the page loads with an address already saved on the account; if the customer types a new address without reloading the page, the message won’t update live. Either way, the plugin checks the address again when the order is placed, so a restricted order is always blocked, even if the on-page message didn’t update in time.
-
Is it compatible with High-Performance Order Storage (HPOS)?
-
Yes, it’s fully compatible with HPOS.
-
Can I write my own message for customers?
-
Yes. You choose exactly what customers see when their order is blocked, instead of a generic WooCommerce error.
-
What happens if a customer changes their address after the message appears?
-
The restriction is checked again when the order is placed, so it can’t be bypassed by editing the address after the on-page notice shows.
-
Can I also exclude specific postal codes, not just provinces?
-
The free version restricts by province or region. It doesn’t include postal-code-level exclusions.
-
Is there a version with more features?
-
Yes. Restrictor de Envíos España — Pro adds postal-code exclusions, additional countries besides Spain, and a log of blocked attempts. You can find it at https://patrolman82.gumroad.com/l/ijpffl
-
Will this slow down my checkout?
-
No. The check runs the same way WooCommerce already validates the order, with no extra requests or noticeable delay.
-
Where can I get support?
-
Use this plugin’s support forum here on WordPress.org.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Restrictor de Envíos España” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Restrictor de Envíos España” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.0.3
- Added: a settings-page notice about the Pro upgrade, shown only on this plugin’s own settings tab and hidden automatically once Pro is active.
1.0.2
- Changed: plugin renamed to comply with WordPress.org guidelines.
- Changed: minor compatibility and code-quality improvements.
1.0.1
- Fixed: a conflict that could cause a fatal error on some sites depending on plugin load order.
1.0.0
- Initial release.
