Free, self-hosted ERP for small businesses
Project description
Celerp
Free business management software for you and your office. Setup in minutes. Easy enough for solo entrepreneurs and powerful enough for large enterprises
Inventory, invoicing, purchasing, consignment, manufacturing, accounting, and CRM - in one app, on your computer. No subscription. No cloud required.
Website: www.celerp.com
Celerp is simple to use, flexible, customizable, and designed to transition your business into the AI age with no technical knowledge needed to setup your whole office. We want to put businesses back in charge of their data.
Screenshots
Real double-entry accounting, multi-location inventory, manufacturing, and a built-in REST API - one self-hosted app.
Trial balance - ties out to zero |
Balance sheet - live from the ledger |
General ledger - full drill-down |
Inventory - multi-location, barcode, valuation |
Production planning - work orders, priorities, due dates |
REST API - integrate anything |
Dashboard - revenue trend, AR aging, inventory mix |
More in the press kit.
Install
| Platform | Link |
|---|---|
| Windows (.exe) | Latest release |
| Linux (.AppImage) | Latest release |
| macOS (.dmg) | Latest release |
Double-click. No account. No credit card. Your computer securely becomes the server for your office
Or install via pip:
pip install celerp
celerp init # sets up the database and launches Celerp
Open http://localhost:8080. Done. Your office can securely access the system at your IP address :8080.
Running headless or under a process manager? Use celerp init --no-start to set up
without launching, then have your service run celerp start — see
Run as a service (systemd).
What's inside
- Track inventory across locations, scan barcodes, print labels
- Send invoices, purchase orders, quotations, credit notes
- Double-entry accounting with chart of accounts, P&L, balance sheet
- Connect Shopify, WooCommerce, QuickBooks, Xero
- Manufacturing - BOMs, production orders, merge/split/transform
- CRM - contacts, pipeline, memos, activity feed
- Recurring subscriptions with automatic invoicing
- CSV import/export everything - idempotent, audited, column-mapped
- Multi-company from one install
- Role-based permissions - five access levels (viewer, operator, manager, admin, owner) for controlled employee access
- Works offline, no internet required
How it works
Celerp runs entirely on your machine. Your data never leaves your computer.
- No setup - the desktop app bundles Postgres, runs migrations on launch, opens in your browser
- No lock-in - your data stays in a standard Postgres database you control
- Teams - run as a local server, teammates connect over the LAN
Modules
Every business domain is a self-contained module. The full set ships with the download:
| Module | What it does |
|---|---|
celerp-inventory |
Items, stock levels, locations, barcode scanning, valuation |
celerp-contacts |
Contacts, addresses, tags, notes, file attachments |
celerp-docs |
Invoices, POs, quotations, credit notes, receipts |
celerp-accounting |
Chart of accounts, journal entries, P&L, balance sheet |
celerp-reports |
AR/AP aging, sales, purchases, inventory valuation |
celerp-subscriptions |
Recurring billing, auto-invoice generation |
celerp-manufacturing |
BOMs, production orders, merge/split/transform |
celerp-labels |
Label printing, barcode generation |
celerp-verticals |
Industry presets - configure for your business type on first run |
The onboarding wizard lets you pick your industry. Modules can be toggled any time at Settings > Modules.
Architecture
- Event-sourced - every change is an immutable ledger entry, projections materialize queryable state
- Modular - each domain is a plugin with its own models, routes, and projections
- Python/FastAPI backend, FastHTML UI, embedded PostgreSQL
- SQLite in-memory for tests - no external dependencies to run the test suite
Development
git clone git@github.com:celerp/celerp.git
cd celerp
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
sudo celerp init # creates DB, runs migrations, starts servers
Open http://localhost:8080. Run tests with pytest tests/.
See CONTRIBUTING.md for environment variables, troubleshooting, and coding guidelines.
Contributing
Issues and PRs welcome. The module system makes it straightforward to add new business domains without touching the kernel.
License
Free to download. Free to self-host. Free to build on.
Celerp is open-core:
- Source-available core engine under the Business Source License 1.1 - self-hosting permitted, contributions welcome.
- An MIT-licensed module ecosystem - the default business modules are MIT, so you can fork them, build your own modules, and ship them however you like. See LICENSING.md.
- A proprietary application + cloud layer (official UI, document/PDF output, and the cloud/AI services) that powers the hosted experience.
See LICENSING.md for the full map and TRADEMARK.md for use of the Celerp name. One restriction: don't resell Celerp itself as a competing product.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file celerp-1.2.6.tar.gz.
File metadata
- Download URL: celerp-1.2.6.tar.gz
- Upload date:
- Size: 1.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9883164d36f3a0b6c45e28a9cdd770736b1e040e17dcd72fd32dadf7ed537439
|
|
| MD5 |
6a6fcda4ce99936d4ffc0df30c720b06
|
|
| BLAKE2b-256 |
9227abc0a1d319909e92833e96d62a164dbbb56f31c23afeda882ee1856e6bea
|
Provenance
The following attestation bundles were made for celerp-1.2.6.tar.gz:
Publisher:
publish.yml on celerp/celerp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
celerp-1.2.6.tar.gz -
Subject digest:
9883164d36f3a0b6c45e28a9cdd770736b1e040e17dcd72fd32dadf7ed537439 - Sigstore transparency entry: 1971225511
- Sigstore integration time:
-
Permalink:
celerp/celerp@e75c48e323d2dafd82a9e38f4ae1de2e5c729c2d -
Branch / Tag:
refs/tags/v1.2.6 - Owner: https://github.com/celerp
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@e75c48e323d2dafd82a9e38f4ae1de2e5c729c2d -
Trigger Event:
push
-
Statement type:
File details
Details for the file celerp-1.2.6-py3-none-any.whl.
File metadata
- Download URL: celerp-1.2.6-py3-none-any.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6f7063ad4d61beb24e7d845b987e790f29a58bb6932e68bef6229602a08cde06
|
|
| MD5 |
865c4daa90ef6dde1c1506aa89d246f5
|
|
| BLAKE2b-256 |
310104b13584dbf3c7562d5253a375fe7ab575bdf772ff91f31fd28c2171f31f
|
Provenance
The following attestation bundles were made for celerp-1.2.6-py3-none-any.whl:
Publisher:
publish.yml on celerp/celerp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
celerp-1.2.6-py3-none-any.whl -
Subject digest:
6f7063ad4d61beb24e7d845b987e790f29a58bb6932e68bef6229602a08cde06 - Sigstore transparency entry: 1971225600
- Sigstore integration time:
-
Permalink:
celerp/celerp@e75c48e323d2dafd82a9e38f4ae1de2e5c729c2d -
Branch / Tag:
refs/tags/v1.2.6 - Owner: https://github.com/celerp
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@e75c48e323d2dafd82a9e38f4ae1de2e5c729c2d -
Trigger Event:
push
-
Statement type: