Updated Mar 1, 2019
While we work tirelessly on continual small enhancements, fixes, and improvements, this page indicates our current direction for major functional and architectural improvements in the xTuple ERP software. To see where we've been, read the Release Notes on GitHub and SourceForge for our ERP software, OpenRPT report writer, CSVImp data import utility, and database Updater utility. We also encourage everyone to take advantage of new features and fixes and keep moving forward with increasingly more modern releases of our software: refer to xTuple's End of Life Policy.
xTuple Web Portal 1.1.0 — target Q2 2019
We have been busy expanding the features available through our web API, including adding new ERP objects, allowing sales reps to act on behalf of customers, and reducing network overhead. These changes will enable new user-visible features previously discussed, such as online bill pay, a support/helpdesk interface, and subscriptions for physical and digital products.
xTuple ERP 4.12.0 — RC target Mar 2019
The upcoming 4.12 release will contain significant features that do not require the major database reorganization that the 5.0 features need.
- Subscriptions in the desktop client (commercial extension)
- Support for address validation services (29656)
- Expand integrated Document Management (25092)
- Improve translation handling
- Simplify distribution of translations for core product and extensions
- Update translations for completeness (goal, will require community assistance)
- Use OS-standard storage locations
- Configurable export delimiter
- Continue performance improvements
xTuple ERP 5.0.0 — beta Mar 2019, RC target Apr 2019
The two main drivers for version 5.0 are CRM changes and integration with Avalara tax services. These require significant changes to the underlying tables, which merits a major version number change. Many customizations will have to be adjusted to work with the new tables. Watch for an upcoming xTupleUniversity article about upgrading to 5.0.0. Tools to help with the upgrade can be downloaded along with the release files.
- Clarify, expand, and simplify relationships among CRM accounts, customers, vendors, contacts, and other application concepts (WIP)
- Multiple contacts per CRM account
- Multiple CRM accounts associated with a single contact
- Improve data validation at time of entry
- Improve the data audit trail
- Better support for recursive CRM accounts
- Clarify relationships among incidents, to-dos, projects, project tasks, and other application concepts
- Add concept of a "Lead", integrated with xTupleCommerce
- Simplify generating lists for email marketing campaigns
- Improve functionality of CRM merge utilities
- Expanded web API features
- Export templates
- Support for integration with 3rd party marketing automation services
The Avalara integration requires significant overhaul of the internal tax handling code and database structure. There is no requirement that you subscribe to a tax service to handle your taxes. If you do, the user interface is slightly different in several places and you must use that tax service for all tax-related calculations. If you choose not to subscribe, the desktop client will behave as before but you will need to update tax-related customizations.
In Other Areas
The xTuple ERP database and desktop client were first designed in 1999 and have continued to grow ever since. Along the way, we have worked hard to reduce disruptions during upgrades. Changes to report definitions and application scripts have been minimized. User retraining between versions has generally not been required.
However, over the past several years, the needs and expectations of users, administrators, and programmers have changed. Multiple applications share the same database. More people are customizing their xTuple ERP environment. xTuple must change to keep up.
We started updating application internals in the 4.1x code line to simplify future growth. We will continue to do so. Our goal is to add enough internal scaffolding to allow refreshing the xTuple user experience in a few extremely broad areas in a short period of time:
- Simpler, more consistent and modern user interface
- Database renormalization
- Simplified desktop client scripting interface
- Expanding the 4.12.x subscriptions and digital downloads, particularly to support xTupleCommerce (commercial extension)
Don't worry — many of these internal changes fix existing bugs as they prepare us for the future. The changes are worth making now, regardless of the timing of the user interface update. Whenever possible we will give developers, partners, and power users tools to prepare for the changes to come.
xTuple Connect 3.9.0 — RC2 Mar 2019, final target Apr 2019
The 3.9.0 beta was released in October, 2017, but focus on other projects has prevented fixing the remaining critical bugs. This release will address about a dozen issues, including some of the problems starting the email synchronization client and using appropriate as-of dates for recurring jobs.
2019 and Beyond
Yes, we are thinking much further down the road. Some of the things we see doing next year, and the year after that [and... ] shape decisions we make today. Here are some of the features and architectural issues under consideration:
- One API to rule them all
- All xTuple database clients should use the same interface to the database and business logic
- This will allow more ERPlets — small applications that do one piece of ERP and do that well
- This will open up xTuple to more third party extensions and integrations
- Finishing the xTuple Admin Utility (WIP)
Once we successfully develop a solid API that meets the needs of multiple ERPlets we will have a strong basis on which to greatly simplify the user interface and build tighter integrations with other third party applications. Our sales, support, professional services, and development staff have been listening to you all. We're taking your input to heart and trying to find the best way to give you the features you need to run your business smoothly, efficiently, and effectively.
Note to partners and power users: The scripting interface to the desktop client will change. Full backwards compatibility will not be possible because of naming conflicts. Use the
var _id = widget.id(); might become
var _id = widget.id;).
* Denotes functionality only available in commercially-licensed Editions