Invoice Ninja

financesmall businessindie hacker

Self-hosted invoicing, quotes, expenses, and payment collection for freelancers and small businesses. Unlimited clients and users when self-hosted. 50+ payment gateways, time tracking, and a client portal included

#invoicing#billing#payments#freelance#time-tracking#client-portal#stripe#recurring-billing
Alternative to FreshBooksQuickBooksWave

Quick Start

docker compose up -d

Overview

Invoice Ninja is a self-hosted invoicing and billing platform for freelancers and small businesses who want to manage their entire billing workflow without a monthly subscription. The self-hosted version is free and unlocks all enterprise features, including unlimited clients, unlimited users, and the full payment gateway library.

The feature set goes further than basic invoicing. Time tracking ties directly to invoice generation, so billable hours become line items without copying data between tools. The client portal lets customers view invoices, approve quotes, and pay online. Over 50 payment gateways are supported including Stripe, PayPal, Square, GoCardless, and Mollie, with no added processing fees beyond your gateway’s standard rate. Flutter-based apps run on iOS, Android, and desktop.

What Invoice Ninja does not do: accounting. There is no double-entry bookkeeping, no profit and loss reporting, and no direct sync with QuickBooks or Xero. If you need those, a dedicated accounting tool handles that side. Invoice Ninja is squarely focused on the invoicing and payment collection workflow.

A few rough edges worth knowing: the v4 to v5 migration was a ground-up rewrite that caused friction for existing users. Support is email only and can be slow. Third-party integrations outside the payment gateway list rely on Zapier rather than native connectors. The license is also Elastic License 2.0, which is source-available rather than fully open source — you can self-host freely, but you cannot offer it as a managed service to others.

For a solo operator or small agency that sends invoices and collects payments, it covers the workflow without a recurring fee.

Invoice Ninja: Pros & Cons

Pros (The Wins)Cons (The Friction)
Self-hosted is free:
All enterprise features unlocked;
unlimited clients and users.
Not accounting:
No double-entry bookkeeping or
P&L; invoicing only.
50+ payment gateways:
Stripe, PayPal, GoCardless, Mollie;
no added processing fees.
Support:
Email only; response times
can be slow.
Time tracking:
Billable hours convert directly
to invoice line items.
Integrations:
No native accounting sync;
Zapier required for most connections.
Client portal:
Customers view, approve, and
pay invoices in one place.
License:
Elastic License 2.0; source-available,
not fully open source.

Use Cases

Specific ways to use Invoice Ninja for your workflow.

01
Send invoices and collect payments without a monthly subscription
02
Track billable hours and convert them directly to invoice line items
03
Give clients a portal to view, approve, and pay invoices online
04
Replace FreshBooks for a freelancer who wants to own their billing data

Deployment Strategy

Recommended ways to host Invoice Ninja in your own environment.

docker
self-hosted