Customer picks a method they can't actually use.
WooCommerce shows every enabled method to every shopper. They pick the cheapest looking option, the gateway rejects it, you lose the sale and probably the customer.
Hide payment gateways by any condition.
Cash on Delivery only under $200. Wire transfer only over $1,000. Razorpay only for INR carts. Klarna only for Black Friday week. Twelve rule types, combined per gateway, applied in milliseconds at checkout. $39.99/yr or $149 once.
Out of the box, WooCommerce shows every enabled payment method to every shopper. Cash on Delivery on a $4,000 order. SEPA to a Tokyo shopper. Razorpay on a USD cart. That's how stores lose sales, eat declined-payment fees, and rack up support tickets.
WooCommerce shows every enabled method to every shopper. They pick the cheapest looking option, the gateway rejects it, you lose the sale and probably the customer.
Card and PayPal fees stack up on large orders. Force wire transfer or invoice on anything over a threshold and your effective margin goes up without raising prices.
The pattern repeats. Hide cards for that IP range, that role, that hour, that cart-size band. Cards stay available for everyone else.
Every WooCommerce-registered gateway gets a Conditions tab. Add as many rules as you like, mix and match, and the plugin filters the methods list the moment WooCommerce renders the payment step. No code, no shortcodes required.
Set a min, a max, or both per gateway. COD off above the driver cap. Wire on for invoiceable orders. Stripe off above the chargeback band.
Days of the week, hour of the day, full date ranges. Stack them for promotions, holidays, or office-hours-only methods.
Single IPs or full CIDR ranges. Use allow lists for B2B VPN traffic, block lists for known fraud subnets.
Standard WP roles or custom roles from any membership plugin. Plus exact user IDs for that one VIP who pays on terms.
Whitelist or blacklist by billing country. Stops the SEPA-shown-to-JP-shopper failure dead.
Works with WPML and Polylang for language. Works with every popular currency switcher for the currency rule.
Granular cart-content filtering. Useful for B2B/B2C splits inside one store, fragile-item COD rules, or membership-only payment options.
Add as many rules per gateway as you want. Turn on debug mode and the checkout shows exactly which rule blocked which method.
Upload the .zip from Plugins → Add New, then activate. No setup wizard, no migrations.
WooCommerce → Settings → Payments → click any gateway. A new Conditions tab appears alongside the gateway's regular settings.
Cart total min, max, country, role, IP, date - pick the modules you need. Each module has its own simple form, no shortcodes or code.
That's it. The plugin filters the gateways list whenever WooCommerce renders the payment step. Turn on debug mode to see which rules fired.
WooCommerce native · none |
StoreApps Conditional Payment Methods $79/yr · no lifetime |
YITH Payment Method Restrictions yearly only · no lifetime |
WPFactory $39.99/yr · $149 once |
|
|---|---|---|---|---|
| core: rule coverage | ||||
| Cart total (min / max) | ✕ | ✓ | ✓ | ✓ |
| Billing country | ✕ | ✓ | ✓ | ✓ |
| User role | ✕ | ✓ | ✓ | ✓ |
| Products / categories / tags | ✕ | ✓ | ✓ | ✓ |
| where competitors fall short | ||||
| Customer IP (with CIDR ranges) | ✕ | coming soon | via country only | ✓ CIDR supported |
| Date and time scheduling | ✕ | ✕ | ✕ | ✓ days, hours, date ranges |
| Current language (WPML / Polylang) | ✕ | ✕ | ✕ | ✓ |
| Current currency | ✕ | ✕ | ✕ | ✓ |
| Specific user ID (not just role) | ✕ | ✕ | ✕ | ✓ |
| Shipping class condition | ✕ | ✕ | ✕ | ✓ |
| Debug mode (see which rule fired) | ✕ | not specified | not specified | ✓ |
| pricing & ownership | ||||
| Free version on .org | - | ✕ | ✕ | ✓ |
| Lifetime tier | - | ✕ | ✕ | ✓ $149 unlimited sites |
| Multi-store licensing | - | per-site tier | per-site tier | ✓ unlimited sites |
| 10-year cost | $0 | ~$790 | not specified | $149 |
| 50+ plugins (All Access) | - | ✕ | ✕ | ✓ $499 |
|
Ready to filter every method by the right rule? ↓
Jump to pricing
|
||||
A restaurant supply store does same-day local delivery via its own drivers. Drivers can't safely carry more than $200 cash. Saturday and Sunday have no driver shifts. Cart-total min/max + day-of-week rules hide Cash on Delivery the moment either condition fails, with no impact on Stripe and PayPal.
Driver cash-on-hand dropped to the $200 cap. Weekend order cancellations stopped because customers no longer pick a method nobody can fulfil.
A specialty foods shop sells the same catalog to consumers (B2C) and to restaurant buyers (B2B). Wholesale customers pay on 30-day terms via Invoice (BACS). Retail customers pay by card. One role check splits the gateways list cleanly. Invoice shows only to wholesale, card-only methods only to B2C.
No more wholesale customers paying 2.9% card fees by mistake. No more retail customers picking Invoice and ghosting the shop for 30 days.
A WordPress plugin shop sells worldwide. Razorpay only works for INR carts. After three chargebacks from the same IP range, the team wants Stripe hidden for that subnet so the fraudster can't try again. Currency rule + IP CIDR rule, ten minutes to set up, done.
Failed-checkout rate dropped 14%. Chargebacks from the flagged subnet went to zero the day the IP rule went live.
Using the plugin? Leave a review on WordPress.org.
"Asked them to update the plugin with 2 additional features. They did it within 2 days. Quality work and awesome support."see review →
"Plugin does its job. The author makes outstanding support. Would definitely recommend. Thank you Tom!"see review →
"Compact, smart, easy to use. Did exactly what we needed for blocking certain IP ranges from card payment. Support updated the plugin for us."see review →
Every WPFactory plugin ships with the same eight guarantees. Here's what running this one looks like in practice.
Hooks into WooCommerce's woocommerce_available_payment_gateways filter once. No extra database tables, no AJAX on every cart change, no slowdown.
Every module is documented per condition type. Filters exposed for custom integrations. GitHub repo open at wpcodefactory/conditional-payment-gateways-for-woocommerce.
The qsdnxu review says it best: feature request → release in two days. Real bug reports become commits within days, not quarters.
14-day refund on yearly and lifetime, 30 days on All Access, no questions asked. If a custom gateway doesn't filter the way you'd hoped, support helps. If it still doesn't fit, you walk away whole.
All Access is $499 once for all 50+ plugins, lifetime, unlimited sites, and it includes every plugin we release later. Three lifetime licenses at $199 already cost $597, so the bundle usually wins by your third plugin.
v2.5.5 is current. Tested against the latest WooCommerce within days of every release. HPOS-ready, PHP 8.3 compatible. Tracks the WC payments roadmap so the gateway-filter hook stays stable.
Compatible with WPML, Polylang, WooCommerce Subscriptions, WooCommerce Memberships, all major currency switchers. Filters exposed for custom rule modules.
You don't need to write a single line of code. Pick the modules you want, set values in plain forms, save. The plugin does the rest at checkout.
This is what you see inside WordPress once the plugin is activated.
14-day refund on yearly and lifetime, 30 days on All Access. Lifetime pays for itself by year 4. All Access pays for itself with any 2nd plugin you'd ever use. Yearly auto-renew can be turned off in your account.
Buy once. Owns itself by year 4. Use on every site you own.
This plugin + 49 others, lifetime updates, unlimited sites - for $300 more than Lifetime alone.
If yours isn't here, our support replies fast.
Popular guides
Twelve rule types. Cart total, country, role, IP, date and time, currency, language, products, shipping class. Combine as many as you want per gateway. 500+ stores already running it. 14-day refund if it's not for you.
500+ stores · 5.0★ across 6 reviews · WordPress.org plugin · 14-day refund