RIVER ERP is the all-in-one, self-hosted business OS — sales, inventory, point of sale, finance, payroll and more, in one system.
river-desktop is its native app: install it, point it at your RIVER, and your whole business opens in a focused desktop window.
⬇ Download · Install · How it works
Every growing company runs on a pile of tools that don't talk to each other — a CRM here, a billing app there, a point of sale, a payroll service, and a graveyard of spreadsheets trying to hold it together. Each one is another login, another subscription, another place your numbers quietly disagree.
RIVER ERP is the one system underneath all of it. A sale becomes an invoice, the invoice updates your treasury, the treasury feeds your reports — no exports, no re-keying, no brittle integrations bolted on after the fact. Sales, purchasing, inventory, production, point of sale, payroll, subscriptions, finance, reporting: one platform, one source of truth, one window.
And it's yours. RIVER is self-hosted — your data lives on your server, not behind a per-seat meter someone else controls. It's private by design: it never leaks your customers' or suppliers' data to third-party services. It's multi-currency and multi-language (English, French, and Arabic with full right-to-left), so it fits a team in any market. And if you do business in Morocco, it's the only ERP with built-in DGI e-invoicing — submission to the tax authority, out of the box.
One platform instead of QuickBooks + a POS + a CRM + a payroll tool + five spreadsheets.
Self-hosted instead of rented. Private by design instead of by promise.
This isn't a roadmap. Every module below is shipping today.
- CRM — clients and prospects in one ledger, from first lead to repeat customer
- Sales documents — proposals, quotes, and invoices, with custom templates and fields
- Point of Sale — full retail and restaurant: floor plan, reservations, online ordering, loyalty, gift cards, tips, and price rules
- Subscriptions — recurring billing for your own customers
- Payments — an online pay page with Stripe, PayPal, CMI, and manual methods
- Finance & treasury — cash-flow forecasting, dunning & reminders, banks, credits & debts, cheques, and due dates
- Multi-currency — every amount converts to a base currency, so mixed-currency totals are always honest
- E-invoicing — structured electronic invoices, including built-in Morocco DGI submission to the tax authority
- Purchasing & suppliers, inventory & catalogue, production (BOM), and logistics & shipping
- Expenses — recurring rules, budgets, categories, and price history
- Reports & accounting, plus payroll & HR with contracts
- Tasks & planning with a personal "My day" workspace
- AI workspace for drafting, summarizing, and assisting across the system
- Cap table & investor portal — with its own dedicated investor login
- Integrations & developer platform — 25 services wired, plus APIs & webhooks
- Multi-company, document templates, custom fields, and an arrangeable dashboard
Instead of assembling a CRM + a POS + a payroll tool + an accounting suite and praying they reconcile, you run one platform — that you own.
RIVER runs on the web, installs as a PWA on phones, and now ships as a true native desktop app for macOS, Windows, and Linux.
river-desktop is built with Tauri v2 — Rust plus your operating system's own webview. That means a download around ~5 MB, not the hundreds of megabytes of a bundled Electron browser. No Chromium shipped in the box, no second browser engine draining your battery. Just your ERP, in a clean window, where it belongs.
And every build is native to its CPU — Apple Silicon, Windows on ARM, and ARM Linux are compiled on real ARM64 machines, not x64 under translation — so they're light, cool, and instant from the first launch.
river-desktop |
A browser tab | A bundled-browser app | |
|---|---|---|---|
| Runtime | Your OS's own webview | Your whole browser | A second browser engine in the box |
| Footprint | A fraction of the size (~5 MB) | — | Heavyweight |
| Talks to | Only your instance | Anything you navigate to | Whatever it ships with |
| Window | A dedicated, distraction-free app | One tab among many | A wrapped web page |
- Enter your address. On first launch you tell the app where your RIVER lives — e.g.
https://erp.yourcompany.com. It remembers it (and shows your own brand logo as you type). - Sign in securely. RIVER loads in the native window and you sign in with email + password + 2FA, exactly as you would in a browser.
- Work natively. A focused desktop window — no tabs, no address bar, no clutter. Just RIVER.
🔒 Your 2FA code is never stored or auto-filled. The app is a window onto your server: it only ever contacts your instance, keeps no copy of your business data, and the second factor is always entered by you.
Grab the build that matches your machine — the file name tells you exactly which one.
| Your machine | File |
|---|---|
| Mac · Apple Silicon (M1–M4) | RIVER-ERP_0.1.0_macOS-Apple-Silicon-arm64.dmg |
| Mac · Intel | RIVER-ERP_0.1.0_macOS-Intel-x64.dmg |
| Windows · ARM (Surface Pro X, Snapdragon) | RIVER-ERP_0.1.0_Windows-ARM64.msi (or …-setup.exe) |
| Windows · x64 (most PCs) | RIVER-ERP_0.1.0_Windows-x64.msi (or …-setup.exe) |
| Linux · ARM64 | RIVER-ERP_0.1.0_Linux-ARM64.deb (or .AppImage / .rpm) |
| Linux · x64 | RIVER-ERP_0.1.0_Linux-x64.deb (or .AppImage / .rpm) |
macOS — open the .dmg and drag RIVER ERP into Applications.
The first time you open it, macOS may say the app "is damaged and can't be opened" or "can't be verified." That warning appears for any app Apple hasn't notarized yet — it's Gatekeeper, not a problem with RIVER. Clear it once with:
xattr -cr "/Applications/RIVER ERP.app"Then open it normally. Prefer zero warnings, with no Terminal step? A notarized build opens silently for everyone — the CI is already wired for it; an Apple Developer ID is all it needs. See DEVELOPERS.md → Open without warnings.
Windows — run the .msi (or …-setup.exe). SmartScreen may show "Windows protected your PC" → More info → Run anyway. That's the standard unsigned-app prompt; a code-signing certificate removes it (see DEVELOPERS.md).
Linux — install the .deb (sudo dpkg -i RIVER-ERP_*.deb) or the .rpm, or just chmod +x the .AppImage and run it.
One platform. Your data. Every department.
Stop renting a dozen tools — run your whole company from one native window.
⬇ Download RIVER for desktop →
The desktop app is deliberately minimal — the less it can do, the less there is to trust.
- It only ever talks to your instance. Even the brand logo in the launcher header is fetched from your server — never a third-party logo aggregator, mirroring the RIVER web app's privacy stance.
- The loaded ERP has no native access. Tauri commands are scoped to the local launcher window only; the window that loads RIVER can't reach the host.
- Addresses are validated. Only
http/httpsURLs are ever opened. - Credentials are local-only and opt-in. Anything remembered stays on your machine, only if you tick Remember, and is sent nowhere but your own instance.
- 2FA is never stored or auto-filled.
Building, white-labeling, signing, or self-hosting river-desktop? See DEVELOPERS.md. · MIT licensed.