The last project I worked on required integrating with clients' existing payment infrastructure, including merchant accounts, and processing their customers' payments for them in addition to billing them a small monthly fee (we didn't take any piece of customer payments). We used Chargify. It was pricey, I think about $120/mo to support ACH for a few hundred clients, but the API is solid and well-documented. They've got several employees whose job it is to work on the official libraries, as well.
I am no longer a Chargify customer because that project never really panned out. I don't have any official relationship with them.