Skip to main content

[Admin] Auditing cancellations

Every cancellation — member-initiated or admin-initiated — writes an entry to the `membership-package-history` collection. The log is append-only: no one (including platform admins via the UI) can edit or delete entries.

What's recorded for each cancellation: - Who cancelled (member uid or admin uid) - Their name and when - The membership id, tier/plan id, organization id - The effective end date - Whether the member was grandfathered (notice period snapshotted at signup) or used the current policy - Any reason the admin supplied (optional)

What's recorded for each policy change: - Who changed the policy (admin uid + name) - Before/after notice period values - Timestamp and optional reason

Viewing the log: - Per-package: click the History panel on any tier/plan card in your admin view. Shows all actions on that specific package. - Organisation-wide: use the Scheduled changes dashboard widget above the tier/plan list — it spans every package.

Compliance uses: - Proof of disclosure at signup (the `cancellationPolicyAcknowledgedAt` timestamp on the membership doc). - Proof of notice at cancel time (the history entry + the computed `effectiveDate`). - Proof of policy version (the `cancellationPolicyAcknowledgedVersion` integer increments when we refine the policy text).

Exporting: History entries can be exported via the backend CF `getMembershipPackageHistory` (admin-only callable). The current UI shows the most recent 50 entries; for compliance exports, contact support for a full dump.

Still have questions?