How to Update ERPNext 2026: A Brief Checklist
- Check your current ERPNext and Frappe versions
- Review ERPNext release notes for compatibility
- Take a full ERPNext backup before updates, including database and files
- Set up or verify a staging environment before production update
- Pull latest ERPNext updates from the official repository
- Run bench update and database migration commands
- Restart all services after update completion
- Verify core modules (Accounts, HR, Inventory, CRM)
- Test VAT 15% calculations, ZATCA Phase 2 / FATOORAH compliance
- Check payroll workflows for WPS and GOSI (التأمينات الاجتماعية) compliance
- Review system logs for errors or failed processes
- Perform end-user testing before going live
- Schedule post-update monitoring for stability and performance
Why Businesses in Saudi Arabia Must Update ERPNext?
Alignment with Saudi Vision 2030 Digital Transformation (رؤية 2030)
ZATCA Phase 2 Compliance (Real-Time E-Invoicing Requirements)
FATOORAH Compliance and the June 30, 2026 Deadline
Payroll Compliance with WPS and GOSI
- WPS (Wage Protection System) salary file requirements
- GOSI (التأمينات الاجتماعية) contribution calculations
- Updated labor law formats and reporting rules
VAT 15% Accuracy and Tax Reporting Compliance
Arabic Language Support and System Stability
- Proper RTL (right-to-left) rendering improvements
- Better Arabic PDF invoice formatting
- UI consistency across modules
- Fewer localization bugs after upgrades
Security, Performance, and Compliance Risk Reduction
ERPNext Patch Updates Vs Minor Updates Vs Major Version Upgrades
Patch Updates
Minor Updates
For example, ERPNext v15.1 → v15.5 is a minor update that may include:
- Improved dashboards and UI changes
- Better Arabic language support
- Enhanced FATOORAH e-invoicing compatibility
- New HR or accounting features
- Updates to integrations and APIs
Major Version Upgrades
A common example is ERPNext v15 → ERPNext v16
Major upgrades often include:
- New features and module redesigns
- Database structure changes
- Updated security architecture
- Improved performance and scalability
- Changes to workflows, APIs, and customization compatibility
What Should I Do Before Updating ERPNext?
1. Check Your Current ERPNext Version
Before updating, identify your installed ERPNext and Frappe versions. This helps determine whether you need a patch update, minor update, or a major version update.
Check your current ERPNext version by running:
bench version
python3 –version
node –version
mysql –version
redis-server –version
2. Thoroughly Check ERPNext Latest Version Release Notes
To understand everything new in the latest update and ensure compatibility, check the release notes by ERPNext to discover modifications and bugs. They help you ensure if your current version is compatible with the new version requirements.
ERPNext v16 upgrade requirements:
- OS: Ubuntu 20.04 LTS
- Python version ERPNext upgrade: 3.10 or higher
- Node.js version ERPNext: 18.x or higher
- MariaDB ERPNext compatibility: 10.6 or higher
- Redis: 6.x or higher
- RAM: 4GB – 8 GB
- Storage: 20 GB at least
3. Put ERPNext Into Maintenance Mode
bench --site your-site-name set-maintenance-mode on 4. ERPNext Backup Before Update q
Before you actually update ERPNext, it is important to backup all your important assets to avoid data loss in case of a rollback. Create a backup of your system using bench backup to save your files and database. It is better to store it in a different environment for added protection.
cd ~/frappe-bench
bench --site mycompany.com backup --with-files You can ensure and confirm backup by:
ls -lh sites/mycompany.com/private/backups/
Once you create the backup, make sure to store it safely. You can do it by:
Alignment with Saudi Vision 2030 Digital Transformation (رؤية 2030)
Option 1: Copy to another server via SCP
scp sites/mycompany.com/private/backups/*.sql.gz user@backup-server:/backups/
Option 2: Upload to S3
aws s3 cp sites/mycompany.com/private/backups/*.sql.gz s3://your-backup-bucket/erpnext/
How to Update ERPNext Without Losing Data: Step by Step
Step 1: Run ERPNext Update Commands
Once you’re done with the prerequisites, it’s time to get to the main part: ERPNext version update. Follow these ERPNext v16 upgrade commands for ERPNext minor updates and ERPNext major version upgrades.
Update Frappe Framework to v16:
bench switch-to-branch version-16 frappe --upgrade
Update ERPNext to v16:
bench switch-to-branch version-16 erpnext --upgrade
Or use:bench switch-to-branch version-16 frappe erpnext --upgrade
Step 2: Bench Migrate ERPNext
After you run the ERPNext update command, it is time to migrate data.
bench --site [your-site-name] migrate
Step 3: Clear Cache & Rebuild Assets
This step is especially important for businesses using Arabic interfaces, custom dashboards, or ZATCA/FATOORAH integrations, as frontend inconsistencies can affect invoice generation, RTL rendering, and user workflows.
bench clear-cache
bench clear-website-cache
bench build
Step 4: Restart ERPNext Services
bench restart
Or supervisorctl reload Step 5: Disable Maintenance Mode
bench --site your-site-name set-maintenance-mode off
Step 6: Verify the Upgrade
Once updated, make sure you have the latest version.
bench version
You can also check any inconsistencies with:
bench –site mycompany.com doctor
Bonus: ERPNext Update Command for ERPNext Staging Environment
- Repeat the installation on your staging server and restore your production backup into the environment, using:
bench new-site staging.mycompany.com - Now, restore the database backup as well on the same server:
bench --site staging.mycompany.com restore \ /path/to/your-production-backup.sql.gz - Switch the staging environment to ERPNext v15 and test the upgrade, using:
bench switch-to-branch version-15 frappe erpnext hrms - Use this ERPNext update command to update the version and run ERPNext database migration after update:
bench update --pull
ERPNext Post-upgrade Checklist
- Make sure that the dashboard loads without JavaScript errors by checking for red errors in the browser console.
- Ensure that all fields in an existing Sales Invoice and a new test Sales Invoice are visible and correct.
- Create sales orders and process payroll to ensure compliance with Saudi labor regulations for KSA users.
- Run the Trial Balance report for the last month to verify the figures.
- Validate XML invoice structures to confirm they meet ZATCA formatting requirements.
- Verify that tax templates correctly apply the standard 15% VAT rate (15% ضريبة القيمة المضافة) across all transactions.
- Confirm correct Arabic UI rendering, proper RTL (right-to-left) formatting, consistency in bilingual invoice layouts, and accurate Arabic PDF generation.
- Create automatic backups to ensure data safety.
- Train employees on the new updates to prevent confusion and performance issues.
How To Rollback After a Failed Update?
Even after considering all the important elements, the update may not always go as planned. In such cases, you should act quickly to return to the previous version before attempting the ERPNext version upgrade again.Here’s how you can perform an ERPNext rollback after an update in six simple steps:
Step 1:
sudo supervisorctl stop all
Step 2:
bench switch-to-branch version-15 frappe erpnext hrms
(Replace version-15 with your previous version number.
Step 3:
bench --site mycompany.com restore \
sites/mycompany.com/private/backups/20260405_020000-mycompany_com-database.sql.gz
Step 4:
bench build
Step 5:
sudo supervisorctl start all
Step 6:
bench --site mycompany.com doctor
Common ERPNext Update Errors and Troubleshooting
While updating EPRNext, the system may not pass all the tests and you might see one or more of these errors after EPRNext update.
Missing Modules
bench upgrade --patch
ERPNext Update Custom Apps After Upgrade
Migration Errors
bench retry-upgrade
Compatibility Problems
If compatibility of custom apps, scripts, or modules is not checked before upgrading, it may lead to system errors or broken functionality. In such cases, temporarily disable the affected app, review the logs to identify conflicts, and update the custom code to match the new version requirements before re-enabling it.
Login Issues
After upgrades, sometimes, users may experience issues such as being unable to log in, repeated login redirects, blank login screens, or “Invalid Login” errors even when credentials are correct. You can try again after clearing browser cache, or reset passwords if it does not work.
Missing Arabic Fonts or RTL Issues
ZATCA Integration Errors
bench --site your-site-name clear-cache
bench --site your-site-name migrate
bench restart
Conclusion
When learning how to update ERPNext in 2026, it is important to understand both the prerequisites and post-upgrade checks to ensure optimal functionality and avoid unnecessary rollbacks.
An ERPNext update in Saudi Arabia is not just a technical maintenance task—it is a critical requirement for security, performance, and local regulatory compliance. For businesses operating in the Kingdom, ERPNext updates carry even greater importance due to strict compliance requirements, including ZATCA Phase 2 (فاتورة المرحلة الثانية), FATOORAH e-invoicing regulations, accurate 15% VAT reporting, WPS payroll processing, and GOSI contributions.
Whether you are planning minor ERPNext updates or major version upgrades, working with experienced local ERPNext partners in Riyadh, Jeddah, and Dammam can help ensure a smooth implementation process. Delivery Devs specializes in ERPNext deployments, upgrades, and support for businesses across Saudi Arabia.
Get in touch with our ERPNext experts in Saudi Arabia to discuss your ERPNext 2026 upgrade and implementation requirements.
FAQs
How do I update ERPNext to the latest version?
Here’s how to upgrade ERPNext to the latest version:
- Check your current ERPNext and Frappe versions and review ERPNext release notes.
- Take a full ERPNext backup before updating, including the database and files.
- Pull the latest ERPNext updates from the official repository.
- Run the bench update and database migration commands.
- Restart all services after the update is complete.
- Verify core modules such as Accounts, HR, Inventory, and CRM.
- Review system logs for errors or failed processes.
- Perform end-user testing before going live.
- Schedule post-update monitoring to ensure stability and performance.