Warehouse worker John Brown only noticed the store's error when he checked his bank statement three days after buying two loaves of bread, a pot of jam and a box of eggs.
Asda has now fully reimbursed Mr Brown, who had kept his receipt for the over-the-odds transaction at its superstore in Jack Hayward Way, Wolverhampton.
Describing the mistake as an isolated incident, a spokeswoman for Asda said: "A system glitch meant that the bread scanned at the wrong price.
"It goes without saying that we're sorry for any inconvenience caused to Mr Brown.
"We hope this won't put Mr Brown off visiting our store in the future. We have offered a full refund and a gesture of goodwill to treat himself on his next visit."
Mr Brown, 37, told the Wolverhampton Express and Star: "I only popped in to pick up a few items and decided to use one of the self-service checkouts so I didn't have to hang around waiting in a queue.
"I never thought to check my receipt, but a few days later I went to the bank to take out some money and noticed my account was well short
"I couldn't believe it."