You would think that upgrading to Paypal’s “Pro” edition would come with a PROfessional experience! But I am writing to let you know that is simply not the case . . . well partly.
We have a client that was using Paypal Website Payments Standard and they asked if we could upgrade their Magento website to Paypal Website Payments Pro. We gladly responded that we could do that with ease. Ha! That is what thought.
It ended up turning into a hub bub of sorts figuring out what was going on.
So here is what we did to get the upgraded payment system to work correctly.
The sandbox version didn’t really help much as it seemed to work just fine.
We checked the box for Website Payments Pro in the backend of Magento and configured everything according to the clients wishes. That was pretty easy. Flipped on Debug mode and tested it on the live site during a non-critical time.
Everything looked rather nice except for some CSS adjustments here and there. But looks are deceiving at times aren’t they? The functionality of Magento sending the checkout info to Paypal just didn’t want to cooperate.
We took a look at the debug messages located in var/log/payment_paypal_direct.log
There was an error code 10002 which had the human readable message of “Security header is not valid.”
That was strange. Why would it not be valid. The API’s were the same for the standard version. So after fiddling around and trying different angles we finally concluded we would remove the original API info from Paypal and generate new ones.
BINGO! That did it. It was all Paypal’s fault this time. Magento was as clean as a whistle on this one!
So if you get that “Security header is not valid” message try removing the API credentials and issuing new ones in Paypal. It only took a few seconds and will save you a ton of time debugging errors.