How Mixed Cart Resolution Works
Learn how the plugin intersects gateway rules across multiple products to determine what shows at checkout.
Learn how the plugin intersects gateway rules across multiple products to determine what shows at checkout.
Learn how the plugin intersects gateway rules across multiple products to determine what shows at checkout.
One of the most important behaviors to understand is what happens when a customer adds multiple products to their cart, each with different payment gateway rules. This is called a mixed cart.
The plugin takes every product in the cart, looks up its applicable rules (product level → category level → tag level), and then keeps only the gateways that are allowed by every single product. This is called an intersection.
Example:
| Product | Allowed gateways |
|---|---|
| Digital eBook | PayPal, Stripe |
| Physical item | Stripe, Bank Transfer |
The intersection of those two sets is Stripe only — that's what the customer sees at checkout.
Union logic (showing any gateway allowed by any product) would mean a gateway restricted for product A could still appear because product B allows it. That defeats the purpose of assigning rules in the first place. Intersection ensures every product's restriction is respected.
If no single gateway satisfies all products in the cart, the intersection is empty and the fallback behavior takes over:
See Configuring Fallback Behavior for how to control this.
If your store commonly has mixed-cart purchases, make sure at least one gateway appears in all relevant rules. For example, if Stripe is your primary gateway and you always want it available, include it in every product, category, and tag rule — that guarantees it survives the intersection regardless of what else is in the cart.