Если использовать такие БД как DymanoDb, CosmosDb, Cassandra или кеш Redis, то там сразу
можно создавать записть с отметкой TTL и указывать сколько времени запись будет актуальна.
Впоследствии эту отметку можно продлить или сделать живщуей вечно.
По поводу реляционок типа Postgres.
В хранении ненужных записей я не вижу проблемы до тех пор пока вы в состоянии такие
токены идентифицировать и почистить отдельно с помощью джоба который запускается
раз в сутки например и просто удяляет их по признаку например "состояние ожидания
ввода числа из СМС". Трекайте это состояние и все будет ОК.