Table of Contents
-
Introduction
-
Why Customize Dolibarr?
-
Assessing Your Business Requirements
-
Core Modules and Functional Scope
-
Enabling and Disabling Modules
-
Using Configuration Constants to Customize Behavior
-
Customizing Fields with Extra Fields
-
Creating Custom Menus and Navigation
-
Customizing User Interfaces for Specific Roles
-
Tailoring Permissions and Access Rights
-
Automating Tasks with Triggers and Hooks
-
Building Workflows with Scheduled Actions
-
Custom Modules: When and Why to Build Your Own
-
API Integration with Third-Party Tools
-
Adapting PDF Documents to Business Requirements
-
Localization: Adapting Language and Terminology
-
Data Imports and Migrations from Legacy Systems
-
Upgrading Without Losing Customizations
-
Documenting and Managing Customizations
-
Conclusion
1. Introduction
Dolibarr is a powerful ERP/CRM system that can fit a wide range of business contexts out of the box. However, to maximize its potential, many organizations need to adapt it to their specific processes, structures, and terminology. This guide explains how to effectively tailor Dolibarr without compromising upgrade paths or core stability.
2. Why Customize Dolibarr?
Every business is different. Customizing Dolibarr allows you to:
-
Align software with operational workflows
-
Enhance efficiency through automation
-
Improve user adoption with intuitive interfaces
-
Comply with industry-specific regulations
-
Integrate seamlessly with existing systems
Without customization, users may feel restricted or rely on inefficient workarounds.
3. Assessing Your Business Requirements
Before you customize anything, understand:
-
Your business processes (sales, purchasing, manufacturing, HR)
-
Roles and responsibilities within teams
-
What data is critical to track
-
Reports and outputs you require
-
Which systems Dolibarr must integrate with
Create a map of your needs vs. Dolibarr’s native capabilities to identify gaps.
4. Core Modules and Functional Scope
Dolibarr includes modules for:
-
CRM
-
Invoicing and Accounting
-
Inventory Management
-
Human Resources
-
Projects and Tasks
-
Time Tracking
Start by enabling only what you need. Avoid module overload.
5. Enabling and Disabling Modules
Go to Home > Setup > Modules/Applications:
-
Activate core modules based on needs
-
Deactivate unused modules to simplify UI
Modules can often be configured with their own sub-settings.
6. Using Configuration Constants to Customize Behavior
Dolibarr allows custom constants to:
-
Enable or disable features
-
Set numeric or text parameters
Go to Home > Setup > Other Setup to add entries like:
-
MAIN_DISABLE_JAVASCRIPT
-
MAIN_SHOW_PRODUCT_REF_IN_LIST
This is a non-invasive way to adapt behavior.
7. Customizing Fields with Extra Fields
Almost every object in Dolibarr supports extra fields:
-
Go to Setup > Dictionaries > Extra Fields
-
Select the target module (e.g., Product, Order)
-
Add fields with types: text, date, dropdown, etc.
Use these for custom attributes that don’t exist by default.
8. Creating Custom Menus and Navigation
To adapt the interface:
-
Use Home > Setup > Menus to create shortcuts
-
Group commonly used pages
-
Rename labels for better clarity
This is helpful for role-specific dashboards.
9. Customizing User Interfaces for Specific Roles
Under Users & Groups:
-
Assign roles and restrict module access
-
Use themes (like Oblyon) to visually separate roles
-
Customize visible fields using permissions
Front-line staff should see only what’s relevant.
10. Tailoring Permissions and Access Rights
Granular permissions are key:
-
Use Groups > Permissions to control module actions
-
Define read/write/create/delete per module
-
Use groups to standardize access per department
Avoid giving admin rights to regular users.
11. Automating Tasks with Triggers and Hooks
Use triggers to automate:
-
Email notifications
-
Invoice generation
-
Stock movements
Hooks can modify core behaviors without editing core files. Register your custom classes under /core/triggers/
.
12. Building Workflows with Scheduled Actions
Dolibarr supports:
-
Scheduled tasks via CRON (invoice reminders, stock sync)
-
Automation modules from Dolistore (workflow engine, triggers)
These help reduce manual admin tasks and human error.
13. Custom Modules: When and Why to Build Your Own
If Dolibarr lacks a specific feature:
-
Create a module under
/custom/
-
Use the module builder from Developer Tools
-
Follow Dolibarr’s coding conventions
Custom modules avoid conflicts with updates to the core.
14. API Integration with Third-Party Tools
Use REST API to:
-
Send data to external CRMs or apps
-
Sync products with e-commerce
-
Push documents to accounting platforms
Authenticate with DOLAPIKEY and use JSON payloads.
15. Adapting PDF Documents to Business Requirements
Customize invoice, proposal, or order templates:
-
Locate PDF models under
/core/modules/[module]/doc/
-
Duplicate and rename to create custom templates
-
Modify layout, logos, fonts, and fields
This ensures all customer-facing documents match your brand.
16. Localization: Adapting Language and Terminology
To change terms:
-
Use translation files in
/langs/
-
Add new translations via language editor
-
Set user language preferences
This helps reflect internal terminology or regional spelling.
17. Data Imports and Migrations from Legacy Systems
Use Dolibarr’s import tools:
-
Go to Tools > Import
-
Use CSV files mapped to Dolibarr fields
For complex cases, use scripts or third-party connectors.
18. Upgrading Without Losing Customizations
To preserve changes:
-
Avoid editing core files
-
Keep custom modules and templates in
/custom/
-
Document all modifications
-
Use a staging server for upgrade testing
Backup before every major version change.
19. Documenting and Managing Customizations
Maintain a log of:
-
What was changed
-
Why it was changed
-
Who approved or implemented it
Use Git to track file-level changes and rollback as needed.
20. Conclusion
Dolibarr offers a flexible framework that can be tailored to virtually any business model. By understanding the tools available—extra fields, custom modules, API, workflows—you can shape Dolibarr into a precise fit for your operations. Careful planning, good documentation, and best practices ensure your customizations stay maintainable and upgrade-safe.