GDPR-compliant deletion: Once the retention period has expired, you must delete personal data in accordance with data protection laws (German GoBD / DSGVO).
3 Statistics Tab: Total / Deletable / Protected by Retention Requirements
Filter values can be freely configured (default: 4 years since last login / 10 years since last order)
Table showing name, email, last login, last order, number of orders
Checkbox selection + Select/Deselect All
Double security check before deletion
Deletes all associated data: addresses, shopping cart, orders, status history
second version! No backup, no pity.
Changelog
Change: Use account creation date as fallback for users who never logged in
Problem
Users who registered but never logged in had a `customers_info_date_of_last_logon` value
of `NULL` or `0000-00-00 00:00:00`. The previous filter treated these as "never logged in"
and included them regardless of how recently the account was created — potentially including
accounts created just days ago.
Solution
When `customers_info_date_of_last_logon` is `NULL` or `0000-00-00 00:00:00`, the filter
now uses `customers_info_date_account_created` as a fallback date. This means a customer
who never logged in but created their account within the configured threshold (default: 4 years)
will
not be listed as deletable.
Affected logic
- Main listing query (`WHERE` clause)
- Safety check before deletion (double-check query)
Display
Users who never logged in show "never" in red in the "Last login" column.
The creation date is no longer shown as a sub-label — the filter logic handles it silently.
Filter logic summary
A customer is listed as deletable when ALL of the following apply:
1. `COALESCE(last_logon, created_date)` is older than the configured login threshold (default: 4 years)
2. No order placed within the configured order threshold (default: 10 years)
Files changed
- `admin/inactive_users.php`