Skip to main content

Deleting a Record

Written by Jonathan Marbutt

Sometimes you need to remove a record entirely — a client or contact created by mistake, or leftover training data. CoolFocus lets you delete records, and it protects your history while doing it.




Delete is a "soft delete"

When you delete a person (client, donor, contact), CoolFocus doesn't shred the data — it marks the record deleted and hides it from your lists. The connected history (notes, visits, contributions, pledges) is preserved, not destroyed. That keeps your reporting intact and means a record removed by mistake can be recovered.




How to delete

1. Open the record.

2. Open the Actions menu in the top-right.

3. Choose Delete.

4. Confirm by typing delete <record type> when prompted - for example delete client.

If you don't see a Delete option, that record type doesn't allow deletion, or your permissions don't include delete - check with an administrator.




When delete is blocked by other records

Some records can't be deleted while something else still references them. CoolFocus checks for these links and shows a plain-language reason instead of a database error.

For example, deleting a Staff or Volunteer record fails with a clear message if that person is still assigned as staff on an appointment type:

This person is still assigned as staff on an appointment type. Unassign them first, then delete the person.

To fix it, open the appointment type's Scheduling Rules, remove the person from its staff list, then delete the person record. See Appointment Types and Booking Rules.

Deleting a client record fails the same way if that client still has pregnancy history on file:

Cannot delete this client because pregnancy history exists. Delete the pregnancy history first.

Delete the pregnancy history entries first, then delete the client record.

Chart templates use the same pattern: if a template is still referenced by existing charts, deletion is blocked with a message telling you to remove the references first rather than a raw error.




Staff or volunteers assigned to an appointment type

CoolFocus blocks deletion of a Staff or Volunteer record while that person is still assigned as staff on an appointment type. You'll see one of these messages:

  • "This person is still assigned as staff on an appointment type. Unassign them first, then delete the person." Open the appointment type under Scheduler > Scheduler Settings > Types, remove the person from its staffing, and try the delete again.

  • "An archived appointment-type staff assignment is blocking deletion. Contact support to remove it, then try again." This means the only remaining assignment is already archived; contact support to have it cleared.

See Appointment Types and Booking Rules for how staffing is assigned on an appointment type.


A client with text message history won't delete

Known issue: deleting a client who has any text message history can fail and show a raw database error instead of a plain message. Our team is working on a fix.

Until that's fixed, don't try to delete a client with text history. Instead, open the record and uncheck the "Client" box to take them off your client list - see "Delete vs. just removing a role" below. Their record and history stay in CoolFocus, but they no longer show up as a client.




Finding records marked "To Be Deleted"

Donor, Client, and Volunteer lists include a To Be Deleted checkbox field, separate from the soft-delete status above. It's a flag some records carry from earlier cleanup work or an import, marking them as candidates for removal. Checking this box on a record does not delete it or hide it from lists by itself - it's only useful once you filter or segment on it.

You can filter or build a saved segment on this field to gather cleanup candidates before you review and delete them:

1. Open the Donors, Clients, or Volunteers list.

2. Add a filter on To Be Deleted and choose is true.

3. Review the results, then delete the records that are genuinely no longer needed. See "How do I find…" with Filters and Saving & Sharing Segments for more on building and saving filters.




Delete vs. just removing a role

Deleting isn't always what you want. One person can be a client and a donor and a volunteer on a single shared record. If you only want to take someone off your client list without losing them as a donor, don't delete - open the record and uncheck the "Client" box instead. They stay in CoolFocus with all their other history; they simply no longer appear as a client.

Use Delete for genuine mistakes and test data. Uncheck the role when the person is real but shouldn't be in that particular list.




If it's a duplicate, merge instead

If two records are the same person, don't delete one - merge them so the history combines onto a single record. See Merging Duplicate Records.



Reviewing client rows an import may have created by mistake

An import can create a new Client row for a person who already has a record in CoolFocus, for example when a source column for affiliation data, like a referring church or partner agency, is mapped in a way that creates a row instead of setting a value on the person's existing record. An affiliation belongs on the person's Affiliations field, not as a reason for a second Client row. See Affiliations on Donors, Clients, and Volunteers.

Before you delete a row that came from an import, open it and check its involvement flags for donor, volunteer, or staff history. Deleting a record that's shared with a donor removes that donor's giving history along with it.

If the row turns out to be the same person as an existing record, merge them instead of deleting it, see "If it's a duplicate, merge instead" above. If it's a shared record where only the Client role was added by mistake, uncheck the Client box instead of deleting, see "Delete vs. just removing a role" above.



Deleting a visit

Deleting a visit removes its chart data along with it, so nothing is left behind pointing at a visit that no longer exists.

  • Any chart entries recorded on that visit, and any assessments recorded on that visit, are deleted along with it.

  • A benefit given during that visit is unlinked from it, so it no longer shows on the visit.

A couple of things deliberately stay behind:

  • The client's benefit record itself is not deleted. Removing a visit never changes a client's points balance.

  • The log showing an intake was emailed to the client stays, since that email was really sent.

If the visit delete itself fails, none of its charts or benefit links are touched, so nothing is hidden from a visit that is still active.

Starting the visit is not undone

Deleting a visit does not reverse what happened when the visit started. Before you delete a visit to undo an accidental Start Visit, check for these two things and fix them by hand if needed:

  • The linked appointment keeps whatever status Start Visit set on it (typically Show). Reopen the appointment and set its status back to Scheduled yourself if that's what you need.

  • If Start Visit created a new case for this visit, that case stays open on the client even after the visit is gone. It keeps showing up as an open case option the next time someone starts a visit for that client, so close or merge it if it isn't needed.

The confirmation dialog shown when you delete a visit lists these two items under "What stays behind" so you can check them right away.




Related

Did this answer your question?