invoice_maker actually taking product_maker as argument