One of the more frustrating things a customer can experience at checkout is seeing shipping or payment options that do not actually apply to their order. A payment gateway that only works for orders above a certain value, showing up for a five-dollar purchase, a next-day delivery option appearing for a product that cannot be shipped express, or a payment method that is not available in the customer’s country, sitting right there on the checkout page as if it is a valid choice.
These are the kinds of small checkout friction points that quietly erode customer confidence and, in some cases, cause people to abandon the order altogether. The WooCommerce conditional shipping and payments plugin by Extendons solves this by giving store owners a rule-based system to control exactly which shipping and payment options appear at checkout and under what conditions, so every customer sees only the options that are actually relevant to their specific order.
Why Controlling Checkout Options Matters More Than Most Store Owners Realize
A lot of WooCommerce store owners set up their shipping and payment methods once during the initial store configuration and never really revisit them unless something breaks. The default setup shows every enabled method to every customer, regardless of what they are buying, where they are located, or what their order looks like and for a simple store selling one type of product to one type of customer, that is probably fine.
But as soon as the store grows past that, the cracks start to show. A store selling both digital and physical products should not be showing shipping methods to customers who are only buying digital downloads. A store with wholesale and retail customers should not be offering the same payment options to both. A store that offers free shipping above a certain cart value but also has a standard shipping option should not be showing both options below that threshold in a confusing way.
WooCommerce conditional shipping and payments rules fix all of this by letting you define precise conditions under which each shipping and payment method appears or disappears, creating a checkout experience that feels logical and clean for every customer, regardless of what their specific order contains.
Getting the Plugin Installed
Installation follows the standard WooCommerce process and gets the plugin ready to configure in just a few steps:
- Log in to your WooCommerce account and navigate to My Subscriptions
- Find the Conditional Shipping and Payment Methods plugin and click Add to Store
- Follow the on-screen instructions, and the plugin will be added to your store automatically
- Once added, activate it from the Plugins section in your WordPress admin panel
After activation, there is one important preliminary step before getting into the rule configuration. Go to WooCommerce > Settings > Shipping and WooCommerce > Settings > Payments and make sure all the shipping and payment methods you want to manage are already enabled there. The plugin works by applying rules to existing methods rather than creating new ones, so any method you want to control with a rule needs to be active in WooCommerce settings first.
Once that is confirmed, the plugin configuration lives under WooCommerce > Settings > Payment and Shipping Settings, where you will find two tabs, one for Payment Gateways and one for Shipping Methods.
Understanding How the Rule System Works
Before building your first rule, it helps to understand the logic behind the system because it is what makes the conditional shipping and payments WooCommerce setup flexible enough to handle complex checkout scenarios without rules conflicting with each other.
Each rule you create is independent of every other rule and runs separately. This means you can have dozens of rules active simultaneously, and they will each evaluate their own conditions without interfering with one another. A rule that hides a specific shipping method for digital products does not affect a completely separate rule that shows a different shipping method for orders above a certain cart total; they operate side by side cleanly.
Within each rule, conditions can be combined using either AND or OR logic. When you set conditions with AND logic, every single condition in the rule must be true at the same time for the rule to trigger. When you use OR logic, the rule triggers if any one of the conditions is met. This combination of AND and OR within independent rules gives you a genuinely flexible system for handling even fairly nuanced checkout scenarios without needing custom code.
The Action Type setting within each rule is also worth understanding before you start because it determines what the rule actually does when its conditions are met:
- Hide Only These Gateways or Methods: The selected methods disappear from checkout when conditions are met
- Show Only These Gateways or Methods: Only the selected methods appear when conditions are met; everything else is hidden
- Prevent Order Submission: This is available for payment gateway rules specifically and blocks the order from being submitted entirely when conditions are met, which is useful for preventing orders that cannot be fulfilled under certain conditions
Creating Payment Gateway Rules
Go to WooCommerce > Settings > Payment and Shipping Settings > Payment Gateways and click Add New Rule to open the rule configuration pop-up.
Here is how to work through each setting in the rule:
Rule Name
Give the rule a clear descriptive name that tells you at a glance what it is doing. Something like “Hide PayPal for Orders Under $50” or “Show Bank Transfer for Wholesale Customers Only” is considerably more useful than a generic name when you are managing multiple rules and need to find or edit a specific one quickly.
Target Gateways
Select the payment method or methods this rule applies to. You can target a single payment gateway or multiple gateways with the same rule, depending on what the rule needs to do.
Action Type
Choose whether the rule should hide the selected gateways, show only the selected gateways, or prevent order submission when the conditions are met.
Conditions
This is the heart of the rule and where you define what triggers it. Choose AND or OR logic first, and then add your conditions from the available options:
- Cart Total: Trigger the rule based on the total value of the cart using comparison metrics like less than, greater than, equals, less than or equals, or greater than or equals. Useful for restricting premium payment methods to higher value orders or hiding certain gateways for very low cart values
- Order Weight: Apply the rule based on the total weight of the order, which is useful for payment methods that are restricted to certain order weight ranges
- Cart Item Count: Trigger based on the number of items in the cart, which works well for wholesale scenarios where bulk orders should use different payment options
- User Role: Apply the rule to specific customer types like subscribers, wholesale customers, administrators, or guests. This is one of the most commonly used conditions for stores that serve multiple customer segments with different payment arrangements
- Category: Trigger based on product categories in the cart, so specific payment methods only appear or disappear when certain types of products are being purchased
- Shipping Class: Apply conditions based on the shipping class assigned to products in the cart
- Coupon Code: Control payment method visibility based on whether a specific coupon has been applied to the order, which is useful for promotional setups where certain payment methods are tied to specific offers
- Shipping Method: Show or hide payment methods based on which shipping method the customer has selected, useful for ensuring certain payment and shipping combinations that do not work together never appear simultaneously
- Billing Country and Shipping Country: Restrict payment methods by the customer’s billing or shipping country, which is essential for payment gateways that are only available in certain regions
- Billing Postcode and Shipping Postcode: Apply more granular location-based rules at the postcode level
- Product: Trigger based on specific products in the cart rather than categories, which gives the most granular product-level control over payment visibility
- Product on Sale: Apply the rule when sale products are in the cart, which is useful for restricting certain payment methods during promotional periods
- Backorder: Control payment method visibility when backordered products are in the cart
Once all the conditions are set, click Save Rule, and the rule becomes active immediately.
Practical Payment Gateway Rule Examples
To make the rule-building process more concrete, here are a few real-world scenarios and how you would set them up using the conditional shipping and payments WooCommerce rule system:
Restricting a Payment Gateway to High Value Orders
If you want to offer a buy now, pay later payment option only for orders above a certain value, you would create a rule that hides that gateway with a condition of Cart Total less than your minimum threshold. Any order below that value will not see the buy now, pay later option, and customers shopping above it will see it automatically.
Showing Bank Transfer Only for Wholesale Customers
If bank transfer is a payment option you only want to offer to wholesale buyers and not to regular retail customers, create a rule that shows only that gateway with a User Role condition set to your wholesale role. Wholesale customers see the bank transfer option, and everyone else does not.
Hiding a Payment Gateway for Specific Product Categories
If you sell digital products and have a payment gateway that does not support digital goods properly, create a rule that hides that gateway with a Category condition set to your digital products category. Any cart containing a digital product will not show that payment option, regardless of what else is in the cart.
Blocking Order Submission for Backordered Items
If you want to prevent orders from being placed when a cart contains backordered products and a specific payment method is selected, use the Prevent Order Submission action type with a Backorder condition. This stops the order from going through entirely under those circumstances, rather than just hiding or showing a gateway.
Creating Shipping Method Rules
The shipping method rules work on the same principle as the payment gateway rules and are configured under the Shipping Methods tab in the same settings area. Click Add New Shipping Rule to open the rule pop-up.
Rule Name
Same as with payment rules, give this a clear descriptive name that makes it easy to identify at a glance what the rule is doing across your list of active rules.
Target Shipping Methods
Select the shipping method or methods this rule should apply to. This can be a single method or multiple methods covered by the same rule.
Action Type
Choose between Hide Only These Methods, which removes the selected methods when conditions are met, or Show Only These Methods, which displays only the selected methods and hides everything else when conditions are met.
Conditions
The shipping method conditions cover the same broad range as the payment conditions, with a few differences specific to shipping logic:
- Cart Total: Hide expensive express shipping options for low-value orders or show free shipping only when the cart reaches a qualifying threshold
- Order Weight: This is one of the most practically important conditions for shipping rules because many shipping carriers have weight limits, and showing a carrier option for an order that exceeds its weight limit creates a checkout problem that this condition prevents
- Cart Item Count: Apply rules based on how many items are in the cart, which is useful for bulk order shipping arrangements
- User Role: Show different shipping options to wholesale customers, trade accounts, or VIP customers versus standard retail buyers
- Category: Hide or show specific shipping methods based on what product categories are in the cart, which is essential for stores with products that have specific shipping requirements
- Shipping Class: Apply rules based on the shipping class assigned to products, which is the most precise way to manage shipping method visibility for products with specific carrier requirements
- Coupon Code: Control shipping method availability based on applied coupons, useful for promotional free shipping coupons that should only enable a specific shipping method, rather than all available methods
- Billing and Shipping Country: Restrict shipping carriers to the countries they actually serve and hide international shipping options for domestic orders
- Billing and Shipping Postcode: Apply postcode-level location rules for local delivery zones or regional shipping restrictions
- Product: Apply shipping rules at the individual product level for products with unique shipping requirements
- Product on Sale: Control shipping options during sales or promotional periods
- Backorder: Manage shipping method availability when backordered products are present in the cart
After configuring all the conditions, click Save Rule to make it active.
Practical Shipping Rule Examples
Here are a few common scenarios that illustrate how WooCommerce’s conditional shipping and payment rules work in practice for the shipping side:
Hiding Express Shipping for Heavy Orders
If you offer next-day express delivery but your carrier has a weight limit above which it cannot ship, create a rule that hides the express shipping method with an Order Weight condition set to greater than or equal to your carrier’s limit. Heavy orders will not see the express option, and lighter orders will see it as normal.
Showing Free Shipping Only Above a Cart Threshold
Rather than showing both free shipping and standard shipping at every cart value, which can confuse customers, create a rule that shows only the free shipping method when Cart Total is greater than or equal to your free shipping threshold and a separate rule that hides free shipping when Cart Total is less than that threshold. Customers always see the correct option based on their cart value.
Restricting Local Delivery to Specific Postcodes
If you offer local delivery but only within a defined geographic area, create a rule that shows the local delivery method only when the Shipping Postcode equals the postcodes you serve. Anyone outside those postcodes will not see the local delivery option and will only see the standard shipping methods available to them.
Hiding Third-Party Carriers for Specific Product Categories
If certain product categories have restrictions on which carriers can ship them, create a rule that hides specific carrier-based shipping methods when that category is in the cart. Products with special handling or hazardous material classifications are common examples where this kind of category-based shipping restriction is a practical necessity.
Managing Multiple Rules Without Conflicts
As your conditional shipping and payments WooCommerce setup grows and you accumulate more rules for different scenarios, keeping track of what each rule is doing and making sure they are not creating unintended conflicts becomes an important part of ongoing management.
The plugin handles this through the independent rule architecture mentioned earlier, where each rule runs separately, but there are a few practices worth adopting from the start to keep things manageable as the rule count grows:
Naming rules clearly and consistently from the beginning makes a significant difference when you need to find, edit, or disable a specific rule later. A naming convention that includes the action type and the trigger condition in the rule name, like “Hide FedEx Over 20kg” or “Show Bank Transfer Wholesale Only”, makes the rule list scannable at a glance without needing to open each rule to understand what it does.
Testing rules after creating them by simulating the conditions they are meant to trigger is worth making a habit because it confirms the rule is working as intended before real customers encounter it. Adding a product to a test cart that should trigger the rule and going through to the checkout to verify the correct methods appear or disappear takes a couple of minutes and prevents the kind of checkout experience issues that are easy to miss until a customer reports them.
Conclusion
A checkout page that shows every customer the same shipping and payment options regardless of what they are buying, where they are, or who they are is a checkout page that is not working as hard as it could be. The Conditional Shipping and Payment Methods plugin by Extendons gives you a practical and flexible rule-based system to fix that, bringing proper WooCommerce conditional shipping and payments logic to the checkout without any custom development required.
Whether you are restricting payment gateways by cart value, hiding shipping methods by product category, controlling options by customer location, or managing visibility by user role, the rule system covers the full range of scenarios that a growing WooCommerce store is likely to encounter and it does it in a way that is straightforward enough to manage and expand as the store evolves.
