MCPSERV.CLUB
InvoiceShelf

InvoiceShelf

Self-Hosted

Open source invoicing for small businesses

Active(75)
1.4kstars
0views
Updated Sep 19, 2025

Overview

Discover what makes InvoiceShelf powerful

InvoiceShelf is a self‑hosted, open‑source platform for managing invoices, estimates, and budgeting. Built on the Laravel 11 framework, it embraces modern PHP conventions while remaining lightweight enough for quick deployment in Docker or on bare metal. The application exposes a rich REST‑style API, enabling developers to integrate it into existing ERP or accounting ecosystems. From a technical standpoint, InvoiceShelf is engineered around a clean MVC architecture, with Vue 3 on the frontend and Vite for asset bundling. Its core domain logic is encapsulated in service classes that validate amounts, generate PDF receipts, and handle recurring billing schedules.

Backend

Frontend

Database

File Storage

Overview

InvoiceShelf is a self‑hosted, open‑source platform for managing invoices, estimates, and budgeting. Built on the Laravel 11 framework, it embraces modern PHP conventions while remaining lightweight enough for quick deployment in Docker or on bare metal. The application exposes a rich REST‑style API, enabling developers to integrate it into existing ERP or accounting ecosystems. From a technical standpoint, InvoiceShelf is engineered around a clean MVC architecture, with Vue 3 on the frontend and Vite for asset bundling. Its core domain logic is encapsulated in service classes that validate amounts, generate PDF receipts, and handle recurring billing schedules.

Architecture & Tech Stack

  • Backend: Laravel 11 (PHP 8.2+), Eloquent ORM, Laravel Sanctum for API authentication, Queue and Cache drivers (database or Redis).
  • Frontend: Vue 3 with Composition API, Axios for HTTP requests, Vite as the dev/build tool.
  • Database: Default to SQLite for simplicity, but supports MySQL, PostgreSQL, and SQL Server via configuration.
  • File Storage: Laravel Media Library handles uploads (logos, attachments) and can be backed by local storage or cloud services like S3.
  • Mail: Configurable via SMTP (including SES) with support for encryption settings.

The project follows PSR‑4 autoloading, and the namespace was recently moved from InvoiceShelf to App, improving compatibility with other Laravel packages. Unit tests are written with PHPUnit and feature tests use Laravel's built‑in testing helpers.

Core Capabilities & APIs

  • Invoice/Estimate Lifecycle: Create, clone, edit, and delete; supports decimal quantities, large totals (up to 999 999 999 999), and recurring schedules.
  • Customer Management: CRUD operations with searchable dropdowns, including a hotfix that fixes name rendering.
  • PDF Generation: Server‑side PDF creation via a blade template, downloadable or emailable.
  • API Endpoints: /api/invoices, /api/estimates, /api/customers with full CRUD and pagination. All endpoints are token‑protected by Sanctum, allowing secure external integrations.
  • Webhooks: Configurable callbacks for events such as invoice.created or estimate.sent.
  • Internationalization: Fully translatable strings, with Crowdin integration for community translations.

Developers can also extend the system by creating custom middleware, overriding service providers, or adding new API routes. The modular design encourages plugin development; the core exposes hooks where custom logic can be injected without modifying the base code.

Deployment & Infrastructure

InvoiceShelf is optimized for containerization. The official Docker image pulls the latest Laravel release and pre‑installs dependencies, exposing ports 80/443. For scaling, the queue driver can be switched to Redis, and caching can leverage Memcached or Redis. Because SQLite is the default database, developers can spin up a single‑file instance for prototypes or CI pipelines. Production deployments typically use MySQL or PostgreSQL with a separate database server, and the migration files ensure a smooth upgrade path between major versions.

Integration & Extensibility

The REST API is the primary integration point. Developers can consume it from any language that supports HTTP, and the JSON payloads are self‑describing. Webhooks allow asynchronous event handling in external systems (e.g., triggering a Zapier workflow when an invoice is paid). The application also ships with a plugin skeleton: developers can create Composer packages that register routes, views, and database migrations. Because the codebase follows Laravel conventions, adding a new payment gateway or tax calculation module is straightforward.

Developer Experience

  • Documentation: The GitHub repo hosts comprehensive README, changelog, and API reference.
  • Community: Active issue tracker, pull request flow, and a dedicated Discord channel for quick support.
  • Configuration: Environment variables control every aspect—from database driver to mail settings—making it trivial to adapt the app to different hosting environments.
  • Licensing: MIT license encourages commercial use without licensing fees, and the open‑source nature allows full auditability.

Use Cases

  1. Freelance & Small Business: Rapid deployment on a VPS, auto‑generated PDFs, and API access for mobile invoicing apps.
  2. Enterprise Integration: Hook into existing ERP systems via webhooks and custom API clients, while leveraging Laravel’s queue system for background tasks.
  3. SaaS Providers: Use the modular architecture to build multi‑tenant SaaS invoicing services, with tenant isolation handled by separate database connections.
  4. Developer Tooling: Integrate InvoiceShelf into CI/CD pipelines to automatically generate invoices for subscription billing or test environments.

Advantages

  • Performance: Laravel 11 brings improved routing, caching, and Eloquent optimizations.
  • Flexibility: Full control over the stack; swap out database drivers, queue backends, or storage services without code changes.
  • Licensing & Cost: MIT license eliminates subscription fees, and the ability to host on inexpensive cloud instances keeps operational costs low.
  • Community & Support: A vibrant open‑source community means rapid bug fixes, frequent feature updates (e.g., decimal quantities, large totals), and ready‑made extensions.

InvoiceShelf offers a robust, developer‑friendly invoicing platform that balances out‑of‑the‑box functionality with the freedom to customize and extend

Open SourceReady to get started?

Join the community and start self-hosting InvoiceShelf today

Weekly Views

Loading...
Support Us
Most Popular

Infrastructure Supporter

$5/month

Keep our servers running and help us maintain the best directory for developers

Repository Health

Loading health data...

Information

Category
other
License
AGPL-3.0
Stars
1.4k
Technical Specs
Pricing
Open Source
Database
SQLite
Supported OS
Linux
Author
InvoiceShelf
InvoiceShelf
Last Updated
Sep 19, 2025