WP Manifestindependent plugin directory
manifest / privacy / hdwebmobile-data-privacy-requests

HDWebmobile Data Privacy Requests

Let customers request their own data be exported or erased from My Account, via WordPress's own core privacy-request system.

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/htrxuan/hdwebmobile-data-privacy-requests/archive/refs/heads/master.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Let customers request their own data be exported or erased from My Account, via WordPress's own core privacy-request system.

Description

Adds "Request data export" and "Request account erasure" buttons to a logged-in customer's My Account dashboard. Every request is filed through WordPress's own core personal-data request system -- this plugin does not reimplement export or erasure itself.

Why this plugin exists

Several competing GDPR/data-request plugins for WooCommerce accepted an email address directly from the request body when a logged-in customer submitted a data export or erasure request, and used that submitted email -- rather than the requester's own account email -- to create the underlying privacy request (CWE-863, Incorrect Authorization). A logged-in customer could submit someone else's email address and initiate an export or erasure request against a stranger's data.

This plugin never has an email field to submit in the first place:

  • The one method that ever files a request takes a WordPress user id as its first parameter -- never an email address -- and always derives the email from that user's own account record.
  • The only caller always passes the currently logged-in user's own id; there is no admin-post handler reachable by a guest, since this plugin only ever acts on the account that is already authenticated.
  • Every request still goes through WordPress core's own confirmation-email flow, so even a compromised session can't silently complete an export or erasure without that email being seen.

Features

  • "Request data export" and "Request account erasure" buttons on My Account
  • A list of the customer's own past requests and their status
  • Reuses WordPress's own core Export/Erase Personal Data admin screens -- nothing new for the store owner to learn

Limitations

  • Logged-in customers only -- guests should use WordPress's own default admin-initiated privacy request tools
  • Does not change what data WooCommerce exports/erases -- that's still governed by WooCommerce's and WordPress's own core exporters/erasers

Installation

  1. Upload to /wp-content/plugins/hdwebmobile-data-privacy-requests, or install through the WordPress plugins screen.
  2. Activate. WooCommerce must already be installed and active.
  3. Customers will see the new buttons on their My Account dashboard immediately.

Development

includes/
  class-hddpr-activator.php   activation check
  class-hddpr-core.php        bootstraps admin + frontend
  class-hddpr-repository.php  the ONLY class that ever files a core privacy request -- see its docblock for the security design
  class-hddpr-admin.php       hub tab (links to WordPress's own core privacy-request screens)
  class-hddpr-frontend.php    My Account buttons + the logged-in-only request handler
  class-hddpr-hub.php         shared HDWebmobile admin hub (see the suite's other plugins)

License

GPLv2 or later — https://www.gnu.org/licenses/gpl-2.0.html