Design the cart and checkout of an online shop: people fill a basket, place an order, pay and get a confirmation, and nobody is charged for stock that is not there.
Practise this challenge
All system design challenges