Add invoice

+ improvements to the ES6 code