{"id":323369,"date":"2026-08-07T15:49:48","date_gmt":"2026-08-07T15:49:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/payment-method-rules-for-woocommerce\/"},"modified":"2026-08-07T15:49:41","modified_gmt":"2026-08-07T15:49:41","slug":"cartmend-payment-rules","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/cartmend-payment-rules\/","author":23511534,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.4","stable_tag":"1.1.4","tested":"7.0.3","requires":"5.5","requires_php":"7.4","requires_plugins":null,"header_name":"CartMend Payment Method Rules for WooCommerce","header_author":"CartMend","header_description":"Conditionally hide or show WooCommerce payment gateways based on country and cart total. No code. Works on classic and block checkout.","assets_banners_color":"","last_updated":"2026-08-07 15:49:41","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/cartmend.com\/modules\/cartmend-payment-rules.html","header_author_uri":"https:\/\/cartmend.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":27,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.4":{"tag":"1.1.4","author":"cartmendmodule","date":"2026-08-07 15:49:41"}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.4"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"The rules screen \u2014 manage any number of rules, each with its own gateway, action, and conditions, from one place.","2":"Adding a rule \u2014 gateway dropdown and condition (Billing Country) with a country multiselect.","3":"Checkout before the rule: all payment methods show, including Cash on Delivery.","4":"Checkout after the rule: Cash on Delivery is automatically hidden for orders over the threshold.","5":"Debug mode shows exactly which rules fired \u2014 so you never wonder why a gateway disappeared."}},"plugin_section":[],"plugin_tags":[145322,259389,6594,131954,286],"plugin_category":[45],"plugin_contributors":[274812],"plugin_business_model":[],"class_list":["post-323369","plugin","type-plugin","status-publish","hentry","plugin_tags-conditional-payments","plugin_tags-hide-payment-method","plugin_tags-payment-gateways","plugin_tags-payment-methods","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-cartmendmodule","plugin_committers-cartmendmodule"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/cartmend-payment-rules.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>CartMend Payment Method Rules for WooCommerce<\/strong> lets you conditionally hide or show payment gateways at checkout \u2014 without writing a single line of code. Create as many rules as you need, each targeting one gateway with one or more conditions combined with AND\/OR logic. It works on <strong>both<\/strong> the classic shortcode checkout and the new <strong>block (Gutenberg) checkout<\/strong>, and it adds <strong>zero JavaScript and zero jQuery<\/strong> to your storefront.<\/p>\n\n<p>Common things store owners use it for:<\/p>\n\n<ul>\n<li>Hide <strong>Cash on Delivery<\/strong> for orders over a certain amount (reduce fraud and unpaid COD).<\/li>\n<li>Hide <strong>PayPal<\/strong> (or any gateway) for specific billing countries.<\/li>\n<li>Show a gateway <strong>only<\/strong> for a chosen country (whitelist mode).<\/li>\n<\/ul>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Unlimited rules, each targeting one payment gateway.<\/li>\n<li>Action per rule: <strong>Hide<\/strong> or <strong>Show only<\/strong>.<\/li>\n<li>Each rule can combine multiple conditions with <strong>AND\/OR<\/strong> logic: <strong>Billing country<\/strong> (is in \/ is not in a list) and\/or <strong>Cart subtotal<\/strong> (greater than \/ less than \/ equal to \/ between).<\/li>\n<li>Enable\/disable toggle per rule.<\/li>\n<li>Admin-only <strong>debug notice<\/strong> at checkout that tells you exactly which rule fired and why.<\/li>\n<li>Works on classic checkout, block checkout, and the order-pay page.<\/li>\n<li>HPOS (High-Performance Order Storage) compatible.<\/li>\n<li>Lightweight: no frontend JavaScript, no jQuery, no bloat.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin to <code>\/wp-content\/plugins\/<\/code> or install it from <strong>Plugins \u2192 Add New<\/strong>.<\/li>\n<li>Activate <strong>CartMend Payment Method Rules for WooCommerce<\/strong>.<\/li>\n<li>Make sure WooCommerce is active and you have at least one payment gateway enabled.<\/li>\n<li>Go to <strong>WooCommerce \u2192 Settings \u2192 Payment Rules<\/strong>.<\/li>\n<li>Add a rule: choose a gateway, an action (Hide \/ Show only), and one or more conditions (Billing country and\/or Cart subtotal). Add more rules or conditions as needed, then save.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20work%20with%20the%20new%20block%20%28gutenberg%29%20checkout%3F\"><h3>Does it work with the new block (Gutenberg) checkout?<\/h3><\/dt>\n<dd><p>Yes. The core hide\/show logic runs server-side through WooCommerce's <code>woocommerce_available_payment_gateways<\/code> filter, which now fires in the block\/Store API checkout as well as the classic shortcode checkout and the order-pay page.<\/p><\/dd>\n<dt id=\"will%20it%20work%20with%20stripe%2C%20paypal%2C%20square%20and%20other%20gateways%3F\"><h3>Will it work with Stripe, PayPal, Square and other gateways?<\/h3><\/dt>\n<dd><p>Yes. The plugin filters whatever active gateways WooCommerce exposes, including third-party gateways, as long as they are enabled in WooCommerce.<\/p><\/dd>\n<dt id=\"my%20rule%20isn%27t%20working.%20what%20should%20i%20check%3F\"><h3>My rule isn't working. What should I check?<\/h3><\/dt>\n<dd><p>Enable the admin-only debug notice by viewing checkout while logged in as a shop manager\/admin \u2014 it shows which rule fired and why. Also confirm the gateway is enabled in WooCommerce and that any full-page cache excludes the checkout page.<\/p><\/dd>\n<dt id=\"does%20it%20slow%20down%20checkout%3F\"><h3>Does it slow down checkout?<\/h3><\/dt>\n<dd><p>No. Rules are evaluated in plain PHP from a single cached option, with no extra database queries during checkout, and no frontend JavaScript.<\/p><\/dd>\n<dt id=\"does%20it%20collect%20any%20data%3F\"><h3>Does it collect any data?<\/h3><\/dt>\n<dd><p>No. The plugin sends no telemetry.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.4<\/h4>\n\n<ul>\n<li>The free version now supports unlimited rules with AND\/OR condition logic.<\/li>\n<li>Each rule can combine multiple conditions (billing country and\/or cart subtotal).<\/li>\n<li>Added an \"equal to\" comparison for cart subtotal.<\/li>\n<li>Removed a leftover empty init hook.<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Confirmed the plugin ships exactly the billing country and cart subtotal condition types shown in the settings screen.<\/li>\n<li>Renamed to lead with brand.<\/li>\n<li>Fixed contributors.<\/li>\n<li>Moved inline debug style to an enqueued stylesheet.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>One rule: hide or show a payment gateway by billing country or cart subtotal.<\/li>\n<li>Works on classic checkout, block (Store API) checkout, and order-pay page.<\/li>\n<li>Admin-only checkout debug notice.<\/li>\n<li>HPOS and Cart\/Checkout Blocks compatibility declared.<\/li>\n<\/ul>","raw_excerpt":"Conditionally hide or show WooCommerce payment gateways with unlimited AND\/OR rules. No code. Works on classic and block checkout.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/323369","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=323369"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/cartmendmodule"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=323369"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=323369"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=323369"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=323369"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=323369"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=323369"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}