InvenTree: Free Open Source Alternative to Fishbowl & Sortly
Inventory management software is expensive. Fishbowl starts around $329/month. Sortly's business plan runs $149/month. Most of these tools lock your data in their cloud, charge per user, and drip features behind paywalls you didn't ask for.
InvenTree is different. It's a self-hosted, open source platform that covers parts, stock, purchasing, sales, and manufacturing — no subscription, no seat fees, your data on your server.
The UI is functional rather than beautiful. But if you run a workshop, a hardware startup, or an electronics operation, it handles most of what you actually need day-to-day.
Watch our platform overview
Settings & Customization
Before you add a single part, it's worth spending time in the admin settings. You can configure company details, default currency, barcode support, and login options including SSO via OAuth. There's a plugin system too — label printing, barcode scanning, third-party integrations — with a growing ecosystem around it.
Permissions are role-based and granular. A warehouse worker can have access to stock movements without touching purchase orders. That kind of separation matters once more than one person is in the system.
One thing to plan upfront: InvenTree uses Part Categories and Stock Locations as foundational structures. Getting those right before you start entering data saves a messy reorganization later. It's not complicated, but it's worth 20 minutes of thought before you dive in.
Parts
A part in InvenTree can be anything — a resistor, a bolt, a sub-assembly, a finished product. Each has a name, description, category, and optional fields for internal part numbers, revision tracking, units, and notes. You can attach datasheets and images, set minimum stock thresholds, and flag whether the part is purchasable, sellable, or manufacturable.
The Bill of Materials feature is where InvenTree earns its place for manufacturing operations. You define what a part is made of, specify quantities and substitutes, and when stock gets allocated to a build, InvenTree checks the BOM and tells you exactly what you have and what you're short.
There's also a parametric search system — add custom parameters to part categories (voltage, tolerance, resistance), then filter by those values. If you're managing electronics inventory, this alone is worth a lot.
Suppliers
Supplier management in InvenTree is a first-class feature, not something bolted on.
You create supplier records with contact info, website, and currency. Then you link them to parts via Supplier Parts — each with its own SKU, packaging, and price breaks. One InvenTree part can have multiple supplier parts from different vendors, which makes sourcing comparisons easy. Manufacturers are tracked separately from suppliers, so you can record the manufacturer part number independently of where you actually buy the component.
When you create a purchase order, InvenTree pulls in the supplier parts you've already set up. You're not re-entering the same info every time.
Stock
Each stock item in InvenTree lives at a location in a tree you define — warehouse, shelf, bin, whatever fits your operation. It tracks quantity, batch number, serial numbers for serialized parts, and expiry dates.
Every movement is logged. Stock received, moved, adjusted, consumed — InvenTree creates a history entry for all of it. That audit trail is more useful than it sounds when you're trying to trace where a batch of components ended up three months ago.
You can split and merge stock items too, which comes up more than you'd expect. Receive a reel of 1000 resistors, pull 200 for a project, keep the rest — InvenTree handles it cleanly.
The stocktake feature lets you run a manual count and reconcile against system numbers. Not exciting, but essential.
Purchasing & Sales
Purchase orders work the way you'd expect. Pick a supplier, add line items from your supplier parts, set quantities, issue the order. When goods arrive, you receive them against the PO and stock updates automatically. There's an optional approval workflow if you need POs reviewed before they go out.
Sales orders work the same way in reverse — create an order, allocate stock to line items, ship. InvenTree doesn't do invoicing or payment processing; it's an inventory tool, not an ERP. But it tracks what was ordered, what was allocated, and what went out the door.
For manufacturing workflows, Build Orders connect the dots. Create a build from a sales order, check BOM availability, allocate stock, and track completion. It's not complex, but it covers the core loop.
Dashboard & Widgets
The InvenTree dashboard is configurable — add and rearrange widgets for low stock alerts, recent movements, open purchase orders, outstanding builds. It's not a data visualization platform, and you won't mistake it for one. But for a daily operational view of what's low, what's on order, and what's being built, it does the job without requiring you to click around five different screens.
The notifications system handles alerts when stock drops below minimums or orders change status. Small feature, but it means you're not manually checking in on things that should tell you when they need attention.
Conclusion
InvenTree doesn't do accounting, invoicing, or CRM. If you need those, it's the wrong tool.
But for parts tracking, supplier management, stock control, and basic purchasing and manufacturing workflows — it covers the essentials, runs on your infrastructure, and costs nothing beyond the server.
If you're paying $150+ a month for Sortly or Fishbowl and using maybe half of what they offer, InvenTree is worth a serious look.