Billing and contracts tied to the work that earned them.

Contracts with retainer periods and renewal dates. Deliverables slice contract value into billable units, each with its own billing type. Invoices build from hours, milestones, fixed fees, and reimbursable expenses.

Everything you can do with billing & contracts

Bill from what actually happened, not from a spreadsheet rebuild.

Try for free

Inside billing & contracts

Every piece that makes this work, and what each one is actually for.

From closed deal to paid invoice

A won deal converts into a draft contract and its deliverables in one move, and the value it was sold at is frozen at that moment. Every deliverable carries its own billing type, which is what lets one agreement mix fixed fee and time and materials. Invoices point at the deliverable they came from, so recognized, invoiced, and collected stay three separate numbers instead of one hopeful one.

What this removesThe export and reconcile step between your CRM, your timesheets, and your accounting. Margin is computed from the same rows the work was done on.
See how everything connects

The questions this actually answers.

The long version, because this is where the category has real objections.

Can one contract hold fixed fee and hourly work?

Yes, and this is the piece most tools get wrong. A contract splits into deliverables, and each deliverable carries its own billing type: fixed fee, time and materials, milestone, or retainer. One agreement can bill a discovery phase at a fixed price and the build hourly, and each invoice knows exactly which slice of the contract it draws down.

Deliverables as billing units

Each slice of contract value bills its own way.

Signed value stays frozen

Scope creep has something to show against.

Budgets fund from deliverables

Coverage is computed, not asserted.

What builds the invoice?

Approved hours, milestones, fixed fees, and reimbursable expenses, each pointed at the deliverable it belongs to. Nothing is re-typed from a spreadsheet, so the invoice ties back to the work that earned it, line by line, when the client asks where a number came from.

How do retainers stop leaking?

Retainer periods follow the contract anniversary, and the burn is calculated from real approved entries rather than someone’s recollection. You see the balance, the client can see it too if you choose, and the month the retainer stops covering the work is the month you find out, not the quarter after.

Who owes you what, right now?

Payment tracking, account balances, and aging views sit on the client record, next to the projects and the contract. The awkward conversation about the unpaid invoice happens with the full relationship in view, and the chase list orders itself by age without a Friday spreadsheet rebuild.

Every module has its own page.

The short version lives here. Each module below has a page of its own with the views, fields, and edge cases spelled out.

Questions people actually ask

Can we mix billing types in one contract?

Yes. Deliverables slice a contract into billable units, each with its own type: fixed fee, hourly, milestone, or retainer, all on one agreement.

Where do invoice line items come from?

From approved hours, milestones, fixed fees, and expenses. Each line traces to the deliverable and the work behind it, with nothing re-typed.

How does retainer usage get calculated?

From real approved time entries per period. Balance and burn are computed, and can be shared into the client portal if you want them visible.

Can we see what is overdue?

Yes. Payment tracking, balances, and aging views live on the client record, so receivables sit next to the relationship they belong to.

What about the money going out?

Expenses with receipt capture and approvals, contractor invoices tied to the work they paid for, and suppliers with terms and purchase history.

Do billing schedules help with forecasting?

Yes. Planned billing is laid out ahead of time, so forecast revenue and issued revenue keep the same shape and the gap between them is visible.