Skip to content

Time Log to Invoice Draft

Example prompt: "On the first working day of each month, pull every time entry from last month from Harvest. Group by client and by project tag, round each session to the nearest 15 minutes, and apply the hourly rate from that client's row in our rates Google Sheet. Draft an invoice in Xero for each client — do not send — with a line item per project and a short summary of what was done. When the drafts are ready, post a message to #billing in Slack with the draft totals and links so I can review and send."

The Problem

Invoicing from a month of time entries is the kind of job that no one schedules and no one enjoys. The data has to be reconciled by hand: time entries grouped by client, the right hourly rate applied per project, sessions rounded into billable units, and a sensible description written for each line. Done well it takes a morning. Done hurriedly it causes embarrassing errors — an old rate, a missed project tag, a client's hours billed to someone else.

How GloriaMundo Solves It

We build a scheduled workflow for the first working day of each month. An integration step pulls every time entry from Harvest for the previous calendar month. A code step groups the entries by client and by project tag, rounds each session to the nearest 15 minutes, and multiplies through by the rate from the rates Google Sheet. An LLM step writes a short human-readable summary per project line, drawing on the entry notes. An integration step creates a draft invoice in Xero for each client — drafts only, never sent — with one line per project. A final integration step posts a summary in Slack listing every draft, its total, and a direct link so the finance lead can review and send.

Example Workflow Steps

  1. Trigger (scheduled): First working day of each month at 9am.
  2. Step 1 (integration): Pull every time entry from Harvest for the previous calendar month.
  3. Step 2 (integration): Read the per-client hourly rates from the rates Google Sheet.
  4. Step 3 (code): Group entries by client and by project tag, round each session to the nearest 15 minutes, and apply the matching rate.
  5. Step 4 (llm): For each project line, write a short plain-English summary of what was worked on based on the entry notes.
  6. Step 5 (integration): Create a draft invoice in Xero for each client, with one line item per project tag and the summary as the line description.
  7. Step 6 (integration): Post a summary message in #billing on Slack with the total and a link for each draft invoice.

Integrations Used

  • Harvest — source of the previous month's time entries
  • Google Sheets — holds the per-client hourly rates
  • Xero — where the per-client draft invoices are created
  • Slack — posts the review list for the finance lead

Who This Is For

Agency owners, operations managers, and independent consultants who bill monthly against logged time and want invoicing to take half an hour of review rather than half a day of reconciliation.

Time & Cost Saved

Manually reconciling a month of time entries across ten to twenty clients, applying rates, writing line descriptions, and drafting invoices typically takes an entire morning — three to four hours. This workflow brings that to a 30-minute review of the Glass Box preview and the generated drafts. Because drafts are reviewed before sending, there's no risk of an automated rate error reaching a client.