What Are Hard Delete and Soft Delete
Hard delete permanently removes data from the database through physical deletion. Once a record is deleted this way, it cannot be recovered unless backups exist. Soft delete works differently. Instead of physically removing the data, the system logically marks it as deleted. The data remains in the database but is treated as inactive. Because of this, soft-deleted records can usually be restored later. Each approach has its own advantages and disadvantages in terms of data integrity, compliance, and user experience. Designing a reliable and user-friendly expense-sharing service means finding the right balance between data retention and cleanup. In Splync, that balance matters for both trust and usability.
Splync 1.13 Had Only Hard Delete
Before version 1.14, deleting an expense in Splync meant immediate and permanent removal from the database. This created a subtle but serious problem, especially because Splync is designed to help couples and friends manage shared budgets with ease. Imagine a shared project with dozens of expenses. If a partner or friend deletes an entry, whether accidentally or intentionally, that data disappears without a trace. This can lead to incorrect settlement calculations and, more importantly, erode trust among members. In many cases, users would not even notice that something was missing. Version 1.14 addresses this by introducing visibility and reversibility. Now, when an expense is removed, users are notified and given the option to restore it if needed.
Splync 1.14 Uses Soft Delete by Default
In version 1.14, most deletions are handled as soft deletes. When a project member deletes an expense, other members receive a notification. At the same time, the expense is moved to a “trash” state instead of being physically erased. If it is within 7 days of deletion, any project member can restore the expense to the list of active expenses. This mirrors how many modern systems handle deletion, prioritizing safety over finality. However, not all cases should be treated equally. What if a user accidentally adds a private expense to a group projector, or an entry is completely irrelevant? Immediate removal may be necessary to avoid confusion or privacy concerns. In these cases, notifying everyone and keeping a recoverable record may not be appropriate.
Exceptions: When Hard Delete Is Allowed
To handle these edge cases, Splync 1.14 introduces controlled conditions for hard delete. An expense can be permanently deleted without notifications if the user deleting it is both the creator and the last editor of the expense, and if the deletion occurs within 30 minutes of the expense being created. When these conditions are met, the system treats the action as a quick undo rather than a shared event. All other deletion scenarios default to soft delete. In this way, Splync strikes a balance between flexibility, privacy, and transparency.
How to See Trashed Expenses
We designed this feature to feel as intuitive as possible. In version 1.14, we added a new filter button next to the existing member filter button, allowing users to toggle between active and trashed expenses. As a result, the filter and sort area of the UI has been slightly updated. To keep the interface simple and easy to understand, the filter buttons use symbols now. For an active expense, users can swipe left to delete it. After tapping the delete button, an alert appears to clarify whether the action will result in a hard delete or a soft delete, so users can proceed with confidence. For a trashed expense, users can swipe left to restore it.
Next Step after Expense Soft Delete
Now that we have improved the expense deletion flow, the next step is to make project deletion more flexible. At the moment, users can delete a project only after settling it. There is no direct way to delete an unsettled project, which means users must go through unnecessary steps before removing a project. This can be inconvenient in cases where a project was created by mistake, duplicated unintentionally, or simply no longer needed. Improving expense deletion was an important stepping stone toward solving this issue, because deleting a project is more complex than deleting a single expense. It can affect the expenses, balances, and trust of all project members involved. For that reason, project deletion requires a more careful design. A better solution is on the way.