peerfold

Legal

Data Retention Policy

Last updated: August 4, 2026

This page states how long each category of data lives in Peerfold, in concrete terms. Where retention is bounded by the life of a workspace, deletion of the workspace removes the data (see “Deletion” below).

Short-lived security artifacts

Artifact

Lifetime

Learner sign-in codes

10 minutes, single use

Password-reset links (admins)

60 minutes, single use

Learner sessions

30 days

Embedded-player sessions

8 hours

Support-impersonation sessions

30 minutes, admin-granted, audit-logged

OAuth authorization codes (AI assistants)

Minutes, single use; refresh tokens rotate on every use and die when the grant is revoked

Each lifetime above is when the artifact stops working. A daily sweep then deletes the expired rows themselves, so an expired code, session or grant does not sit in the database indefinitely.

Learning records

Category

Retention

Learner profiles, enrollments, progress, attempts, credits

Life of the workspace, or until the customer erases the learner

Issued certificates

Immutable once issued (rendered artifacts are never re-written). On learner erasure the name is redacted; the serial number and public verification survive as the record of issuance

Assistant transcripts

Append-only, life of the workspace; erased with the learner

Course content and published revisions

Life of the workspace. Published revisions are immutable by design, so learners always read a fixed revision

Uploaded media (images, files, video)

Life of the workspace, in Cloudflare R2/Stream

Commerce orders

Life of the workspace; the financial system of record is Stripe, which retains transaction records per its own legal obligations

Operational records

Category

Retention

Audit logs

Life of the workspace. On learner erasure the actor becomes an opaque token. The log’s integrity survives and the identity does not

CRM sync queue

Delivery rows are kept for the sync-health screen (retry and audit visibility); they carry references and payload snapshots, and go with the workspace

Outbound webhook delivery records

Kept for delivery debugging; go with the workspace

Inbound CRM webhook receipts

30 days. We store the signed deliveries a connected CRM sends us, so a portal that starts sending something unexpected can be diagnosed; they carry a record id and nothing else

Email sends

We store the send event; message handling at the provider follows Resend’s retention

Backups

The database runs on Neon with point-in-time recovery. Deleted data leaves the recovery window as it expires. Deletion is complete within that window, and backups are never used to resurrect erased records.

Deletion

  • Workspace deletion removes the workspace’s learners, content, media, logs and queue rows. Storage is keyed to the workspace, so deletion cascades structurally.

  • Learner erasure hard-deletes where the record can go, and anonymizes where the record must survive (certificates, audit logs, aggregate analytics, which are learner-blind already). A suppression marker prevents a connected CRM sync from re-creating the learner afterward.

  • CRM copies written into the customer’s own HubSpot, Day.ai or Salesforce are under the customer’s control; the erasure report tells the customer exactly which records those systems hold so they can be handled there.

Requests

Retention or deletion requests: privacy@peerfold.com. See also the Privacy Policy and the Data Processing Addendum.

Questions? Write to hello@peerfold.com and a person will answer.