License for OEM use


I’m currently evaluating options for a future web based product and I have some questions regarding the licensing of vaadin. I hope someone can clear some things up.

The product will be sold to customers and hosted on their servers. Therefore we would require some kind of OEM license for the commercial version of vaadin. All Licenses I found (per commercial addon and “Pro Accounts” with all addons) sound to me like they are only applicable when you host the application yourself. Otherwise it would be very cheap to just pay once for the addons and then sell the product, in which they used, hopefully a couple of hundred times.
With a “Pro Account” it would be even cheaper.

Also the Charts-Addon includes a license for HighCharts. HighCharts by itself requires an OEM license if you want to sell software using it. How is the situation there. Would it require also a HighCharts OEM license?


Vaadin Charts uses Highcharts technology under the hood. In Vaadin Charts product these are unseparable - you can only use the charts through Vaadin Charts API - you can not use Highcharts JS library itself directly. If you would need to use Highcharts from JavaScript (outside the scope of Vaadin), you should obtain a license from Highsoft. If you are using Vaadin Charts, you do not need a separate license to Highcharts as the highcharts engine is licensed by Vaadin from Highsoft for Vaadin Charts product.

Vaadin Charts is licensed per developer. This means that everyone who touches the code needs a license. No licenses are needed for deployment.

So if I understand it correctly, we could subscribe a “Pro Account” for each Developer and don’t need to pay additional fees for each sold product/deployment. That’s really great. I don’t think we need to access Highcharts seperately.
After I finished my current project, I will give Vaadin a test run in a prototype. But it looks very promising now. :slight_smile:

Update: Also found it now on the “Pro Account” page, that is is allowed to distribute the final product. Sorry for being blind yesterday.

In case this is still of interest: what you can do is add more options (for instance the border color) by overwriting one of the Plot Options classes and adding the property. Plot Options are serialized to Json with whatever properties are there, including yours. For instance: borderColor is not available but you can make it available by overwriting e.g. PlotOptionsBar and adding a Bean Property borderColor of type Color