Skip to content

Soft delete

A soft delete marks a record as deleted without removing it from the database. The row stays; a status column or a deletion timestamp flags it as gone. Normal reads filter it out, so from the user’s point of view the thing has been deleted; the row is still available for audit purposes, for restoring, and for history.

Syndik8 uses soft delete for cancelled bookings and for several other records where the history matters. A cancelled booking disappears from the calendar but the row, its author, its times, and the reason for cancellation survive for the admin to inspect.

Membership rows also soft-delete: removing a member or leaving a syndicate sets the membership status to former rather than deleting the row. The audit trail of who was a member, when, and what role they held survives. When a membership flips to former, the member’s future bookings on that syndicate are automatically cancelled, apart from maintenance they booked in as an admin, which belongs to the syndicate and stays. Past bookings and their usage logs stay so balances and history remain intact.

A whole syndicate soft-deletes too. Closing a syndicate stamps it as closed and read-only rather than destroying it: the ledger survives, the Direct Debit mandates and subscription are cancelled at the payment provider, and the syndicate can be reinstated during a retention window. Only when that window elapses is it removed, and even then a reduced financial trail may remain for justified accounting/dispute purposes. It is not necessarily anonymous; the Privacy Policy describes retention. See Close a syndicate.