Stripe's documentation and API design are both the gold standards in my mind. Braintree is good as well, but they fall just a little short of Stripe in almost all categories.
The most notable shortcoming for me has been Braintree's testing/sandbox environment. They require different dollar values in order to trigger certain payment processor errors, and a payment won't fail in their sandbox environment if you use a bogus nonce. This behavior alone caused me to mistakenly ship a placeholder nonce to production, and it took us a while to figure out what was going wrong in production since all purchases worked perfectly in the sandbox.
tl;dr Braintree has burned me, and Stripe has not.