Approve and invoice a project timesheet
Personas: Manager (approves each employee's timesheet), Project manager / back office (generates the invoice from the project-month) · Modules: Timesheets Turn a month of submitted timesheets into money: approve each employee's line, watch the hours and the billable value roll up to the project-month, then generate the draft sales invoice from it in one click.
Before you start: the employees have submitted their timesheets (status SUBMITTED — see Fill in your timesheet). Approval tasks go to anyone in the Manager group.
1. Approve each employee timesheet — Manager (Inbox)
- Open the Inbox. Each submitted line has an Approve Timesheet task — anyone in the Manager group can claim and complete it (the task is also shown inline on the timesheet).
- The task form shows the number (still a placeholder), the project-month, the employee, the total hours, the billable amount — the money the employee never sees — and the status.
- Click Approve: the line becomes APPROVED and the real sequential TS-number from the shared "Project Timesheet" series is stamped as its title. From that moment the timesheet is locked — it is payroll/invoicing input, and edits or deletes refuse. Or click Reject: the line turns REJECTED and the employee's Submit task reopens in their Inbox — they correct the days and resubmit in the same flow.
2. The project-month adds itself up — the system
- Every booked day already rolled up to its employee line, and every line rolls up to the Project Timesheet (the project-month): its read-only total hours and billable amount are the sums across the whole team. After the last approval, the value to bill is sitting on the project-month.
3. Generate the invoice — Project manager / back office
- In the Projects sidebar group open Project Timesheets and select the month — e.g. "2026 July - Acme Website Redesign", status OPEN, customer already filled from the project. Selecting the row opens its record panel.
- Click Generate Invoice above the details. Because this creates data, a short confirmation appears — "Run Generate Invoice for the selected record? This creates or changes data." Click Run (or Cancel to back out). A draft Sales Invoice is created for the timesheet's customer and company, dated today, in that company's base currency, with its own numbering and approval flow. (The currency matters for what happens later: a customer payment settles an invoice automatically only when the two are in the same currency.)
- The invoice arrives with its lines already filled in — one line per employee on the timesheet, named after the employee (e.g. Ivan Petrov, Maria Georgieva) and priced at that employee's billable amount (quantity 1), so the customer reads whose work each line is and the invoice total matches the labour billed. Standard VAT applies per line. Edit or add lines before issuing if you need to.
- The moment the invoice exists, the project-month flips to INVOICED — an already-billed period is visible at a glance and won't be invoiced twice by accident. An INVOICED project-month is billing history: it, too, is locked against edits and deletes.
What happened behind the scenes
- The TS-number belongs to each employee's timesheet and is stamped only on approval, from the document numbering "Project Timesheet" series; the project-month itself carries no number — its title is period + project.
- Status paths: employee timesheet DRAFT → SUBMITTED → APPROVED, or REJECTED and back through submit; project-month OPEN → INVOICED (set for you when the invoice is generated).
- Locking: an APPROVED employee timesheet and an INVOICED project-month refuse user edits and deletes; the system's own roll-up recomputes and workflow writes still go through.
- The generated invoice lives in Sales Invoices and follows that module's own flow (issue, send, payment) from DRAFT onward.
Variations and refusals
- Reject marks the employee's line REJECTED — no number is stamped; hours stay booked, the totals stay rolled up, and the employee's Submit task reopens so the correction round stays in the same flow.
- Next month needs no manual roll-forward: the monthly schedule creates the new OPEN project-month with fresh pre-filled lines for every project still ACTIVE (see Plan a project).