MemberPulse

UJ-M-029: Export My Personal Data

Member exports all their personal data from the platform

Journey Overview

AttributeValue
Journey IDUJ-M-029
ActorMember
GoalDownload a copy of all personal data held
TriggerMember requests data export (GDPR/privacy rights)
OutcomeMember receives complete data export

Preconditions

  • Member is authenticated
  • Data export feature enabled
  • Member has not exceeded export request limits

Journey Flow

flowchart TD
    A[Navigate to Data & Privacy] --> B[Click Export My Data]
    B --> C[Review data categories]
    C --> D[Confirm export request]
    D --> E[Request queued]
    E --> F[System compiles data]
    F --> G[Export ready notification]
    G --> H[Download export file]

Detailed Steps

  1. Access Data Export

    Member navigates to data export:

    • Profile → Privacy & Data
    • Settings → Data Export
    • Account → Download My Data
  2. Review Export Options

    Data export page:

    ┌─────────────────────────────────────────────────────────────┐
    │ Export My Data                                              │
    ├─────────────────────────────────────────────────────────────┤
    │                                                             │
    │ You can download a copy of your personal data stored on     │
    │ this platform. This includes:                               │
    │                                                             │
    │ ☑ Profile Information                                       │
    │   Name, email, contact details, preferences                 │
    │                                                             │
    │ ☑ Membership History                                        │
    │   Plans, payments, invoices, renewal history                │
    │                                                             │
    │ ☑ Event Activity                                            │
    │   Registrations, attendance, tickets                        │
    │                                                             │
    │ ☑ Course Progress                                           │
    │   Enrollments, completions, certificates                    │
    │                                                             │
    │ ☑ CPD Records                                               │
    │   All CPD entries and certificates                          │
    │                                                             │
    │ ☑ Support History                                           │
    │   Support tickets and conversations                         │
    │                                                             │
    │ ☑ Activity Log                                              │
    │   Login history, actions taken                              │
    │                                                             │
    │ Format: [ZIP Archive ▼]                                     │
    │ Contains: JSON + readable summaries                         │
    │                                                             │
    │ [Request Data Export]                                       │
    │                                                             │
    │ Note: Export preparation may take up to 24 hours.           │
    │ You'll receive an email when it's ready.                    │
    │                                                             │
    └─────────────────────────────────────────────────────────────┘
  3. Confirm Request

    Confirmation step:

    ┌─────────────────────────────────────────────────────────────┐
    │ Confirm Data Export Request                                 │
    ├─────────────────────────────────────────────────────────────┤
    │                                                             │
    │ You are requesting a complete export of your personal data. │
    │                                                             │
    │ For security:                                               │
    │ • You'll receive an email when the export is ready          │
    │ • The download link will expire after 7 days                │
    │ • You can only request one export per 30 days               │
    │                                                             │
    │ Please confirm your password to continue:                   │
    │ [••••••••••••]                                              │
    │                                                             │
    │ [Cancel]  [Confirm & Request Export]                        │
    │                                                             │
    └─────────────────────────────────────────────────────────────┘
  4. Request Queued

    Confirmation shown:

    ┌─────────────────────────────────────────────────────────────┐
    │ ✅ Export Requested                                         │
    ├─────────────────────────────────────────────────────────────┤
    │                                                             │
    │ Your data export is being prepared.                         │
    │                                                             │
    │ Request ID: EXP-2025-12345                                  │
    │ Requested: March 15, 2025 at 10:30 AM                       │
    │ Estimated: Ready within 24 hours                            │
    │                                                             │
    │ We'll send an email to john@email.com when your             │
    │ export is ready for download.                               │
    │                                                             │
    └─────────────────────────────────────────────────────────────┘
  5. Export Preparation

    System compiles data:

    • All data categories collected
    • Data formatted for readability
    • ZIP archive created
    • Secure download link generated
    • Notification sent
  6. Download Export

    When ready, member receives email:

    Email:

    • Notification that export is ready
    • Secure download link
    • Link expiry notice (7 days)
    • Security reminder

    Download:

    • Click link (requires authentication)
    • Download ZIP file
    • File contains JSON + readable formats

Export Contents

File Structure

my-data-export-2025-03-15/
├── README.txt                    # Instructions and overview
├── profile/
│   ├── personal-info.json        # Profile data
│   └── personal-info.csv         # Readable format
├── membership/
│   ├── membership-history.json
│   ├── payment-history.json
│   └── invoices/                 # PDF invoices
├── events/
│   ├── registrations.json
│   ├── attendance.json
│   └── tickets/                  # PDF tickets
├── courses/
│   ├── enrollments.json
│   ├── progress.json
│   └── certificates/             # PDF certificates
├── cpd/
│   ├── cpd-records.json
│   └── cpd-certificates/
├── support/
│   └── tickets.json
└── activity/
    └── activity-log.json

Data Included

CategoryData Points
ProfileName, email, phone, address, preferences, photo
MembershipPlan history, status, renewals, payments
PaymentsTransaction history, invoices, receipts
EventsRegistrations, attendance, tickets
CoursesEnrollments, progress, completions, certificates
CPDAll CPD records, submissions, certificates
SupportTickets, conversations
ActivityLogin history, major actions

Security Measures

  • Password confirmation required
  • Link expires after 7 days
  • Authenticated download required
  • Rate limited (1 per 30 days)
  • Audit logged
  • Secure file storage

Acceptance Criteria

Frontend

  • Data export page with categories
  • Category selection (all by default)
  • Password confirmation
  • Request confirmation
  • Status tracking
  • Download page (when ready)

Backend

  • POST /api/member/data-export - Request export
  • GET /api/member/data-export/{id} - Check status
  • GET /api/member/data-export/{id}/download - Download
  • Background job for compilation
  • Secure file storage
  • Email notifications

Permissions

  • Members can only export their own data
  • Authentication required for download

Business Rules

  • Rate limit: 1 export per 30 days
  • Download link expires after 7 days
  • All member data included
  • Exported files deleted after expiry

Error Handling

  • Export compilation failure notification
  • Expired link message
  • Rate limit exceeded message

On this page