Sage 50 takes a long time to load a company from a 3rd party software

When opening the company through Sage 50 itself on any client PC, it takes about 5 to 10 seconds until I am on the main dialog. Then another 3-4 seconds to load the Sales Order list.

  1. We have a 3rd party software (MAXShipper) that allows us to integrate into UPS WorldShip. When loading a Sales Order to populate the Shipping Address data, it takes about 2 minutes from the time we press ENTER to confirm the Sales Order number to the time it populates the address fields.
    1. The logs for the software show that each time a new Sales Order is queried, it opens the company, searches for the order, confirms it and then closes the company again. Each time, this takes 2 minutes per query.
  2. We have another 3rd party software integrated into UPS WorldShip (ShipGear). It works by only opening the company once. That takes 2 minutes. Then it continues to keep the company open. When querying Sales Order from there, the result is almost instantenous.

We don't know why it takes 2 minutes to open the company. MaxShipper folks think this is not normal. Sage folks think it is something wrong with our data. We used the sample companies (Bellweather) on the data path, and it is the same result (2 minutes to open the company). The data resides on a virtual disk on the server, accessed through a virtual machine where the Sage 50 is installed. Not sure if this the problem.

The VM runs on 4GB of RAM and 4 virtual processors. It works fine for our client PCs accessing data through Sage normally. 3rd Party Software using method 1 seems to crap out. What could be the problem? Is it Sage's Integration API causing this issue or is it the way we have structured the data access (Sage 50 running on a VM, data path on a virtual disk)?