I realise this post is reasonably old now but I thought I would post here for anyone coming along who is experiencing the rotten paypal bug. I have found a fix which works for magento 22.214.171.124. As of now I havent tested it on any other versions and I am awaiting feedback from others to see if it is working for them.
The problem is Paypal has a problem when it comes to shipping rates being different decimal places from magento so it marks the order as suspected fraud.
Firtsly go into your PayPal account and go to Profile -> My Selling Tools -> Shipping Calculations. Then make sure the tickbox is ticked âClick here to allow transaction-based shipping values to override the profile shipping settings listed above (if profile settings are enabled).â Then Save.
Secondly we need to stop Magento checking that the amount captured by paypal and the amount on the order is the same and returning the fraud status if they donât match.
In the file:
On about line 1476
(inside the function _isCaptureFinal)
After this orders should now be coming through as processing and the money should have cleared in paypal. I must stress however that you must change your paypal settings as stated above or else the shipping method from the payment will not be added to the paypal amount.
Can anyone who uses this fix please let me know if it has worked for them.
Hope this helps.