Sunday, March 12, 2006

Money Jar

I've just released a new project on SourceForge. It is a financial library for Java with high precision. The target is to streamline the use of financial numbers in Java applications. BigDecimal supports the precise numbers. Surely, many people already use BigDecimal for finance, but issues like standard rounding and the currency the money is in are not resolved.

This library wraps BigDecimal into a Money class and has some features like automatic rounding based on JVM-wide configuration. It also does not allow calculations to take place between two incompatible currencies.

Since this project is more incremental, I intend to add more and more features to this library. The objective is to add "invoicing" support with some factories and helper classes, so that people can prepare invoices much easier. Another is to add a "tax engine", which is configured according to rounding rules, summation rules, tax application order, etc. to the nation/state where you live, so that taxes is much easier.

Researching about the subject of billing and taxation is a real head-ache. I do not intend to make this a library that you can use straight away in any part of the world. The configuration requires you to do the legal research, this library supports you in setting up the environment so that it is all resolved by itself.

I have some future plans a bigger project that uses this library that also involves some kind of distributed computing.

No comments: