Skip to case study

2026 - Present

JustInvoice: keeping phased billing connected

Designing an invoicing product with estimates that can become multiple invoices while preserving the original billing relationship.

Next.js · Convex · Clerk · Tailwind · Shadcn

Visit project

Problem

Freelancers often bill a project in phases, such as an upfront payment and a final payment. Creating unrelated estimates or manually tracking partial conversions makes that relationship harder to follow.

My role

I designed and shipped JustInvoice for freelancers and small businesses, covering estimates, invoice lifecycle, PDFs, public share links and payment status.

Decision

I modeled estimate conversion as a partial amount rather than a single all-or-nothing action. The Convex-backed workflow tracks the converted amount and keeps the original estimate linked to the invoices created from it.

Result

The documented implementation lets one estimate become multiple invoices, retaining the remaining amount and distinguishing partially converted estimates from fully converted ones.

Further reading

The build article, published 8 February 2026, explains partial estimate conversion and the wider invoicing workflow.