Hello,
There are no direct solutions or settings to achieve this, but I can suggest you a tricks to have something very close.
Follow me step by step :
1. As you can see in payment method settings it's possible to define a shipping method.
2. In each shipping method you can define a Warehouse
3. And for each product it's possible to define a Warehouse.
From this you can restrict for each product (or product category) a shipping method then one or several payment methods.
If you don't need to limit shipping method, the default of this method is that you need to "clone" your payment method for each warehouse/Category.
Warehouse1 :
- Category1
- product1 => Warehouse1
- product2 => Warehouse1
- product3 => Warehouse1
Warehouse2 :
- Category2
- product4 => Warehouse2
- product5 => ...
1. Add a product3 to cart => Only Shipping methods associated with Warehouse1 will be displayed
2. And as well for payment methods associated with this or theses shipping methods.
And as set all of this can be a bit long, you can use a Massaction to set per product category a warehouse to save time.
Hope this will meet your needs.
Regards