We use PayPal Web Payments Standard (WPS), which is not supported out-of-the-box in Potion Store. So the next choice was Google Checkout. I started plugging it into Potion Store and reached cart submission stage when it became apparent that since we’re in the UK, we can only submit carts in GBP. I wanted to specify the price in USD, which Google Checkout didn’t allow. So I had to postpone it and go back to PayPal.
As I was reading PayPal documentation and browsing Potion Store source code, I discovered that the only part of Website Payments Pro (WPP) that required monthly payments was credit card processing (which we weren’t going to support for now), and you could just use PayPal Express Checkout option with the store out-of-the-box. Granted, the buyer experience wasn’t as great as with WPP, but it’d have to do for now. I set up PayPal Sandbox accounts and got the certificates.
Tip: when you get your API certificate from PayPal, look inside the *_pem.txt file. You’ll see it contains both private key and certificate. In the Potion Store config/paypal.yml file you can use this file as both API key and certificate file. OpenSSL is clever enough to pick the right part.
I also started implementing support for Website Payments Standard (WPS) by looking at Kenneth Ballenegger’s notes but put it on hold for now. Maybe I’ll go back to it some time.