Table of Contents
-
Introduction
-
Why Provide Clients with Secure Access to Dolibarr?
-
Core Features Available for Clients in Dolibarr
-
Security Considerations Before Granting External Access
-
Prerequisites: What You Need Before Starting
-
Step 1: Activate and Configure the Third Party and Contact Modules
-
Step 2: Create a Client Contact User with Limited Rights
-
Step 3: Assign User Permissions Carefully
-
Step 4: Configure Dolibarr to Show Only Client-Specific Data
-
Step 5: Test the Client Login and Visibility Restrictions
-
Optional: Customize the Client Dashboard with Menus
-
Creating and Assigning Public Notes for Client View
-
Sending Client Login Credentials Securely
-
Enabling Two-Factor Authentication for Clients (Free Option)
-
Restricting IP Access or Country-Based Access
-
Using Apache/Nginx Rules for Additional Hardening
-
Limiting File Downloads and Invoice Access Per User
-
Implementing Time-Restricted or Expiring Access
-
Monitoring Client Activity in Logs
-
Conclusion and Maintenance Tips for Long-Term Security
1. Introduction
Dolibarr ERP/CRM offers native capabilities to create secure client access without the need for paid extensions. Whether you want to allow clients to download their invoices, track their quotes, or view support tickets, this guide shows how to enable a clean and secure client portal inside Dolibarr using only core functionality.
2. Why Provide Clients with Secure Access to Dolibarr?
Allowing clients to access their documents and updates via Dolibarr reduces admin time, enhances client satisfaction, and brings transparency to your business processes.
3. Core Features Available for Clients in Dolibarr
With the right configuration, clients can:
-
View their own proposals, orders, and invoices
-
Download documents (PDFs)
-
Send messages or update their contact details
-
Check support tickets (if enabled)
4. Security Considerations Before Granting External Access
-
Ensure your Dolibarr instance uses HTTPS
-
Enable strong passwords and optionally 2FA
-
Regularly audit user permissions
-
Isolate clients from internal company views
5. Prerequisites: What You Need Before Starting
-
Dolibarr version 12 or higher
-
Admin-level access
-
A client already created as a third party
-
Email server configured to send login details
6. Step 1: Activate and Configure the Third Party and Contact Modules
Go to:
-
Setup > Modules > Third Parties
-
Enable Contacts/Addresses module
-
Check settings to allow creation of external users linked to a third party
7. Step 2: Create a Client Contact User with Limited Rights
-
Navigate to the client record
-
Add a new contact (name, email, etc.)
-
Under Actions, click "Create user from contact"
This generates a new user linked to the third party.
8. Step 3: Assign User Permissions Carefully
Go to:
-
Home > Users & Groups > Select User > Permissions
-
Grant access to:
-
Read third-party data
-
Read own invoices, orders, proposals
-
Avoid granting rights to:
-
Modify system settings
-
Access to all third parties
-
Internal CRM modules
9. Step 4: Configure Dolibarr to Show Only Client-Specific Data
-
Activate multicompany protection if needed (for SaaS setups)
-
Use Dolibarr’s default filters that restrict user to their linked third party
10. Step 5: Test the Client Login and Visibility Restrictions
-
Log in with the client’s credentials
-
Attempt to view another third party’s data (should be blocked)
-
Try downloading documents and verify access
11. Optional: Customize the Client Dashboard with Menus
-
Setup > Menus
-
Create a simplified top or left menu profile for client users
Display only:
-
Home
-
Invoices
-
Orders
-
Contact info
12. Creating and Assigning Public Notes for Client View
Use public notes on:
-
Invoices
-
Orders
-
Projects
Clients will see only these comments on their interface.
13. Sending Client Login Credentials Securely
-
Send credentials via email or password reset URL
-
Encourage users to change password at first login
14. Enabling Two-Factor Authentication for Clients (Free Option)
Dolibarr includes basic TOTP 2FA:
-
User profile > Enable two-factor authentication
-
Scan QR code with Authy or Google Authenticator
15. Restricting IP Access or Country-Based Access
-
Use Apache’s
.htaccess
or Nginx rules to restrict by IP -
Use tools like Cloudflare to implement geofencing
16. Using Apache/Nginx Rules for Additional Hardening
Examples:
<Directory "/var/www/html/dolibarr/htdocs">
Require ip 203.0.113.5
</Directory>
Use SSL-only rules, rate limiting, and fail2ban for brute-force protection.
17. Limiting File Downloads and Invoice Access Per User
Ensure that permissions do not include:
-
Access to the entire
/documents/
folder -
Download links outside of user’s third party scope
18. Implementing Time-Restricted or Expiring Access
-
Deactivate the user manually after contract end
-
Use database triggers (advanced) to disable after date
-
Use scheduled tasks to audit active external users
19. Monitoring Client Activity in Logs
-
Enable logging in
conf.php
-
View user log activity in Admin > Tools > Audit
-
Filter logs by user type or IP address
20. Conclusion and Maintenance Tips for Long-Term Security
Providing secure client access in Dolibarr doesn’t require a premium plugin or third-party tool. With built-in modules and careful permission management, you can create a reliable client portal experience. Make it a habit to:
-
Audit external users quarterly
-
Update Dolibarr regularly
-
Restrict access intelligently with firewall or web server rules
Done properly, this setup improves client satisfaction while keeping your Dolibarr environment secure and scalable.