I agree with everyone here but if you find, lot of people don't turn up after the order, I would say have some clause "Ordered and not Purchased" kind of thing so you can charge some amount to the pt like NSF.. JMO.. May be you can have some condition
Ordered - cancelled with in a day(same day) no charge
Ordered - cancelled in two day.. have some charges fixed so it can be applied accordingly