Description
A24 Geo Checkout Blocker lets store administrators restrict the WooCommerce checkout page by visitor country. It is a country-based WooCommerce checkout restriction plugin for WordPress stores that need geolocation checkout control, country blocking, regional checkout rules, MaxMind GeoIP2 support, or Cloudflare geolocation support.
Features:
- Choose MaxMind GeoIP2 web service or Cloudflare geolocation header.
- Configure MaxMind Account ID and License Key only when MaxMind is selected.
- Test whether Cloudflare headers are present or whether MaxMind credentials can connect successfully, including the IP address used for the test.
- Select individual countries or the European Union country group.
- Choose whether selected countries are blocked or whether only selected countries are allowed.
- Evaluates only non-admin visitors on checkout when the cart is not empty.
- Caches the visitor IP address and detected country in a WordPress transient for 24 hours.
- Adds suggested privacy policy text for site administrators.
When MaxMind is selected and credentials are missing, the plugin does nothing. When Cloudflare is selected and the CF-IPCountry header is missing, the plugin does nothing.
Developer: a24italia
Plugin page: https://www.autotech24.it/a24-geo-checkout-blocker/
Website: https://www.autotech24.it/
Repository: https://github.com/a24italia/a24-geo-checkout-blocker/
Support: https://github.com/a24italia/a24-geo-checkout-blocker/issues
Email: info@autotech24.it
Privacy
This plugin may process a visitor IP address to determine checkout eligibility. With MaxMind selected, the visitor IP address is sent to MaxMind GeoIP2 web services. With Cloudflare selected, the plugin reads the CF-IPCountry request header. The visitor IP address and detected country are stored in a WordPress transient for 24 hours.
External services
This plugin can use external geolocation services depending on the provider selected by the site administrator.
MaxMind GeoIP2 Web Services
When MaxMind is selected as the geolocation provider, this plugin connects to the MaxMind GeoIP2 Country web service to determine the country associated with a visitor IP address. This is required to decide whether the visitor is allowed to access the WooCommerce checkout according to the configured country rules.
The plugin sends the visitor IP address to MaxMind when a non-admin visitor reaches the WooCommerce checkout with a non-empty cart and no valid cached country result exists. The plugin also sends the current admin request IP address to MaxMind when an administrator uses the provider test button in the plugin settings. The request uses the MaxMind Account ID and License Key configured by the site administrator.
This service is provided by MaxMind, Inc.
Terms: https://www.maxmind.com/en/end-user-license-agreement
Privacy policy: https://www.maxmind.com/en/privacy-policy
Cloudflare
When Cloudflare is selected as the geolocation provider, this plugin does not call a Cloudflare API. It reads the CF-IPCountry HTTP request header that Cloudflare may add to requests passing through Cloudflare. This header contains a country code used to decide whether the visitor is allowed to access the WooCommerce checkout according to the configured country rules.
The plugin reads the CF-IPCountry header when a non-admin visitor reaches the WooCommerce checkout with a non-empty cart and no valid cached country result exists. The plugin also checks the current admin request for this header when an administrator uses the provider test button in the plugin settings.
This service is provided by Cloudflare, Inc.
Terms: https://www.cloudflare.com/terms/
Privacy policy: https://www.cloudflare.com/privacypolicy/
Installation
- Upload the
a24-geo-checkout-blockerfolder to/wp-content/plugins/or install the ZIP through Plugins > Add New > Upload Plugin. - Activate the plugin.
- Go to Settings > Geo Checkout Blocker, or use the Settings link on the Plugins screen.
- Select the provider, rule mode, and countries.
- Use Test selected provider to verify Cloudflare headers or MaxMind credentials.
FAQ
-
Does this block bots from loading the checkout URL?
-
No. The plugin only evaluates checkout when WooCommerce has a non-empty cart, which avoids blocking ordinary bots that do not create a cart session.
-
What does the EU checkbox include?
-
It expands to the current EU member state country codes: AT, BE, BG, HR, CY, CZ, DK, EE, FI, FR, DE, GR, HU, IE, IT, LV, LT, LU, MT, NL, PL, PT, RO, SK, SI, ES, and SE.
-
What happens if Cloudflare is not sending CF-IPCountry?
-
No checkout restriction is applied.
-
What happens if MaxMind credentials are missing or invalid?
-
No checkout restriction is applied.
-
Where can I report issues or contribute?
-
The public source code and issue tracker are available on GitHub: https://github.com/a24italia/a24-geo-checkout-blocker/
Reviews
There are no reviews for this plugin.
Contributors & Developers
“A24 Geo Checkout Blocker” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “A24 Geo Checkout Blocker” 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.8
- Move checkout-hiding CSS to wp_enqueue_scripts using wp_add_inline_style.
- Document MaxMind and Cloudflare external service usage in readme.txt.
1.0.7
- Set distinct plugin and author URIs for WordPress.org submission requirements.
- Use a plugin-specific autotech24.it URL for the public Plugin URI and keep GitHub for support links.
1.0.6
- Align author metadata with the WordPress.org contributor account a24italia.
- Keep public plugin and author URLs pointing to autotech24.it while support links point to GitHub.
1.0.5
- Limit WordPress.org readme tags to five entries to satisfy Plugin Check.
1.0.4
- Added GitHub repository and support links.
- Added plugin row meta links for GitHub and Support.
1.0.3
- Added explicit WooCommerce dependency metadata.
- Fixed sanitization and escaping issues reported by Plugin Check.
1.0.2
- Show the tested IP address and IP source header in provider test results.
- Use the current admin request IP for MaxMind tests instead of a fixed sample IP.
1.0.1
- Show MaxMind credentials only when MaxMind is selected.
- Add provider test button for Cloudflare header and MaxMind connection checks.
1.0.0
- Initial release.
