WHMCS

GDPR tools in WHMCS: consent, data export and deletion

Configure WHMCS privacy features: marketing consent, terms acceptance logging, client data export, automatic removal of inactive clients and handling erasure requests.

IntermediateWHMCS2 min read

If you serve customers in the EU or UK, privacy law gives them rights over their personal data: to know what you hold, to receive a copy and, in some cases, to have it deleted. WHMCS includes tools that help you meet these obligations. This guide explains them; it is not legal advice, so confirm your duties with a professional.

Before you start

  • A privacy policy and terms of service published on your website.
  • Know your record-keeping obligations – tax law usually requires you to keep invoices for several years even after a deletion request.

Terms of service acceptance

  1. Go to Configuration → System Settings → General Settings → Ordering.
  2. Enable TOS Acceptance and enter your terms URL.
  3. WHMCS records acceptance with each order.
  1. Under General Settings → Other (or Mail), enable Marketing Emails Opt-in.
  2. Choose whether the checkbox is pre-ticked – under GDPR it should not be.
  3. Write a clear opt-in message.

Clients can change their choice in their profile; WHMCS keeps a consent history visible on the client profile. Use the opt-in filter in the Mass Mail Tool for promotional mail; see mass mail.

Export a client's data

Open the client profile and use Export Client Data (or Data Export in the profile tools). WHMCS generates a file with profile details, contacts, services, domains, invoices, transactions and tickets. Send it to the verified client through a secure channel.

Delete or anonymise data

  • Close client: stops services and logins but keeps records.
  • Delete client: removes the client and associated data permanently – consider legal retention first.
  • Data retention automation: in Configuration → System Settings → Data Retention (newer versions), WHMCS can automatically delete or anonymise clients inactive for a set period.

Before deleting, terminate services on servers so no personal data remains in hosting accounts, and check backups policies.

Client-initiated deletion requests

Enable Allow clients to request account closure/deletion if available in your version; requests appear for staff review. Verify identity before acting on any request – a fake request could be used to sabotage a real customer.

Other good practices

  • Limit staff access to personal data with admin roles; see admin roles.
  • Keep WHMCS secure and updated; see security checklist.
  • Do not store unnecessary data in custom fields or tickets (for example full card numbers or passwords).
  • Prune old activity and ticket attachments with System Cleanup.

Troubleshooting

  • Cannot delete client: active services or unpaid invoices must be handled first.
  • Consent history missing: opt-in was enabled after the client registered; ask them to confirm consent.

Next steps

Was this guide helpful?

Still stuck?

Ask MdmHost AI for a quick answer, or open a ticket and our team will take a look. We are here 24/7.