Braintree actually doesn't work very well for recurring payments since you end up writing your own biller. They offer some sort of a subscription billing system, but since their API only works 1-day (Data-in, no data-out) so its damn near impossible to keep your system in synch with theirs.
Also, be careful with that peep-code PDF; their design isn't really the best so keep that in mind when reading through it and take their content merely as a suggestion. They couple their Orders with Transactions in a funky way.
Another thing, when dealing with BrainTree, be sure to pester them about how much the SecureVault costs. They came to us 6 months after we started using them and demanded that we pay $0.10-$0.15 anytime we touched a customer in the SecureVault. After a few back-and-forth's via email, they finally waived these fee's because they neglected to bring it up when we negotiated our rates.
In technical terms of payment gateway APIs, I liked Google Checkout's the best. They had a nice asynch RESTful XML API that made a lot of sense; although I didn't really like that fact that we had to send users through the Google Checkout screens. We had to move away from GCO because they didn't support recurring billing.
Has anybody used the Amazon Flexible Payment System?