InvoiceShelf
InvoiceShelf is a self-hosted accounting replacement for Quickbooks and Xero.
Open-source invoicing and expense tracking, honestly reviewed. No marketing fluff, just what you get when you deploy it yourself.
TL;DR
- What it is: Open-source (AGPL-3.0) web and mobile invoicing platform — track expenses, create invoices and estimates, manage payments, all on your own server [README].
- Who it’s for: Freelancers and small business owners who want professional invoicing without a monthly SaaS subscription, and who are comfortable running a Docker container.
- Cost savings: FreshBooks starts at $17/mo, QuickBooks at $30/mo, and both scale upward. InvoiceShelf self-hosted runs on a $5–10/mo VPS with no per-invoice or per-user fees.
- Key strength: It covers the core invoicing loop completely — recurring invoices, customer portal, custom fields, multiple companies — and it ships a REST API. Most solo-founder use cases are solved out of the box [README].
- Key weakness: AGPL-3.0 license (not MIT), mobile apps listed as “coming soon” despite being on the roadmap, Stripe integration still pending, and the project has only 1,621 GitHub stars — a much smaller community than Invoice Ninja or ERPNext [README][2].
What is InvoiceShelf
InvoiceShelf is a self-hosted web application for creating and sending invoices, building estimates, tracking expenses, and managing client payments. The web app is built on Laravel and VueJS; a React Native mobile companion is listed in the roadmap but not yet released [README].
The project is a direct successor to Crater, an earlier open-source invoicing app that lost active maintenance. InvoiceShelf credits Crater explicitly in its README — same codebase lineage, continued development. If you ever set up Crater and watched it go quiet, InvoiceShelf is essentially its second life [README].
What the project ships today: professional invoice and estimate generation, recurring invoices, a customer-facing portal, multiple company support, custom fields on invoices and estimates, an installation wizard, in-app update capability, email configuration, and Docker-based deployment. The REST API is documented separately at api-docs.invoiceshelf.com [README]. As of this review, it sits at 1,621 GitHub stars — growing, but nowhere near the footprint of Invoice Ninja (which AlternativeTo users have given 34 likes with 182 alternatives listed) or ERPNext (101 likes) [2].
The license is AGPL-3.0. That matters: AGPL means if you modify and deploy InvoiceShelf as a service for others, you must open-source those modifications. For a founder using it internally to invoice their own clients, it’s irrelevant. For a developer who wants to build a multi-tenant invoicing product on top of it and sell it, AGPL is a harder constraint than MIT. Keep that in mind.
Why people choose it
No dedicated long-form InvoiceShelf reviews appeared in the source material for this article. What does exist is the broader self-hosting argument and the competitive landscape in the invoicing category [1][2][3].
The primary reason founders choose InvoiceShelf over FreshBooks or QuickBooks is the one that applies to nearly every self-hosted finance tool: you own the data and you stop the monthly bill. Roman Zipp’s self-hosting essay [1] puts it plainly — cloud services can lock accounts with no recourse, invoicing data contains your full client list, payment history, and revenue figures, and there’s no regulatory reason a third party needs to hold any of it. Invoice data is particularly sensitive: it maps directly to your revenue, your client relationships, and your business health. Handing that to a SaaS whose pricing can change is a deliberate bet.
The second reason is cost. FreshBooks and QuickBooks charge per user, per feature tier, and sometimes per invoice volume. InvoiceShelf has none of those. A $6 VPS runs the stack.
The third reason is Crater migration. A non-trivial segment of InvoiceShelf’s existing users came from Crater — the codebase they already knew, the data structure they already had. InvoiceShelf was the natural continuation when Crater stopped shipping updates [README].
What the reviews don’t show: evidence that InvoiceShelf specifically beats Invoice Ninja for features, or that its UI is cleaner than Frappe Books. Those comparisons may be true but they’re not documented in available third-party coverage. Take the feature comparison in the next section as sourced directly from the README, not from user testimonials.
Features
Based on the README, completed roadmap items, and project documentation:
Core invoicing:
- Create, send, and track invoices with professional PDF output [README]
- Estimates that can be converted to invoices [README]
- Recurring invoices — set a schedule and let it run [README]
- Edit email content before sending an invoice [README]
- Custom fields on invoices and estimates [README]
- Address customization and default notes [README]
- Multiple companies in a single instance [README]
Client management:
- Customer portal — clients can view their invoices without needing to email you [README]
- Customer view page for in-app client profiles [README]
Payments and expenses:
- Expense tracking [README]
- Payment recording (manual)
- Stripe integration: not yet shipped — listed as pending in the roadmap [README]
Technical:
- REST API with separate documentation (
api-docs.invoiceshelf.com) [README] - Docker and Docker Compose deployment [README]
- In-app updater (checks PHP requirements before upgrading) [README]
- Email/SMTP configuration [README]
- Installation wizard for first-time setup [README]
- Translation support via Crowdin (community-translated) [README]
What’s missing:
- Mobile apps: React Native source exists at
github.com/InvoiceShelf/mobilebut both Android and iOS are listed as “Coming Soon” [README] - Payment processing: no built-in gateway yet — Stripe is on the roadmap but not done [README]
- Templates marketplace: planned but not shipped [README]
- SSO or LDAP: not mentioned anywhere in the docs or roadmap
The practical hole here is payment collection. InvoiceShelf can generate an invoice and send it, but if you want the client to click “Pay Now” and have money move, that’s not wired up yet. You’d send the invoice and receive payment outside the system — bank transfer, PayPal link, Stripe invoice separately. For many freelancers that’s fine. For anyone who wants the full loop in one tool, it’s a real gap until Stripe ships.
Pricing: SaaS vs self-hosted math
InvoiceShelf has no cloud offering — it’s self-hosted only. The software is free. What you pay for is infrastructure.
Self-hosted cost:
- Software: $0 (AGPL-3.0) [README]
- Minimum VPS: $5–6/mo on Hetzner or Contabo (2 vCPU, 4GB RAM handles a single-tenant install comfortably)
- Domain + SSL: covered by Caddy or Let’s Encrypt for free
- Your time to deploy: 30–90 minutes
Comparable SaaS pricing (market reference, not InvoiceShelf-specific):
- FreshBooks Lite: ~$17/mo for 5 clients; Plus ~$30/mo for unlimited clients
- QuickBooks Simple Start: ~$30/mo; Essentials ~$60/mo
- Invoice Ninja Pro: $10/mo for their cloud (or self-host free) [2]
- Wave: free for invoicing but charges 2.9% + $0.60 per card transaction
Math for a freelancer with 20 active clients: FreshBooks Plus at $30/mo = $360/year. Self-hosted InvoiceShelf on a $6 Hetzner VPS = $72/year. That’s $288/year saved, or about 4 hours of freelance work at $70/hr. If your setup takes 2 hours, payback is 3 months. After that it’s pure savings, and it compounds every year as SaaS prices creep up.
The more interesting case is a small agency billing 10+ clients a month at higher volumes. QuickBooks Essentials at $60/mo is $720/year for features InvoiceShelf covers in the free tier. The VPS stays at $72.
Caveat: these savings assume you’re comfortable with basic Linux/Docker. If you’re not, you’re either spending time learning or hiring someone once to deploy it. A one-time deployment fee (several hundred dollars) still pays back within a year against FreshBooks Plus.
Deployment reality check
InvoiceShelf ships a Docker Compose setup as the primary install path [README]. The documentation is at docs.invoiceshelf.com.
What you actually need:
- A Linux VPS (Ubuntu 22.04 or Debian 12 recommended for broad PHP package support)
- PHP 8.4+ — required as of v2.2.0; this is a non-trivial constraint if you’re on shared hosting or an older VPS image [README]
- Docker and docker-compose (if using the container path)
- A MySQL or MariaDB database (bundled in docker-compose or external)
- A reverse proxy (Nginx or Caddy) for HTTPS
- An SMTP provider for sending invoices by email
What can go sideways:
- The PHP 8.4+ requirement is recent (Laravel 13 upgrade in v2.2.0) and the in-app updater will block upgrades if your server doesn’t meet it [README]. If you deployed on a VPS with PHP 8.1 a year ago and forgot about it, a routine update will silently refuse to proceed. Check your PHP version before upgrading.
- Mobile apps don’t exist yet. If a client-facing mobile app is important to your workflow — to capture expense receipts on the go, for instance — you’re waiting [README].
- Stripe integration is absent. No payment button on your invoices until that ships. For B2B freelancers who invoice on net-30 terms and get paid by bank transfer, not a blocker. For anyone who sends invoices to consumers expecting immediate card payment, this is a real gap [README].
- The project has a Discord server but 1,621 stars is a modest community. If you hit a bug or edge case, you may be waiting longer for a fix than you would with Invoice Ninja or a more established tool [README][2].
- Website scrape for invoiceshelf.com returned an error during research — the homepage may have availability issues or bot-blocking [scraped data]. All feature data here is sourced from the README directly.
Realistic time estimates:
- Technical user, Docker path: 45–60 minutes to a working instance
- Non-technical founder following a tutorial: 2–3 hours including domain and SMTP setup
- No experience with Linux servers: plan a full afternoon or get someone to deploy it for you
Pros and Cons
Pros
- No subscription, ever. The software is free, the API is free, recurring invoices are free. Your monthly cost is the VPS [README].
- Complete invoicing loop for most freelancer/small-business use cases: invoices, estimates, recurring billing, customer portal, multiple companies, custom fields — all shipped [README].
- REST API included. If you want to generate invoices programmatically or integrate InvoiceShelf with other tools, the API is documented and available [README].
- In-app updater with PHP version gating — it won’t brick your install by upgrading to a version your server can’t run [README].
- Crater migration path. If you used Crater, InvoiceShelf is its direct continuation with the same data model [README].
- Community translation via Crowdin — useful if your clients are in non-English markets [README].
- Docker-first deployment makes the install reproducible and portable [README].
Cons
- AGPL-3.0, not MIT. You can self-host freely for your own business. If you want to build a multi-tenant product on top of InvoiceShelf, AGPL requires you to open-source your modifications [README].
- No payment collection. Stripe integration is on the roadmap but not shipped. You can send invoices; you can’t yet take card payments through the system [README].
- Mobile apps are vaporware for now. Listed as “Coming Soon” in the README despite existing source code [README].
- Small community. 1,621 stars and a Discord server. Invoice Ninja has more AlternativeTo votes and a longer community history [2]. Bug reports may move slowly.
- PHP 8.4+ hard requirement from v2.2.0 catches people upgrading from older setups [README].
- No SSO, LDAP, or team governance features documented anywhere. Fine for a solo user, limiting if you want to bring an accountant into the system with restricted access.
- No cloud version. Unlike Invoice Ninja (which offers a hosted option), there’s no managed InvoiceShelf. You’re fully on the hook for uptime and backups.
- Limited third-party coverage. No substantial independent reviews found during research — hard to know what real users hit in production outside of GitHub issues.
Who should use this / who shouldn’t
Use InvoiceShelf if:
- You’re a freelancer or small business owner paying $15–60/mo for FreshBooks or QuickBooks and you want that bill to stop.
- Your invoicing workflow is: create invoice → email to client → receive payment outside the system (bank transfer, etc.).
- You’re comfortable deploying a Docker container or willing to pay someone once to do it.
- You came from Crater and want to keep your data in a maintained fork.
- You want an API so you can automate invoice generation from another tool.
Skip it (consider Invoice Ninja instead) if:
- You want a more mature open-source alternative with a larger community, more integrations, and an optional managed cloud tier. Invoice Ninja has 34+ AlternativeTo votes and is actively deployed by more users [2].
- You need built-in payment collection now, not eventually.
- You want a mobile app for expense capture today.
Skip it (consider Frappe Books instead) if:
- You’re a solo founder who wants a desktop-first experience without running a server. Frappe Books is a free, open-source desktop accounting app with invoicing built in [2].
Skip it (stay on FreshBooks/QuickBooks) if:
- You have fewer than 5 clients and the free tier of Wave or Invoice Ninja covers you.
- You need integrated payment processing and can’t wait for the Stripe roadmap item.
- Your accountant or bookkeeper needs access and you don’t want to manage their server access.
- You’ve never touched a Linux server and don’t plan to learn.
Skip it (consider ERPNext or Dolibarr) if:
- You need invoicing as part of a broader ERP — inventory, HR, CRM, purchasing. ERPNext (101 AlternativeTo likes) and Dolibarr (48 likes) cover the full stack [2].
Alternatives worth considering
From the AlternativeTo invoicing category and adjacent finance tools:
- Invoice Ninja — the most direct comparison. Also open-source, also self-hostable, has a freemium cloud tier, more community traction, and built-in payment gateway support. 34 AlternativeTo likes vs InvoiceShelf’s smaller footprint [2]. The realistic first choice for most people in this category.
- Frappe Books — from the makers of ERPNext. Free, AGPL-3.0, desktop-first (Mac/Windows/Linux), covers invoicing and basic accounting without requiring a server. Good for solo founders who don’t want to run infrastructure [2].
- Dolibarr — GPL-3.0 ERP/CRM that includes invoicing. 48 AlternativeTo likes. More complex than InvoiceShelf but covers inventory, HR, and CRM in the same install [2].
- ERPNext — the comprehensive option. 101 AlternativeTo likes, full ERP including invoicing, inventory, payroll, manufacturing. Significant complexity overhead; overkill if you just need invoices [2].
- Summit Finance — newer MIT-licensed self-hosted invoicing app. 12 AlternativeTo likes, targeting freelancers and agencies. MIT license is more permissive than InvoiceShelf’s AGPL [2].
- Wave — free SaaS for invoicing, accounting, and banking. Zero self-hosting, closed source, charges per transaction on payments. Suitable if you want zero infrastructure and the SaaS trade-off is acceptable.
For a non-technical founder choosing between self-hosted invoicing options, the realistic shortlist is InvoiceShelf vs Invoice Ninja. Invoice Ninja wins on features and community size; InvoiceShelf wins if you’re already on the Crater data model or prefer a simpler, more focused interface.
Bottom line
InvoiceShelf solves the core problem — generating and sending professional invoices without a monthly SaaS bill — and it does it on a tech stack (Laravel, VueJS, Docker) that’s well-understood and easy to run. The Crater lineage gives it a real codebase to build on, and the completed roadmap items show active development: recurring invoices, customer portal, multiple companies, custom fields all work today. The REST API makes it extendable.
The honest caveat: at 1,621 stars and with mobile apps still pending and Stripe not yet wired up, InvoiceShelf is the right choice for a specific user — a freelancer or small-business owner who invoices clients on net terms, receives payment via bank transfer or check, and wants to stop writing a SaaS check every month. If you need payment collection built in or a mobile app, Invoice Ninja is currently the better bet. If you need a full ERP, look at ERPNext or Dolibarr. But for the straightforward “send invoice, get paid, track expenses” workflow, InvoiceShelf delivers it for the price of a VPS and an afternoon of setup.
If the setup is the blocker, that’s exactly what upready.dev deploys for clients. One-time fee, done, you own the infrastructure.
Sources
- Roman Zipp — “Why Self-host?” (Oct 9, 2025). https://romanzipp.com/blog/why-a-homelab-why-self-host
- AlternativeTo — “Apps tagged with ‘Invoicing’”. https://alternativeto.net/category/business-and-commerce/invoice-software/
- AlternativeTo — “Apps with ‘finance-management’ feature”. https://alternativeto.net/feature/finance-management/
Primary sources:
- GitHub repository and README: https://github.com/invoiceshelf/invoiceshelf (1,621 stars, AGPL-3.0)
- Official website: https://invoiceshelf.com
- Documentation: https://docs.invoiceshelf.com
- API documentation: https://api-docs.invoiceshelf.com
Features
Integrations & APIs
- REST API
Mobile & Desktop
- Mobile App
Category
Replaces
Related Finance & Budgeting Tools
View all 97 →OpenBB Terminal
63KOpen-source investment research platform that gives financial analysts and portfolio managers AI-powered analytics without locking data into Bloomberg or Refinitiv.
Maybe
54KOpen-source personal finance and wealth management app. Track net worth, investments, spending, and debt in one self-hosted dashboard.
HyperSwitch
42KHyperSwitch is an open-source payments orchestration platform that connects multiple payment processors through a single API, with intelligent routing, retry logic, and cost optimization.
ERPNext
32KThe world's best 100% open source ERP software. Supports manufacturing, distribution, retail, trading, services, education, and more.
Actual
26KLocal-first personal finance app with envelope budgeting, bank sync, and cross-device synchronization.
Firefly III
23KFirefly III lets you run modern financial manager. It helps you to keep track of your money and make budget forecasts. It entirely on your own server.