[quoting from a post elsewhere...]
The merchant gateway email address must match the one set up at paypal. If they don't match it usually causes a failed/'Fraud'.
If the transaction id has been used before, it marks it as failed/duplication.
If the order is not pending, and paypal tries to update things, it marks it as failed.
A failed/invalid payment can be caused by an error in the cart itself, but more often than not is is caused by a Currency Code mis-match.
That's the majority of the checks...
So the Currency - Code needs to be Pounds Sterling (GBP) (from the eshop settings page).
However there are occasionally other reasons, if you are able to send me a copy of the email you recieved from eShop for that transaction I
may be able to identify where the error is. [ email@example.com ]