Retainers
Recurring fees and prepaid hour blocks that track their own burn, draft their own invoices and lock the time they billed.
A retainer is a standing deal with a client: a fee each period with some hours included, a prepaid block of hours, or a flat monthly fee with nothing metered. Describe the deal once and Quanta tracks the burn, drafts the invoices on schedule, and settles each period's time so it can never be billed twice.
Retainers need the Retainers permission and the workspace switch (Workspace Settings → General → Features → Retainers). They live under Business & Projects → Retainers, and a project's sheet has a Retainer tab for one scoped to that project.

Setting one up
New retainer opens the form. Top to bottom:

| Setting | Options |
|---|---|
| Name | Optional; defaults to something sensible. |
| Applies to | Just this project, or Client-wide: one allowance pooled across every project of this client, current and future. |
| Draws down | Included hours: an hours allowance per period (0 = flat fee only, no hours tracking). Or The fee, at billable rates: a money budget where each entry consumes the fee at its own rate, so senior time drains it faster; optionally with a % rate discount. |
| Fee per period | The amount billed each period (or once, for a one-off). |
| Covered people | Everyone in scope, or specific people. Time from anyone not covered bills normally, on the same invoice. |
| Unused hours | Expire each period, or Roll over (capped) up to Max carried hours. |
| Overage bills at | Each person's own rate, A flat rate (Flat overage rate), or Don't bill overage. |
| Cadence | Monthly, Quarterly, Yearly (a maintenance plan billed once a year) or One-off (a single block with no periods and no reset). |
| Start date, Payment terms, Tax profile | As on an invoice. |
| Bill the fee | At period start (in advance) or At period end (in arrears). |
| Bill overage | Own invoice at period end, or On the next fee invoice. |
| Extra recurring lines | Fixed lines added to every fee invoice, e.g. Hosting. |
| Auto-draft invoices | Let Quanta create the draft invoices at each boundary. Off means you press Bill fee now yourself. |
| Visible in client portal | Show this retainer, its usage and its invoices in the client portal. The workspace and client visibility settings must also allow retainers. |
| Auto-pay | Off, Charge when sent or Fully automatic. See Auto-pay below. |
Only billable time draws a retainer. If the project bills as non-billable or fixed fee, the form offers to Turn on hourly billing with a Default billable rate when you save.
What happens each period
At every period boundary (or when you close a period by hand) Quanta cuts a statement: it sweeps all unbilled covered time to date, works out covered hours, overage and carry, and settles those entries so they show a lock in the timer (Part of the closed statement … on retainer …). Then it bills whatever is owed, following your Bill the fee and Bill overage choices. A period with nothing owed produces a statement and no invoice; an invoice is never $0.
Time logged late lands in the next sweep rather than leaking. Non-billable time never draws the retainer.
The retainer page
Click a retainer for its page:

- Needs attention: a banner at the top when something is waiting on you, such as a declined card, an overdue invoice, billing that hasn't run or a block over its hours, with the button that fixes it.
- Summary cards: this period's usage (or the block's balance), the fee, and when the next invoice goes out.
- Terms: the deal as the client sees it, beside Payment (auto-pay and the saved card) and Internal settings the client never sees.
- Invoices: every invoice the retainer produced, with its auto-pay state, and buttons to copy the payment link or email it.
- Usage by period: each closed period's hours against the allowance, a trend across them, and the invoices each one settled. Reopen puts a closed statement back if something was logged late or wrongly (its entries become unbilled again). On a one-off block this tab is the Ledger: every purchase, top-up, time logged, wrap-up and write-off, with the balance after each.
- Time entries: everything that drew the retainer, a period at a time, with column filters for person, project and status, grouping, and a CSV download.
Actions in the header:
- Edit the deal. Lines the retainer generates on invoices are locked to it; change the deal here, not on the invoice.
- Bill fee now: draft the fee invoice immediately, for example at signing.
- Top up block (one-off blocks): add hours, with a draft invoice for them. A top-up can be removed, which deletes its invoice and returns the hours.
- Lock entries to date: settle everything so far without waiting for the boundary.
- Wrap up this block when a prepaid block is finished, writing off any overrun or billing it per the overage rule; Undo wrap-up reverses it.
Auto-pay
Auto-pay charges a card your client saved to each retainer invoice. The card is entered on Stripe's checkout page and kept by Stripe on your connected account; Quanta only stores its brand, last four digits and expiry. Choose it on the retainer form:
| Auto-pay | What happens |
|---|---|
| Off | Clients pay by link, or you record the payment. |
| Charge when sent | You review each draft; sending it charges the client's saved card. |
| Fully automatic | Each period's invoice is sent and charged with no review. Only offered when the invoice is the same amount every time: not for a one-off block, and not when time beyond the allowance is billed, time from people outside the covered list is billed, or expenses are billed. |
The Auto-pay setting needs the client portal switched on, Stripe connected under Integrations and online payments allowed for the client. Until then the retainer page says what's missing.
Your client saves the card from a retainer invoice. The invoice page asks How would you like to pay? and offers to pay now and save the card, to save the card and charge the invoice on the day its period starts, or to pay once without saving it. A saved card is never charged before the invoice's period starts. See Retainer auto-pay for what your client sees.
The retainer page has an Auto-pay panel:

- The card on file, who saved it and when, or No card on file yet until your client saves one.
- Email invoice sends the retainer's invoice that hasn't gone out yet, or sends the oldest unpaid one again (Email invoice … again). With no invoice yet, the panel tells you the first invoice will ask your client to set up auto-pay.
- Copy invoice link copies the portal link of a sent, unpaid invoice, to paste wherever you talk to your client.
- Remove card stops the automatic charges. Only your client can save a card again, from the page of their next unpaid invoice.
- Every charge with its date, invoice, amount, status and, for a failed one, the reason.
A declined card is tried again three days after the first attempt and once more at seven days. Your client is emailed a link to pay or update the card, and you are emailed too. After the last attempt the invoice falls back to your normal payment reminders.
The list
Each row shows the retainer and its client, Scope (Client-wide or the project), This period (hours used against the allowance, days left, and how overage bills), Fee, Cadence, Next invoice (with auto-draft when Quanta will create it) and how many Invoices it has produced. The Active and Deactivated tabs split the list; a badge marks a block as Exhausted or a one-off as Completed.
With the fee billed At period start (in advance), the first fee invoice is drafted the moment you create the retainer, so a new deal shows one invoice straight away.
Status
Deactivate stops auto-drafting and stops time drawing the retainer; history and invoices stay and it can be reactivated. Delete stops future generation; invoices already generated are not affected.
Retainers and budgets
A budget is a guardrail for your team; a retainer is a deal with the client. They do not reference each other. If you just want a warning at 80% of the hours you quoted, use a project budget.