Yeah, soft delete is the way to go in 99.99% of the cases, with a system setup to eventually hard delete on some schedule (preferably don't hard delete until X number of backups have caught the soft deleted data safely, for example).
if it forces additional fail safes or backups to be able to do so safely, then that's probably a good thing to have anyway, no?