I'm looking for generic and open source payment libraries that support many different payment processor APIs. In other words, I'd like to develop an application using a single payment processing API, but be able to easily switch between payment gateways, such as Authorize.Net, Payflow Pro, Braintree, PayPal, Google, Amazon, etc.
This question gives some Java solutions, but the suggestions all look horrible. Isn't there anything more like ActiveMerchant for Java? I really need a good Java solution, to the point of building my own if necessary. But I don't want to reinvent the wheel if it exists.
Are there any solutions for Python, Node.JS, or PHP?
Ideally, I'd like to find something similar to Ruby's ActiveMerchant, which looks exceptionally complete. Are there any other Ruby solutions?
I originally left Node.JS out of the list of server-side technologies, but I'm starting a project that is going to use it. And I found what looks like a great payment gateway library for it. Paynode is similar to Ruby's ActiveMerchant, but in Javascript running in Node.JS. It supports Payflow Pro, Authorize.Net, Braintree, Chargify, etc.
I created Paython: https://github.com/abunsen/Paython
Supports a few different processors: