* refactor: reports on duckdb (cherry picked from commitadb768505a) * feat(trial-balance): implement execute_duckdb with full parity to normal report Replaces the placeholder stub with 8 focused functions that mirror the normal execute() flow using parameterized DuckDB SQL queries: account fetch, period GL entries, opening balances (with Period Closing Voucher path), and all filters (cost center, project, finance book, accounting dimensions). Reuses existing pure-Python processing functions unchanged. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> (cherry picked from commitb1c8e2cb5c) * refactor(trial-balance): execute_duckdb only reads GL Entry from duckdb Replaces the previous over-engineered stub with 7 short functions. Account data, Account Closing Balance, and all metadata come from frappe.db as normal; only tabGL Entry is read from the duckdb_conn. Reuses get_opening_balance() for Account Closing Balance unchanged, reuses all downstream compute helpers (calculate_values, prepare_data, etc.) unchanged. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> (cherry picked from commit55862f98f4) * refactor: maintain sync dependency in report master (cherry picked from commit5c536b8ad1) # Conflicts: # erpnext/accounts/report/accounts_payable/accounts_payable.json # erpnext/accounts/report/accounts_receivable/accounts_receivable.json # erpnext/accounts/report/general_ledger/general_ledger.json # erpnext/accounts/report/trial_balance/trial_balance.json * refactor: DB agnostic method names (cherry picked from commitf40cd41801) * feat(general-ledger): implement execute_synced_report with full parity to normal report Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> (cherry picked from commit6b4895bcc9) # Conflicts: # erpnext/accounts/report/general_ledger/general_ledger.json * feat(balance-sheet): implement execute_synced_report with full parity to normal report Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> (cherry picked from commitbb19540816) # Conflicts: # erpnext/accounts/report/balance_sheet/balance_sheet.json * feat(profit-and-loss): implement execute_synced_report with full parity to normal report Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> (cherry picked from commit6a93baacf0) # Conflicts: # erpnext/accounts/report/profit_and_loss_statement/profit_and_loss_statement.json * refactor: synced reports should be enabled on sites based on requirements (cherry picked from commit963bbc8729) # Conflicts: # erpnext/accounts/report/general_ledger/general_ledger.json * chore: resolve conflicts --------- Co-authored-by: ruthra kumar <ruthra@erpnext.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
ERPNext as a monolith includes the following areas for managing businesses:
- Accounting
- Warehouse Management
- CRM
- Sales
- Purchase
- HRMS
- Project Management
- Support
- Asset Management
- Quality Management
- Manufacturing
- Website Management
- Customize ERPNext
- And More
ERPNext is built on the Frappe Framework, a full-stack web app framework built with Python & JavaScript.
Installation
Login for the PWD site: (username: Administrator, password: admin)
Containerized Installation
Use docker to deploy ERPNext in production or for development of Frappe apps. See https://github.com/frappe/frappe_docker for more details.
Manual Install
The Easy Way: our install script for bench will install all dependencies (e.g. MariaDB). See https://github.com/frappe/bench for more details.
New passwords will be created for the ERPNext "Administrator" user, the MariaDB root user, and the frappe user (the script displays the passwords and saves them to ~/frappe_passwords.txt).
Learning and community
- Frappe School - Learn Frappe Framework and ERPNext from the various courses by the maintainers or from the community.
- Official documentation - Extensive documentation for ERPNext.
- Discussion Forum - Engage with community of ERPNext users and service providers.
- Telegram Group - Get instant help from huge community of users.
Contributing
License
GNU/General Public License (see license.txt)
The ERPNext code is licensed as GNU General Public License (v3) and the Documentation is licensed as Creative Commons (CC-BY-SA-3.0) and the copyright is owned by Frappe Technologies Pvt Ltd (Frappe) and Contributors.
By contributing to ERPNext, you agree that your contributions will be licensed under its GNU General Public License (v3).
Logo and Trademark Policy
Please read our Logo and Trademark Policy.