dolibarr
Dolibarr ERP CRM is a modern software package to manage your company or foundation's activity (contacts, suppliers, invoices, orders, stocks, agenda, accounting, ...). it's an open source Web application (written in PHP) designed for businesses of any sizes, foundations and freelancers.
Top Related Projects
Free and Open Source Enterprise Resource Planning (ERP)
Odoo. Open Source Apps To Grow Your Business.
We do Open Source ERP - Fast, Flexible & Free Software to scale your Business.
Quick Overview
Dolibarr is an open-source, modular ERP and CRM software designed for small and medium businesses. It offers a wide range of features including project management, invoicing, inventory tracking, and human resources management, all within a user-friendly web-based interface.
Pros
- Highly customizable and modular architecture
- Comprehensive set of features for business management
- Active community and regular updates
- Free and open-source
Cons
- Learning curve can be steep for new users
- Some modules may require additional configuration
- Documentation can be inconsistent or outdated in some areas
- Limited built-in integrations compared to some commercial alternatives
Getting Started
To get started with Dolibarr:
- Download the latest stable version from the official website or GitHub repository.
- Extract the files to your web server directory.
- Create a MySQL database for Dolibarr.
- Access the installation wizard through your web browser and follow the setup instructions.
- Once installed, log in to the admin panel and start configuring modules according to your business needs.
Example Apache configuration for Dolibarr:
<VirtualHost *:80>
ServerName dolibarr.yourdomain.com
DocumentRoot /var/www/dolibarr
<Directory /var/www/dolibarr>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
After installation, you can start using Dolibarr by accessing various modules through the web interface. For example, to create a new customer:
- Navigate to "Customers/Prospects" in the main menu.
- Click on "New Customer/Prospect".
- Fill in the required information and save.
To generate an invoice:
- Go to "Commercial" > "Customer Invoices & Credit Notes".
- Click on "New Invoice".
- Select the customer, add products/services, and validate the invoice.
Remember to regularly update Dolibarr to ensure you have the latest features and security patches.
Competitor Comparisons
Free and Open Source Enterprise Resource Planning (ERP)
Pros of ERPNext
- More comprehensive and feature-rich ERP system
- Better suited for larger organizations with complex needs
- Modern, responsive UI with a cleaner design
Cons of ERPNext
- Steeper learning curve due to its complexity
- Potentially slower performance for smaller organizations
- May require more server resources to run efficiently
Code Comparison
ERPNext (Python):
@frappe.whitelist()
def get_item_details(item_code, warehouse=None, doc=None):
item = frappe.get_doc("Item", item_code)
return {
"item_name": item.item_name,
"description": item.description,
"stock_uom": item.stock_uom
}
Dolibarr (PHP):
public function fetch($id, $ref = '', $loadparentdata = 0)
{
$sql = "SELECT p.rowid, p.ref, p.label, p.description";
$sql .= " FROM " . MAIN_DB_PREFIX . "product as p";
$sql .= " WHERE p.entity IN (" . getEntity('product') . ")";
$sql .= " AND (p.rowid = " . ((int) $id) . " OR p.ref = '" . $this->db->escape($ref) . "')";
$resql = $this->db->query($sql);
// ... (additional code)
}
Odoo. Open Source Apps To Grow Your Business.
Pros of Odoo
- More comprehensive feature set, including advanced CRM, e-commerce, and manufacturing modules
- Larger community and ecosystem, with numerous third-party apps and integrations
- More polished and modern user interface
Cons of Odoo
- Steeper learning curve due to its complexity and extensive features
- Higher resource requirements, potentially leading to slower performance on less powerful hardware
- More expensive for enterprise-level features and support
Code Comparison
Odoo (Python):
class SaleOrder(models.Model):
_name = 'sale.order'
_description = 'Sales Order'
name = fields.Char(string='Order Reference', required=True, copy=False, readonly=True, index=True, default=lambda self: _('New'))
partner_id = fields.Many2one('res.partner', string='Customer', readonly=True, states={'draft': [('readonly', False)], 'sent': [('readonly', False)]}, required=True, change_default=True, index=True, tracking=1)
Dolibarr (PHP):
class Commande extends CommonObject
{
public $element = 'commande';
public $table_element = 'commande';
public $table_element_line = 'commandedet';
public $class_element_line = 'OrderLine';
public $picto = 'order';
Both repositories use object-oriented programming, but Odoo's Python code tends to be more concise and readable compared to Dolibarr's PHP code. Odoo also makes extensive use of decorators and ORM features, while Dolibarr relies more on traditional class definitions and database interactions.
We do Open Source ERP - Fast, Flexible & Free Software to scale your Business.
Pros of metasfresh
- More modern technology stack, utilizing Java and Spring Boot
- Better suited for larger enterprises with complex business processes
- Offers a more extensive API for integrations and customizations
Cons of metasfresh
- Steeper learning curve due to its complexity
- Smaller community and less documentation compared to Dolibarr
- Requires more resources to run and maintain
Code Comparison
metasfresh (Java):
@RestController
@RequestMapping("/api/product")
public class ProductController {
@Autowired
private ProductService productService;
@GetMapping("/{id}")
public ResponseEntity<Product> getProduct(@PathVariable Long id) {
return ResponseEntity.ok(productService.getProduct(id));
}
}
Dolibarr (PHP):
class ProductApi extends DolibarrApi
{
public function __construct()
{
global $db;
$this->db = $db;
}
public function index($sortfield = "t.ref", $sortorder = 'ASC', $limit = 100, $page = 0)
{
$list = $this->_list($sortfield, $sortorder, $limit, $page);
return $this->_cleanObjectDatas($list);
}
}
Both repositories offer ERP solutions, but metasfresh is more suitable for larger enterprises with complex needs, while Dolibarr is more accessible for small to medium-sized businesses. The code comparison shows the difference in technology stacks, with metasfresh using Java and Spring Boot, and Dolibarr using PHP.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
DOLIBARR ERP & CRM
Dolibarr ERP & CRM is a modern software package that helps manage your organization's activities (contacts, quotes, invoices, orders, stocks, agenda, human resources, ecm, manufacturingâ¦).
It's an Open-Source Software suite (written in PHP with JavaScript enhancements) designed for small, medium or large companies, foundations and freelancers.
You can freely use, study, modify or distribute it according to its license.
You can use it as a standalone application or as a web application to access it from the Internet or from a LAN.
Dolibarr has a large community ready to help you, free forums and preferred partners ready to offer commercial support should you need it
LICENSE
Dolibarr is released under the terms of the GNU General Public License as published by the Free Software Foundation; either Version 3 of the License, or (at your option) any later version (GPL-3+).
See the COPYING file for a full copy of the license.
Other licenses apply for some included dependencies. See COPYRIGHT for a full list.
INSTALLING
There is a lot of different solutions to install Dolibarr.
Using packages
If you have low technical skills and you're looking to install Dolibarr ERP/CRM with just few clicks, you can use one of the packaged versions (see next chapter if you have IT knowledge) :
- DoliWamp for Windows
- DoliDeb for Debian, Ubuntu
- DoliRpm for Red Hat, Fedora, OpenSuse, Mandriva or Mageia
- The Docker image (see chapter "Using Docker")
Releases can be downloaded from official website.
Using the generic step by step setup (recommended for IT users)
You can use any web server supporting PHP (Apache, Nginx, ...) and a supported database (MariaDB, MySQL or PostgreSQL) to install the standard version:
-
Verify that your installed PHP version is supported see PHP support.
-
Uncompress the downloaded .zip archive to copy the
dolibarr/htdocs
directory and all its files inside your web server root or get the files directly from GitHub (recommended if you know git as it makes it easier if you want to upgrade later):git clone https://github.com/dolibarr/dolibarr -b x.y
(where x.y is the main version like 9.0, 19.0, ...) -
Set up your web server to use
dolibarr/htdocs
as root if your web server does not already define a directory to point to. -
Create an empty
htdocs/conf/conf.php
file and set write permissions for your web server user (write permission will be removed once install is finished) -
From your browser, go to the dolibarr "install/" page
The URL will depend on how your web configuration directs to your dolibarr installation. It may look like:
http://localhost/dolibarr/htdocs/install/
or
http://localhost/dolibarr/install/
or
http://yourdolibarrvirtualhost/install/
-
Follow the installer instructions
Using Docker images
Dolibarr is also available as a Docker image. Installation instructions are available here.
Using ready to use SaaS/Cloud offers
If you lack the time to install it yourself, consider exploring commercial 'ready-to-use' Cloud offerings (refer to https://saas.dolibarr.org). Keep in mind that this third option comes with associated costs.
UPGRADING
Dolibarr supports upgrading, usually without the need for any (commercial) support (depending on if you use any commercial extensions). It supports upgrading all the way from any version after 2.8 without breakage. This is unique in the ERP ecosystem and a benefit our users highly appreciate!
Follow these step-by-step instructions to seamlessly upgrade Dolibarr to the latest version:
- At first make a backup of your Dolibarr files & then see
- Verify that your installed PHP version is supported by the new version see PHP support.
- Overwrite all old files from the 'dolibarr' directory with files provided in the new version's package.
- At your next access, Dolibarr will redirect you to the "install/" page to follow the upgrade process.
 If an
install.lock
file exists to lock any other upgrade process, the application will ask you to remove the file manually (you should find theinstall.lock
file in the directory used to store generated and uploaded documents, in most cases, it is the directory called "documents").
WHAT'S NEW
See the ChangeLog file.
FEATURES
Main application/modules (all optional)
- Third-Parties Management: Customers, Prospects (Leads) and/or Suppliers + Contacts
- Members/Membership/Foundation management
Product Management
- Products and/or Services catalogue
- Stock / Warehouse management + Inventory
- Barcodes
- Batches / Lots / Serials
- Product Variants
- Bill of Materials (BOM)
- Manufacturing Orders (MO)
- Workstations / Workplaces
Customer/Sales Management
- Customers/Prospects + Contacts management
- Opportunities or Leads management
- Commercial proposals management (online signing)
- Customer Orders management
- Contracts/Subscription management
- Interventions management
- Ticket System (+ Knowledge management)
- Partnership management
- Shipping management
- Customer Invoices/Credit notes and payment management
- Point of Sale (POS)
Supplier/Purchase Management
- Suppliers/Vendors + Contacts
- Supplier (pricing) requests
- Purchase Orders management
- Delivery/Reception
- Supplier Invoices/Credit notes and payment management
- INCOTERMS
Finance/Accounting
- Invoices/Payments
- Bank accounts management
- Direct debit and Credit transfer management (European SEPA)
- Accounting management
- Donations management
- Loan management
- Margins
- Reports
Collaboration
- Shared calendar/agenda (with
ical
andvcal
import/export for third-party tools integration) - Projects & Tasks management
- Event organization
- Ticket System
- Surveys
HR - Human Resources Management
- Employee leave management
- Expense reports
- Recruitment management
- Employee/staff management
- Timesheets
Other application/modules
- Electronic Document Management (EDM)
- Bookmarks
- Reporting
- Data export/import
- Barcodes
- LDAP connectivity
- Click-To-Dial integration
- Mass emailing
- RSS integration
- Social platforms linking
- Payment platforms integration (PayPal, Stripe, Paybox...)
- Email-Collector
- AI support via API
(around 100 modules available by default, 1000+ addons at the official marketplace Dolistore.com)
Other general features
- Multi-Language Support (Localization in most major languages)
- Multi-users and groups with finely-grained rights
- Multi-Currency
- Multi-Company (by adding an external module)
- Very user-friendly and easy to use
- Customizable dashboards
- Highly customizable: enable only the modules you need, add user personalized fields, choose your skin, several menu managers (can be used by internal users as a back-office with a particular menu, or by external users as a front-office with another one)
- APIs (REST, SOAP)
- Code that is easy to understand, maintain and develop (PHP with no heavy framework; trigger and hook architecture)
- Support a lot of country-specific features:
- Spanish Tax RE and IRPF
- French NPR VAT rate (VAT called "Non Perçue Récupérable" for DOM-TOM)
- Canadian double taxes (federal/province) and other countries using cumulative VAT
- Tunisian tax stamp
- Argentina invoice numbering using A,B,C...
- Greece fetch customer vat details from AADE, all invoice types, MyData(external free module)
- ZATCA e-invoicing QR-Code
- Compatible with European directives (2006/112/CE ... 2010/45/UE)
- Compatible with data privacy rules (Europe's GDPR, ...)
- ...
- Flexible PDF & ODT generation for invoices, proposals, orders...
- ...
System Environment / Requirements
- PHP
- MariaDB, MySQL or PostgreSQL
- Compatible with all Cloud solutions that match PHP & MySQL or PostgreSQL prerequisites.
See exact requirements on the Wiki
Extending
Dolibarr can be extended with a lot of other external applications or modules from third-party developers available at the DoliStore.
WHAT DOLIBARR CAN'T DO YET
These are features that Dolibarr does not yet fully support:
- Tasks dependencies in projects
- Payroll module
- Native embedded Webmail, but you can send email to contacts in Dolibarr with e.g. offers, invoices, etc.
- Dolibarr can't do coffee (yet)
DOCUMENTATION
Administrator, user, developer and translator's documentation are available along with other community resources in the Wiki.
CONTRIBUTING AND RELEASE PROCESS
This project exists thanks to all the people who contribute. Please read the instructions on how to contribute (report a bug/error, a feature request, send code, ...) [Contributing]
A View on Contributors:
The release process is described into the file dev/build/makepack-howto.md
CREDITS
Dolibarr is the work of many contributors over the years and uses some fine PHP libraries.
See COPYRIGHT file.
NEWS AND SOCIAL NETWORKS
Follow Dolibarr project on:
Sponsors
Support this project by becoming a sponsor. Your logo will show up here. ð [Become a sponsor/backer]
Top Related Projects
Free and Open Source Enterprise Resource Planning (ERP)
Odoo. Open Source Apps To Grow Your Business.
We do Open Source ERP - Fast, Flexible & Free Software to scale your Business.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot