https://blog.probooks.com/posts/streamlining-client-management-invoicing/