Invoice generation. Still needs to calculate the rates and insert the invoice to the database.