Alan Wood, 61, spent £1,200 on a MacBook Pro for his daughter but instead received two packets of Pedigree.
The retired IT manager says he contacted Amazon and was refused a refund initially.
But the company has since apologised and said Alan will be paid back in full.
Alan, from Derbyshire, said: ‘I’ve been an Amazon customer for two decades and never had a problem with them before.
‘But this has been an extremely stressful situation, especially in my circumstance, and the way I’ve been treated has put me off ordering from them ever again.’
Alan placed his order on November 29 and paid for next-day delivery.
But when he opened up the package he couldn’t believe the mix up.
Alan said: ‘You can imagine the look on my face when I opened dog food instead of a MacBook Pro that cost me over £1,000.
‘At first I was confident the mix-up could be resolved, but after speaking to Amazon customer service, they said they couldn’t help me.
‘That was unless I returned the laptop, which I never received, and even when I sent the dog food back to the warehouse, that made no difference.