Easy to use & customize for your business
A self-hosted Customer Relationship Management software built for companies and freelancers, combining powerful project management, customer portals, and financial tracking.
Manage customers and contacts with separate client portal access. Present all financial data, invoices, and documents in clear view.
Keep track of invoices, multi-currency pricing, item-based taxes, and fully automated recurring invoices across days, weeks, months, or years.
Manage projects, track time per staff member, organize milestones with drag-and-drop tasks, and utilize professional Gantt charts.
Track leads in drag-and-drop stages. Auto-import from emails and web landing page forms, with full CSV import capabilities.
Robust support ticketing with auto-responses, IMAP integration, department routing, private staff notes, and predefined replies.
Record company expenses, bill clients directly, convert estimates to invoices instantly, and accept global online payments.
Record incoming payments via bank, cash, or card. Issue credit notes for refunds or adjustments, with automatic invoice balance updates.
Break projects into manageable tasks with priority levels, recurring schedules, and team assignments. Track who is doing what.
Maintain a reusable product/service library with rates, taxes, and categories. Pick from the catalog when creating invoices and estimates.
Generate dynamic reports for invoices, payments, estimates, proposals, and new customers. Filter by date range and export results instantly.
Configure currencies, tax rates, document numbering sequences, email templates, and global preferences — all from one central admin panel.
Bridges conversational intelligence with direct database operations to automate workflows, write queries, and summarize data instantly.
Every screen in this CRM is a plain PHP file in the pages/ folder. You edit it directly with xCRUD's fluent API — no compiled binaries, no hidden templates.
Chain methods like table(), columns(), relation(), change_type(), and fields_arrange() to reshape any module in minutes.
Use fields_arrange() to organize fields into labeled tabs. Use list_tab() to split list views into filtered tabs like "Paid", "Unpaid", "Overdue".
Attach custom PHP functions to after_insert, before_update, column_callback, and field_callback events. All custom functions live in lib/xcrud/functions_crm.php.
Link lookup tables with relation(). Embed child records (e.g., invoice line items) inline using nested_table(). Add computed columns with subselect().
Rename any field label with label() or set_lang(). Support multiple languages out of the box — no template edits needed.
Turn any field into a dropdown, checkbox, date picker, price input, boolean toggle, or textarea instantly with change_type(). No database schema changes required.
Ultra-rapid UI modifications, server-side data handling for massive databases, dynamic table grouping, and instant inline toggles.
Control exactly who sees what. Create roles, assign users, and configure each menu window — all through a simple admin interface.
sys_roles table.
sys_user_roles. Users can switch active role on the fly from the header dropdown.
sys_menu is tied to a role. Toggle isactive and isvisible to show/hide windows per role — instantly.
Bridges conversational intelligence with direct database operations to automate workflows, write queries, and summarize data instantly.