The extra reports and widgets aren't the only elements available for sale. SugarCRM will also bundle hosting into the services on either shared or dedicated machines, a set of features that seems to be rapidly evolving. Two of the products (Sugar Express and Sugar Professional) come with hosting, but you can always move the installations to your own servers.
[ JasperServer Professional and Pentaho Reporting build on famous Java open source libraries for generating reports, but they’re no longer for developers only. See the Test Center review, "Open source reporting goes corporate." ]
SugarCRM is rapidly exploring the tools for managing these deployments. Its latest tool, called Cloud Console, is beginning to help businesses knit together a variety of Sugar installations that span a big company. The versions don't need to be exactly the same, and the different divisions can have their own templates and features.
It's hard to summarize all of the extra features that are appearing thanks both to SugarCRM and the community of commercial partners. The FastStack makes it simple to install every part quickly. I enjoyed fiddling with the module builder, a feature that lets you drag and drop the fields for the tables. Developing custom features doesn't require much programming at all. All you do is choose the names for the fields, and the rest of the forms and the tables follow.
More sophisticated solutions require digging into the PHP, something that is well supported. SugarForge holds hundreds of interesting plug-ins written to add features and integrate Sugar with many other open source and proprietary packages.
This is usually pretty straightforward. You write PHP code that can add extra features to the menus or the different pages. The core of the iNetGoogleMap plug-in, for instance, is built from about 100 lines of code that repack the data from the internal Sugar format into a URL for a Google Map. This core comes with a dozen or more other files that help integrate it with the system and localize it for any other languages. The mechanism for adding a plug-in is well developed and offers broad access to the underlying system.
There are a fair number of plug-ins devoted to adding ERP functions to Sugar. It's not hard to do an adequate job with this if your business is simple and the product line is small. There are plug-ins for adding inventory management, credit card processing, and pretty much everything you need to spin up your own ERP.