Description
The current system supports anonymous donations at the schema level, but the end-to-end workflow is incomplete and inconsistent across checkout, campaign display, data retention, and post-donation identity management.
This issue focuses on fully implementing a robust anonymous donation system that respects user privacy while still allowing optional identity disclosure for use cases such as tax reporting or donor verification.
Problem Statement
While anonymous donations can be recorded, the application currently lacks:
- A clear checkout option to choose between anonymous and identified donations.
- Consistent handling of anonymous donors in campaign displays and leaderboards.
- Support for bulk or grouped anonymity (e.g., organizational or pooled donations).
- A defined GDPR-compliant strategy for storing or minimizing personal data in anonymous donations.
- A mechanism for donors to optionally reveal their identity after donating.
As a result, anonymity is inconsistently applied and not legally or operationally robust.
Scope
1. Checkout Flow: Anonymous vs Identified Donations
-
Add a clear option during checkout:
- “Donate anonymously”
- “Donate with identity”
-
Ensure the selection is persisted in the donation record (e.g., isAnonymous: boolean).
-
Prevent accidental leakage of identity data in metadata when anonymous is selected.
2. Campaign Display Logic
-
Anonymous donations must not expose:
- User names
- Profile images
- Email or identifiers
-
Replace donor identity with a consistent placeholder such as:
- “Anonymous”
- “Anonymous Donor”
-
Ensure leaderboards and donation feeds respect anonymity flags.
3. Bulk Anonymity for Groups
- Support group or batch donations marked as anonymous at the group level.
- Ensure all child donations inherit anonymity unless explicitly overridden.
- Maintain audit consistency while preserving privacy.
4. GDPR-Compliant Data Retention
-
Define clear data retention rules for anonymous donations:
- Minimize stored personal data where anonymity is selected.
- Avoid storing unnecessary identifiers (email, user ID linkage beyond required audit scope).
-
Ensure compliance with GDPR principles such as data minimization and purpose limitation.
-
Document retention policy for anonymous vs identified donations.
5. Post-Donation Identity Disclosure
-
Allow donors to optionally reveal their identity after donation:
- Useful for tax receipts or verification purposes.
-
Implement a secure flow to:
- Link anonymous donation → user account (if requested)
- Regenerate receipts with identity if applicable
-
Ensure this action is explicitly opt-in and logged for audit purposes.
6. API and Backend Updates
-
Extend donation schema and services to support:
isAnonymous
- Optional
revealedAt or identity-linking timestamp
-
Ensure APIs correctly filter sensitive data for anonymous donations.
-
Maintain backward compatibility with existing donation records.
7. Security & Privacy Considerations
- Prevent inference attacks where multiple metadata fields could re-identify anonymous donors.
- Ensure logs, analytics, and third-party integrations respect anonymity flags.
- Sanitize event tracking and analytics pipelines.
Acceptance Criteria
Description
The current system supports anonymous donations at the schema level, but the end-to-end workflow is incomplete and inconsistent across checkout, campaign display, data retention, and post-donation identity management.
This issue focuses on fully implementing a robust anonymous donation system that respects user privacy while still allowing optional identity disclosure for use cases such as tax reporting or donor verification.
Problem Statement
While anonymous donations can be recorded, the application currently lacks:
As a result, anonymity is inconsistently applied and not legally or operationally robust.
Scope
1. Checkout Flow: Anonymous vs Identified Donations
Add a clear option during checkout:
Ensure the selection is persisted in the donation record (e.g.,
isAnonymous: boolean).Prevent accidental leakage of identity data in metadata when anonymous is selected.
2. Campaign Display Logic
Anonymous donations must not expose:
Replace donor identity with a consistent placeholder such as:
Ensure leaderboards and donation feeds respect anonymity flags.
3. Bulk Anonymity for Groups
4. GDPR-Compliant Data Retention
Define clear data retention rules for anonymous donations:
Ensure compliance with GDPR principles such as data minimization and purpose limitation.
Document retention policy for anonymous vs identified donations.
5. Post-Donation Identity Disclosure
Allow donors to optionally reveal their identity after donation:
Implement a secure flow to:
Ensure this action is explicitly opt-in and logged for audit purposes.
6. API and Backend Updates
Extend donation schema and services to support:
isAnonymousrevealedAtor identity-linking timestampEnsure APIs correctly filter sensitive data for anonymous donations.
Maintain backward compatibility with existing donation records.
7. Security & Privacy Considerations
Acceptance Criteria