Бих използвал просто поле за времеви печат в базата данни, за да посоча „заключено“. Всеки път, когато някой се опита да резервира стая, софтуерът сравнява текущото време с времевата марка и ако е> от 20 минути и плащането не е извършено, заключването не е валидно.
Този метод вероятно е достатъчно ефективен. Отпечатъкът за време обикновено е 32-битов и ударът на производителността при извикванията на базата данни е пренебрежимо малък.