Я создаю приложение по продаже билетов, которое отслеживает инвентаризацию билетов, деактивирует их при продаже определенного билета.
Мне интересно, как лучше выпустить инвентарь обратно в магазин, когда заказ отменен в середине пути.
Текущий поток:
- Пользователи добавляют
items
к order
как line_items
, а order
помечается как выполненное при успешной оплате
items
имеет quantity_available
, который обновляется на основе их line_items
- Я периодически сканирую
orders
, не предпринимая никаких действий в течение> 20 минут, удаляю эти ордера line_item
s и обновляю quantity_available
Такое ощущение, что я что-то упустил с этим. С одной стороны, я теряю возможность детально просматривать отмененные заказы (у меня все еще есть платежи / отклонения и т. Д., Но нет позиций). И если пользователь попытается возобновить старый заказ через 21 минуту, ему придется начать все сначала.
И наоборот, он связывает инвентарь на 20 минут, что может привести к потере продаж, когда шоу почти распродано.
Любое понимание будет высоко ценится. Спасибо.