Covered in Phoenix Cart core:
1. Privacy Policy → Info pages.
3. Right to Access → Built-in customer data export.
4. Right to Rectification → Customers and admins can edit data.
5. Right to Erasure → Built-in deletion for compliance.
7. Right to Data Portability → Built-in structured export.
8. Right to Object → Newsletter unsubscribe.
13. Secure Data Handling → HTTPS, password hashing.
Not applicable (Phoenix core has essential cookies only):
2. Consent Management
15. Cookie Policy (only simple disclosure in Privacy Policy needed)
Partially covered:
12. Data Minimization & Retention Policy → Needs automated purge of old accounts/orders.
Not covered:
6. Right to Restrict Processing [ https://github.com/CE-PhoenixCart/Phoen ... b7e981d7d7 ]
9. Automated Decision-Making Transparency
10. Breach Notification Procedure
11. Data Processing Agreements
14. Age Verification / Parental Consent
16. Contact / DPO Information
GDPR open discussion
- burt
- Core Team
- Posts: 4550
- Joined: Tue Oct 29, 2019 9:37 am
- Phoenix Version: v1.1.0.8
- : Buy Me A Beverage
- Has thanked: 252 times
- Been thanked: 412 times
GDPR open discussion
I am not here to build for you.
I am here to build with you. Let's help each other.
I am here to build with you. Let's help each other.
- burt
- Core Team
- Posts: 4550
- Joined: Tue Oct 29, 2019 9:37 am
- Phoenix Version: v1.1.0.8
- : Buy Me A Beverage
- Has thanked: 252 times
- Been thanked: 412 times
Re: GDPR open discussion
More about 6
Right to Restrict Processing (GDPR Art. 18):
Definition: The user can ask you to stop using their data temporarily without full deletion. Their data stays stored but is not processed further.
For ecommerce, this usually means:
- Customer account stays in database.
- No marketing emails.
- No profiling.
- Account may be suspended from login until restriction lifted.
- Order data is retained (for tax/legal).
Triggers when:
- Customer contests accuracy of data (until verified).
- Processing is unlawful, but customer prefers restriction instead of deletion.
- You no longer need the data, but customer requires it for legal claims.
- Customer objects to processing and the balance test is unresolved.
In Phoenix Cart terms:
No built-in "suspend/freeze account" status.
Currently: either active customer or deleted customer.
What’s missing: a flag in customers table (e.g. processing_restricted = 1) and logic that:
- Blocks login and checkout.
- Blocks marketing sends.
- Keeps all past orders intact.
- Allows admin to lift restriction.
Right to Restrict Processing (GDPR Art. 18):
Definition: The user can ask you to stop using their data temporarily without full deletion. Their data stays stored but is not processed further.
For ecommerce, this usually means:
- Customer account stays in database.
- No marketing emails.
- No profiling.
- Account may be suspended from login until restriction lifted.
- Order data is retained (for tax/legal).
Triggers when:
- Customer contests accuracy of data (until verified).
- Processing is unlawful, but customer prefers restriction instead of deletion.
- You no longer need the data, but customer requires it for legal claims.
- Customer objects to processing and the balance test is unresolved.
In Phoenix Cart terms:
No built-in "suspend/freeze account" status.
Currently: either active customer or deleted customer.
What’s missing: a flag in customers table (e.g. processing_restricted = 1) and logic that:
- Blocks login and checkout.
- Blocks marketing sends.
- Keeps all past orders intact.
- Allows admin to lift restriction.
I am not here to build for you.
I am here to build with you. Let's help each other.
I am here to build with you. Let's help each other.
- burt
- Core Team
- Posts: 4550
- Joined: Tue Oct 29, 2019 9:37 am
- Phoenix Version: v1.1.0.8
- : Buy Me A Beverage
- Has thanked: 252 times
- Been thanked: 412 times
Re: GDPR open discussion
I'm thinking a customer red/green selector. This allows the admin to deactivate a customer.
If admin deactivates a customer;
1. nuke all product notifications that this customer signed up to
2. nuke all scheduled emails that this customer is due to receive
3. if this customer tries to login, immediately redirect to logout
Does anyone have any thoughts ?
If admin deactivates a customer;
1. nuke all product notifications that this customer signed up to
2. nuke all scheduled emails that this customer is due to receive
3. if this customer tries to login, immediately redirect to logout
Does anyone have any thoughts ?
I am not here to build for you.
I am here to build with you. Let's help each other.
I am here to build with you. Let's help each other.
- burt
- Core Team
- Posts: 4550
- Joined: Tue Oct 29, 2019 9:37 am
- Phoenix Version: v1.1.0.8
- : Buy Me A Beverage
- Has thanked: 252 times
- Been thanked: 412 times
Re: GDPR open discussion
Should we allow the customer to freeze themself ?
I am not here to build for you.
I am here to build with you. Let's help each other.
I am here to build with you. Let's help each other.
-
ecartz
- Core Team
- Posts: 3084
- Joined: Tue Nov 05, 2019 6:02 pm
- Phoenix Version:
- Has thanked: 4 times
- Been thanked: 208 times
Re: GDPR open discussion
As described, that would let customers do something that they can't reverse. E.g. "Oops, I didn't mean to press that button. Why can't I log in anymore?"
I think that if customers can freeze themselves, then they also need to be able to unfreeze themselves. E.g. when they try to log in, the failure page says something like "Account frozen. Click the button to send an email so that you can unfreeze the account." It would only need to say that if the login would otherwise be successful.
Perhaps there would need to be more than one frozen status. E.g.
1. Account unfrozen and fully active.
2. Customer froze account.
3. Admin froze account but customer can unfreeze.
4. Admin froze account and customer can't unfreeze.
If 4, then the login failure page might suggest that the customer contact the store administrator (owner).
-
frankl
- Builder
- Posts: 159
- Joined: Tue Feb 23, 2021 8:39 pm
- Phoenix Version: v1.1.0.4
- Has thanked: 17 times
- Been thanked: 25 times
Re: GDPR open discussion
We don't need GPDR in Australia, but I still allow customers to delete their data etc. This is actually a requirement for things like Facebook Login, and some customers are grateful they can delete their data for peace of mind.
And I think it's useful to have customer staus enabled/disabled anyway.
For instance customers who use a dodgy email adress can be disabled and they can't login or reregister, or customers can be disabled if they haven't bought for a long time. I used to disable old customers so they wouldn't appear in lists and searches but if they logged in (even after years) they were reactivated.
And I think it's useful to have customer staus enabled/disabled anyway.
For instance customers who use a dodgy email adress can be disabled and they can't login or reregister, or customers can be disabled if they haven't bought for a long time. I used to disable old customers so they wouldn't appear in lists and searches but if they logged in (even after years) they were reactivated.
Check out my addons - app.php/addons/author/frankl/contributions
- burt
- Core Team
- Posts: 4550
- Joined: Tue Oct 29, 2019 9:37 am
- Phoenix Version: v1.1.0.8
- : Buy Me A Beverage
- Has thanked: 252 times
- Been thanked: 412 times
Re: GDPR open discussion
The least needed to comply with Article 18 is a way for the customer to be frozen - the simplest option;
1. allow shopowner to freeze a customer (red/green selector)
2. show some text on the GDPR page that explains that if the customer wants to freeze themself per Art 18, they should contact the shopowner.
3. if the customer is frozen and tries to login, they get a message saying "your account is limited...contact us" (or words to that effect).
I'm not having time/effort to code up an interface that allows multiple states of `frozen-ness` - is anyone else up for that challenge?
1. allow shopowner to freeze a customer (red/green selector)
2. show some text on the GDPR page that explains that if the customer wants to freeze themself per Art 18, they should contact the shopowner.
3. if the customer is frozen and tries to login, they get a message saying "your account is limited...contact us" (or words to that effect).
I'm not having time/effort to code up an interface that allows multiple states of `frozen-ness` - is anyone else up for that challenge?
I am not here to build for you.
I am here to build with you. Let's help each other.
I am here to build with you. Let's help each other.
-
frankl
- Builder
- Posts: 159
- Joined: Tue Feb 23, 2021 8:39 pm
- Phoenix Version: v1.1.0.4
- Has thanked: 17 times
- Been thanked: 25 times
Re: GDPR open discussion
I can, is above what you need?burt wrote: ↑Fri Sep 12, 2025 11:02 am The least needed to comply with Article 18 is a way for the customer to be frozen - the simplest option;
1. allow shopowner to freeze a customer (red/green selector)
2. show some text on the GDPR page that explains that if the customer wants to freeze themself per Art 18, they should contact the shopowner.
3. if the customer is frozen and tries to login, they get a message saying "your account is limited...contact us" (or words to that effect).
I'm not having time/effort to code up an interface that allows multiple states of `frozen-ness` - is anyone else up for that challenge?
Check out my addons - app.php/addons/author/frankl/contributions
- burt
- Core Team
- Posts: 4550
- Joined: Tue Oct 29, 2019 9:37 am
- Phoenix Version: v1.1.0.8
- : Buy Me A Beverage
- Has thanked: 252 times
- Been thanked: 412 times
Re: GDPR open discussion
Only if others want it. I think it's overkill.
I am not here to build for you.
I am here to build with you. Let's help each other.
I am here to build with you. Let's help each other.
-
ecartz
- Core Team
- Posts: 3084
- Joined: Tue Nov 05, 2019 6:02 pm
- Phoenix Version:
- Has thanked: 4 times
- Been thanked: 208 times
Re: GDPR open discussion
My only thought was if we allow them to freeze themselves, we should allow them to unfreeze themselves. Everything else was just a consequence of that. This does not seem like something where a decision needs made now. Admin freezes complies with the law. If it makes an unreasonable amount of work for the admin (i.e. if people use it with any frequency), we could revisit it and provide customer freezes to reduce the admin load.
Customer freezes are more difficult both because customers may do it accidentally and that malefactors may want to do it to customers on purpose. Therefore customers should be able to undo their own freezes (that they initiated). But we don't want customers to be able to unfreeze if admin did it for legal reasons (e.g. a customer who sued over a previous shipment). Now we need more statuses.
As Burt notes, it's a lot simpler to only allow admin freezes and not pick up the maintenance issues for the more complicated system.
Customer freezes are more difficult both because customers may do it accidentally and that malefactors may want to do it to customers on purpose. Therefore customers should be able to undo their own freezes (that they initiated). But we don't want customers to be able to unfreeze if admin did it for legal reasons (e.g. a customer who sued over a previous shipment). Now we need more statuses.
As Burt notes, it's a lot simpler to only allow admin freezes and not pick up the maintenance issues for the more complicated system.