Remove abandoned carts
Remove non-converted carts after a configurable time (e.g. 30 days) — usually the biggest storage drain in Shopware databases.
Tidy your Shopware database on schedule — abandoned carts, old logs, orphaned orders. Dry-run, audit log, scheduled tasks.
Over time, every Shopware installation accumulates database junk: abandoned carts, expired sessions, old logs, failed orders. The plugin finds, lists and cleans them up — scheduled and safe.
Remove non-converted carts after a configurable time (e.g. 30 days) — usually the biggest storage drain in Shopware databases.
Trim Shopware-internal logs regularly (mail headers, notifications, cart recovery data). Saves hundreds of MB from year two onwards.
Delete cancelled or failed orders beyond a configurable age. Guest orders without follow-up orders optionally too — GDPR-compliant.
Expired sessions and sales-channel sessions that often linger after Shopware updates. Auto-vacuum for the sales_channel_api_context table.
Finds and removes orphaned foreign-key references to deleted media — helpful with migration leftovers.
Define custom SQL cleanup rules per table — with WHERE clause and soft-delete detection. Built-in audit log.
Database cleanup sounds simple but is risky. Three mechanisms ensure nothing goes wrong.
Database cleanup is delicate — wrong deletions are irreversible. The plugin works conservatively: dry-run mode first shows what would be deleted, audit log records every action with user and time, scheduled tasks run on clear rules instead of spontaneous clicks.
Every cleanup rule has a preview mode: shows the exact number of affected rows including samples before anything is deleted.
Every execution (manual or scheduled) is logged with rule, count, user and time. A must-have for GDPR audits.
Via Shopware scheduled tasks: daily, weekly, monthly. No more forgotten manual clicks — and no more database growth.
All rules, thresholds and schedules maintainable through the admin UI. No CLI scripts, no direct SQL operations.
Every cleanup task is its own rule with target table, filter condition and age threshold. Granularly toggleable.
"Delete carts older than 30 days", "Logs older than 90 days" — own thresholds per rule, maintainable in the admin.
Large cleanups run in batches (e.g. 1,000 rows per run) so neither DB locks nor memory issues occur.
Optionally restrict cleanups to specific sales channels — e.g. clean B2C data only, leave B2B untouched.
We show a prominent reminder: backup first, then cleanup. Plus a confirmation dialog for large deletions.
Dashboard with statistics: space gained per table, cleanup history, largest tables vs. expected sizes.
Dedicated scheduled tasks, CLI command, soft-delete aware, batch processing. No DB patches, no core modifications.
Dedicated tasks for each cleanup rule, registered through the Shopware scheduled-task system. Runs with the normal scheduled_task:run worker.
bin/console staw:db-cleaner:run [--rule=X] [--dry-run] — run all rules or individual ones manually, with dry-run option.
Batch processing with configurable size (default 1,000) and explicit transaction control — no lock-wait issues even with large tables.
Detects Shopware entities with soft-delete and either uses UPDATE deleted_at or real DELETE, depending on configuration.
Available in the official Shopware Store — with license validation and auto-update notifications in the admin.
The plugin is distributed through the Shopware Community Store as a subscription licence — license validation and auto-updates directly in the Shopware admin.
The plugin is distributed through the official Shopware Community Store and is currently in the Shopware approval process. Linked here once released — with license validation and auto-update notifications directly in the backend.
Currently in the approval process. Planned price: €9.99 / month.
Send us a short message and we will notify you immediately when the plugin is released.
Interested in a pilot deployment before official release? We have a few test licences available.
DB Cleaner cleans up your Shopware database in a scheduled, safe way — abandoned carts, old logs, orphaned orders. With dry-run, audit log and scheduled tasks.