Scan code is only when buyer collects as that is the only way to prove delivery.
Buyer will automatically get a refund, if you cancel, the only problem there is that depending on how he paid, he will not receive money back instantly. Refunds go back to source and if paid by debit card takes up to 7 days, credit card up to 30 days.
This could cause problems if you relist to be bought and paid for again.