Hi Ajmal
We're happy to answer your questions:
1. Yes, simply set the price modifier so that it sets a different price by role or by user or by almost any condition you like.
2. Custom fields are normally set at the Product or variant level. Can you elaborate why you need Custom Fields at the Category, Manufacturer level? You can create a custom display template to render your form fields. It would be up to you to figure where that form data will be saved to. Then you would assign that Category/Manufacturer to use that display template. We also support storing arbitrary XML data into the Category object if needed.
3. We support certain custom actions via the Place order action and XML Extension fields. We also have a REST API that you can pair with a scheduler. For example, you can create a scheduler to pull products and orders and periodically sync to or from your ERP system.
For anything else, missing we are always open to program the missing features for a small fee if needed.
Thank you