.How do I roll back a failed Shopware 6 update?
Quick Answer
To roll back a failed Shopware 6 update, restore your database backup and revert your Shopware files and composer.lock to the last working version. Most failed updates happen because of incompatible plugins, incomplete migrations, or skipped cache/index rebuilds. The process below covers how to put the store back online safely without corrupting orders or customer data.
Before You Start
- ✦ A full database backup — you cannot safely roll back Shopware without restoring matching database data.
- ✦ SSH and terminal access — most recovery steps require Composer and Shopware CLI commands.
- ✦ The previous release files — ideally from Git, deployment snapshots, or server backups.
Enable maintenance mode
Stop customers from placing orders while you recover the store. A half-updated Shopware instance can create duplicate orders, payment failures, or missing checkout data. If the storefront still partially loads, switch it into maintenance mode immediately before touching files or restoring backups.
- Enable maintenance mode from your hosting panel or reverse proxy
- Block cron jobs temporarily during recovery
- Notify internal teams not to process orders manually
Revert application files
Your database and codebase must always match the same Shopware version. Revert the deployment to the last working Git tag, deployment artifact, or server snapshot. If you updated with Composer, restore the older composer.lock file before running Composer install again.
- Restore the previous release directory or Git commit
- Restore the matching composer.lock file
- Run Composer install using the restored lock file
composer install --no-dev
bin/console cache:clearRestore the database
If the update already executed migrations, you must restore the database backup from before the update started. Shopware schema changes are not always backward compatible. Trying to run older code against a newer schema usually breaks carts, admin access, or plugin data.
- Import the pre-update database dump
- Confirm the database matches the restored Shopware version
- Verify payment and plugin tables restored correctly
Isolate plugin conflicts
Plugin incompatibility causes a large percentage of failed Shopware updates. After restoring the previous version, disable plugins added or updated recently. Then bring the storefront back up using only the stable extensions you know were working before the upgrade attempt.
- Disable recently updated plugins first
- Check plugin compatibility against your Shopware version
- Review var/log and server logs for fatal errors
Rebuild Shopware caches
Cached templates and stale indexes often keep errors visible even after a successful rollback. Clear caches fully and rebuild indexes before reopening the storefront. Then test checkout, search, login, and payment methods manually on both desktop and mobile.
- Run cache clear and index refresh commands
- Warm up HTTP cache if your stack uses Varnish or CDN caching
- Test checkout end-to-end before disabling maintenance mode
bin/console cache:clear
bin/console dal:refresh:indexShopware Rollback Checklist
0 of 7 completeMistakes Most Developers Make
! Skipping database restoration
What happens: Older Shopware code tries to use newer database schema changes and the storefront breaks again.
Fix: Always restore the database snapshot created immediately before the failed update.
! Leaving plugins enabled
What happens: One incompatible extension keeps throwing fatal errors after rollback.
Fix: Disable all recently updated plugins first, then re-enable them one by one.
! Forgetting Composer lock files
What happens: Composer reinstalls newer dependencies even though you restored older files.
Fix: Restore the exact composer.lock file from the stable release before running Composer install.
Key Takeaway
The short version: a safe Shopware 6 rollback means restoring both the previous codebase and the matching database backup. Most failed recoveries happen because teams only restore files or forget plugin compatibility checks. Clear caches, rebuild indexes, and test checkout fully before reopening the store. If you update through Composer, keep previous composer.lock files versioned in Git at all times. Start with Step 1—that one alone handles most of the data integrity risk.
Related Answers
Still need help?
Talk to our Shopware experts
We've handled GDPR/CCPA compliance for dozens of EU & US Shopware stores.