clean code
basic invoice object