Skip to main content Skip to search Skip to main navigation
Meet Shopware Payments Fast. Powerful. Yours to control. Discover payments
Diese Seite ist auch auf Deutsch verfügbar.
CadNative

Safe Media Delete and Quarantine

Description

Highlights

  • A retention window you can undo, not an immediate delete
  • Re-checks that media is still unused before it deletes anything
  • Restores files that came back into use instead of deleting them
  • Separate view, manage and delete permissions
  • No external services, no telemetry, no data leaves your shop

Features

  • Scans with the same detection Shopware's own media:delete-unused uses
  • Honours UnusedMediaSearchEvent, so other extensions can protect their files
  • Quarantines into a Pending deletion folder with a purge date
  • Quarantined files keep their URL, thumbnails and storefront rendering
  • Configurable retention window, 30 days by default
  • Configurable scan grace period for recent uploads, 20 days by default
  • Daily scheduled task purges only what is past its date and still unused
  • Anything back in use is restored to its original folder, with the reason kept
  • One-click restore per item during the window
  • ACL roles for viewer, editor and deleter
  • Console commands for quarantine and purge, with dry-run and limit options
  • Uninstalling restores every quarantined file before removing the plugin's table

About the Extension

Deleting unused media in Shopware is a one-way door. This extension adds a door you can walk back

through.


Unused media is moved to a Pending deletion folder and given a purge date. When that date arrives, a

daily task deletes it — but only if it is still unused at that moment. Anything that has been used

again in the meantime is moved back to its original folder instead of being deleted.


Quarantined files keep working the whole time. They stay at the same URL, keep their thumbnails and

still render on the storefront, so a mistake is visible and cheap to undo rather than permanent.


## What it does


- Scan for media that nothing references, using the same detection Shopware's own

  media:delete-unused uses, and honouring UnusedMediaSearchEvent so other extensions can protect

  their own files.

- Quarantine with a configurable retention window, 30 days by default.

- Re-check before deleting. An image quarantined a month ago may have been assigned to a product

  yesterday; it is restored, not deleted.

- Restore any item during the window, with one click, back to the folder it came from.

- Permissions split three ways — view, manage, delete — so you can let someone see what is queued

  for deletion without letting them delete it.

- Command line too: cadnative:media:quarantine-unused and cadnative:media:purge-due, for operators

  who prefer cron to the Shopware scheduler.


## What Shopware already does


Worth being straight about: bin/console media:delete-unused already finds and deletes unused media,

already defaults to a 20-day grace period on recent uploads, and already has a dry-run. If that

works for you, you may not need this. What core does not have is a reversible window after

flagging, and a re-check before the delete actually happens.


## Good to know


- Tagged media is never treated as unused. Shopware counts a media tag as a reference, so a file

  with any tag is skipped — by this extension and by Shopware's own media:delete-unused alike. Some

  extensions tag every file they import, so if a scan comes back empty, check for tags first.

- Running media:delete-unused yourself still deletes quarantined files immediately. This extension

  deliberately does not interfere with core's own command — that is treated as your explicit

  intent.

- Shopware removes the physical files asynchronously, so disk space is reclaimed when a message

  queue worker runs. This is normal Shopware behaviour and applies to media:delete-unused as well.

- Uninstalling restores every quarantined file to its original folder first. It never deletes your

  media on uninstall.


## Your data stays yours


No external service, no account, no telemetry. Everything happens inside your own shop.


Details

  • Available: English, German
  • Latest update: 1 October 2026
  • Version: 1.2.0
  • Category: Administration

About the Extension Partner

Partner Status

  • Shopware Extension Partner Shopware
    Extension Partner

Details

  • Partner since: 2021
  • Extensions: 1

Support

  • Based in: India
  • Speaks: German, English, Dutch, Hindi
  • Response time: Very quickly