I want to configure it so that I can assign any PPPoE user to whichever ISP I choose. For example, some users should get internet from ISP1, others from ISP2, and others from ISP3, depending on my choice.
What is the best way to achieve this in Zima? Should I use different IP pools, routing rules, or another recommended method?
This is a very easy method through Zima.
You can create a specific IP pool for each package, and then use Mark Routing in MikroTik so that every package goes through its own ISP or route.
Zima will automatically assign the correct pool, and MikroTik will route the traffic based on that.
Easiest way to debug this is to check the IP of the user then got to winbox IP/Firewall/NAT and see if this IP belongs to a range that is NATed correctly.
If the IP range NAT is configured correctly to give internet access then this user will have internet. @vikram check it out and let us know if you were able to resolve the issue.