Skip to content
pluginloom

Admin

Privacy, data and retention

What ChargeWarden stores, how identifiers are hashed, how long data is kept, the WordPress privacy exporter and eraser, and which outside services are called.

Last updated by the PluginLoom team

ChargeWarden is built to count repeat behaviour without keeping who a shopper is.

What is stored?#

DataWhereFormKept for
Attempt and failure counterswp_chargewarden_hitsHash of identifier, event type, timeThe longest rule window (purged hourly)
Checkout security eventswp_chargewarden_eventsMasked IP (203.0.113.x), country, keyed hashes of IP, network, email, browser, card and session, rule, order ID30 days by default (Settings > Alerts and privacy)
Blocks and allowlistwp_chargewarden_listsKeyed hash plus a masked label; allowlisted IP ranges as typedUntil they expire or you remove them
Order risk resultswp_chargewarden_reviews and order metaScore, reasons, review decision, hashesWith the order
ACH ledgerwp_chargewarden_ach_entriesTransfer ID, order, amount, status, return code, account mask, keyed hash of Plaid's account ID, validation methodUntil you delete it
Script inventorywp_chargewarden_scripts, wp_chargewarden_script_eventsScript URLs, hashes, justificationsUntil you delete it
Plugin logwp_chargewarden_logsMessages, no raw emails or card data30 days by default

Full IP addresses are kept in memory during the request only. Account and routing numbers are never stored.

How are identifiers hashed?#

HMAC-SHA256 with a random 256-bit key created for your site when ChargeWarden is first activated (option chargewarden_hash_key). On multi-server sites, set the same key everywhere with the CHARGEWARDEN_HASH_KEY constant. Changing the key resets all counters and makes existing blocks unmatchable.

How do the WordPress privacy tools work?#

ChargeWarden registers with Tools > Export Personal Data and Tools > Erase Personal Data:

  • Export finds events by hashing the person's email the same way checkout does, and risk scores through their orders.
  • Erase deletes those events, allowlist entries and risk records, and removes ChargeWarden's meta from their orders. A block on their email is kept, because the store needs it to prevent fraud, and the eraser says so. Remove it by hand if that is appropriate.

Suggested text is added to Settings > Privacy > Policy guide.

Which outside services are called?#

ServiceWhenWhat is sent
Cloudflare Turnstile or hCaptchaOnly if you set one up, when a challenge is shownThe token and the shopper IP
Tor Project, AWS, Google Cloud, DigitalOcean, Oracle CloudOnly if you turn on the free IP lists, once a weekNothing about shoppers: the lists are downloaded
Stripe APIOnly if you turn on the Radar lookupThe charge ID, with your Stripe key
pluginloom.comLicense activation and update checksLicense key, site URL, versions

What happens when I delete the plugin?#

Scheduled tasks are removed. Tables, options and capabilities are removed only if you turned on "Delete all ChargeWarden data when the plugin is deleted".

Was this page helpful?