Skip to content

Independent product / built solo

Billhead.

Invoicing and hours for solo trades.

My role
Sole engineer
Working with
Solo
When
2026
Billhead / product screen
Billhead / product screen

The problem

Invoicing apps for tradespeople are rented, not owned. I hand-classified 271 one- and two-star reviews of Invoice2go, Invoice Simple and Joist: pricing was the single most common complaint in all three, with people explicitly asking for a one-time fee. The pattern underneath was worse than price — apps that cap invoices on the free tier, move existing features behind a new paywall, hold your data until you pay, or sit on your money through their own payment processing. Users churning from those apps were leaving for free ones, so beating free had to mean something other than being cheaper.

What I built

My part
in the product.

Built alone — research, design, build and store release.

  1. 01

    An offline-first invoice and estimate builder over SQLite, with no account and no network dependency — it works in a basement with no signal, which is where a lot of this work actually gets quoted.

  2. 02

    Manual hours tracking that imports straight into an invoice, so logged time becomes a line item without retyping.

  3. 03

    Reports and CSV export, multiple businesses under one org-style switcher, payment-instruction templates, and a customisable logo.

  4. 04

    iCloud backup using VACUUM INTO snapshots, so the database is copied consistently rather than while mid-write.

  5. 05

    Full localisation into English, French and Spanish, including the store listing and screenshots.

A closer look

The actual product.

Billhead / product screen
Billhead / product screen
Billhead / product screen
Billhead / product screen

Decisions worth explaining

Why it works
this way.

01

Pay once, not subscribe. The lifetime unlock is the headline offer because the research said the subscription itself was the grievance. A lower-priced monthly plan was added later for people unwilling to commit up front, but the ordering always puts lifetime first.

02

Manual export is always free, permanently. It is published as a promise on the listing. The competitors' worst behaviour was making your own invoices hostage to a lapsed subscription, and an anti-feature only counts if you commit to it where customers can hold you to it.

03

No card processing. Taking payments in-app would mean holding tradespeople's money and skimming roughly three percent of it. Payment instructions go on the invoice instead and the money goes directly to them.

04

No caps on the free tier and no moving features out of free. Both are stated on the listing, because both were the specific betrayals that generated the one-star reviews I read.

Tools used on this project

Expo / React Native / SQLite / Drizzle / RevenueCat

Next project

Promote ↗︎

Campaigns for brands. Paid participation for creators.

← Back to this project in selected work

Summer 2027 co-op · flexible term length

Let’s make it work.

MohammedAbdulla.

Getting things ready