Create an invoice from unbilled work

Timebun drafts an invoice from the work a client has waiting: finished, billable time that isn't on another invoice and isn't covered by hours the client already bought, plus approved billable expenses. Before the draft, you choose which projects, which dates and whether expenses go on it. You review the draft, then send it.

Only Admins and the Owner (shown as Portal admin in the app for now) can draft invoices, and you need Stripe connected first — see Connect your Stripe account.

Open the New invoice dialog

Every starting point opens the same dialog:

  • Invoices → New invoice. First choose the client: the list shows every client with work waiting, with the hours and the amount. Click a client. All clients takes you back to the list.
  • A client's page → Create invoice, or the client's Invoices tab → New invoice. Every project starts ticked.
  • A project's page → Create invoice. Only that project starts ticked; the client's other projects are listed so you can add them.

On a client or project page the button is greyed out when there's nothing to invoice; hover it for why.

the New invoice dialog listing clients with work waiting

Choose the work

  1. Under Work dated, pick a period: - All unbilled — everything waiting, whenever it was done. - Through end of last month — everything up to and including the last day of last month. - Through end of last week — everything up to and including last Sunday. - Custom — type a From date, a To date, or both. Leave From empty for "everything up to this date".
  2. Tick or untick Include billable expenses.
  3. Under Projects, tick the projects to bill. The All box beside the heading ticks or unticks them together. Time and expenses filed under no project appear as No project, at the end. With more than eight projects you can type in Filter projects.
  4. Check the Total at the bottom: the hours, the time amount and the expenses for what you chose. It updates as you change anything, and the draft bills exactly this.
  5. Click Create draft.

Timebun creates the draft in Stripe and opens it. Nothing reaches the client until you send it.

the New invoice dialog for one client, with Work dated, the projects ticked and the Total

Dates are inclusive. A time entry counts on the day it was worked in the workspace's timezone, whoever creates the draft — the date its line prints. Through end of last month and Through end of last week are counted in the workspace's days too. An expense counts on its own date. Work you leave out stays unbilled and is offered again next time.

What the dialog tells you

  • Client already has a draft invoice — the client has an open draft, listed with the day it was started and its total. Click Open draft to finish that one instead. Work already on a draft isn't offered again.
  • N entries have no rate on a project — Timebun won't draft while a chosen entry has no price. Add a rate (client, rate card, project or workspace default) or mark the entries non-billable, or leave that project or those dates out. An unpriced entry outside your choice doesn't stop the draft.
  • Bills directly, outside the retainer — the client has a retainer, but this project's time goes on the invoice rather than drawing down their hours.
  • Archived — the project is archived but still has work waiting.
  • Nothing to bill in what you chose — projects with no work in the chosen dates are grouped at the bottom of the list.
  • Choose at least one project. — every project is unticked.

An invoice can carry at most 250 lines. If more is waiting, bill fewer projects or a shorter period at a time.

What goes on the draft

  • One line per time entry: the date (written month/day/year, such as 09/30/2026), the project (or Unassigned), the person, then what they wrote.
  • Then one line per expense: the date, the project, the category, then the expense title.
  • Two fields at the top of the invoice: Billing period, and Retainer balance (hours remaining) if the client has hours left.

The Billing period is the dates you chose. With only a To date (or a "Through end of…" period), it starts on the first day of work on the draft; with only a From date, it ends on the last. With All unbilled, it runs from the first day of work to the last.

Time drawn from a retainer is left off — it was paid for when the hours were bought. An entry that ran past the client's hours bills only the part the balance didn't cover. Expenses always bill in full, even for a client with hours left.

Edit the draft

On a draft, under Lines on this draft:

  • Click a description to reword what the client reads.
  • Change Hours or the rate. Stripe recalculates the amount. Changing hours also changes that entry's billed hours; its tracked hours stay. See Billed hours and write-downs.
  • Click the bin icon to remove a line. The time entry or expense isn't deleted; it becomes billable again for a later invoice.

Expense lines bill what the expense cost, so you can't re-price them here — remove the line, correct the expense, and draft again.

Delete draft throws the whole draft away and makes all its work billable again. When you're happy, click Finalise and send — see Send an invoice and who receives it.

Work on a draft is held for that draft, so nobody else can bill the same hours twice while it sits unsent.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.